#ifndef _SCCONF_INTERNAL_H
#define _SCCONF_INTERNAL_H
#ifdef __cplusplus
extern "C" {
#endif
#define TOKEN_TYPE_COMMENT 0
#define TOKEN_TYPE_NEWLINE 1
#define TOKEN_TYPE_STRING 2
#define TOKEN_TYPE_PUNCT 3
typedef struct _scconf_parser {
scconf_context *config;
scconf_block *block;
scconf_item *last_item, *current_item;
char *key;
scconf_list *name;
int state;
int last_token_type;
int line;
unsigned int error:1;
unsigned int warnings:1;
char emesg[256];
} scconf_parser;
extern int scconf_lex_parse(scconf_parser * parser, const char *filename);
extern int scconf_lex_parse_string(scconf_parser * parser,
const char *config_string);
extern void scconf_parse_token(scconf_parser * parser, int token_type, const char *token);
#ifdef __cplusplus
}
#endif
#endif