]> mj.ucw.cz Git - libucw.git/blob - lib/conf-internal.h
conf2.c split into 7 smaller modules conf-*.c with include conf-internal.h
[libucw.git] / lib / conf-internal.h
1 /* conf-intr.c */
2 #define OP_MASK 0xff            // only get the operation
3 #define OP_OPEN 0x100           // here we only get an opening brace instead of parameters
4 #define OP_1ST 0x200            // in the 1st phase selectors are recorded into the mask
5 #define OP_2ND 0x400            // in the 2nd phase real data are entered
6 enum cf_operation;
7 extern byte *cf_op_names[];
8
9 uns cf_type_size(enum cf_type type, struct cf_user_type *utype);
10 byte *cf_interpret_line(byte *name, enum cf_operation op, int number, byte **pars);
11 void cf_init_stack(void);
12 int cf_check_stack(void);
13
14 /* conf-journal.c */
15 void cf_journal_swap(void);
16 void cf_journal_delete(void);
17
18 /* conf-section.c */
19 #define SEC_FLAG_DYNAMIC        0x80000000      // contains a dynamic attribute
20 #define SEC_FLAG_UNKNOWN        0x40000000      // ignore unknown entriies
21 #define SEC_FLAG_CANT_COPY      0x20000000      // contains lists or parsers
22 #define SEC_FLAG_NUMBER         0x0fffffff      // number of entries
23 enum cf_commit_mode { CF_NO_COMMIT, CF_COMMIT, CF_COMMIT_ALL };
24 extern struct cf_section cf_sections;
25
26 struct cf_item *cf_find_subitem(struct cf_section *sec, byte *name);
27 int cf_commit_all(enum cf_commit_mode cm);
28 void cf_add_dirty(struct cf_section *sec, void *ptr);