Data Structures |
| struct | PINFCACHEFIELD |
| struct | PINFCACHELINE |
| struct | PINFCACHESECTION |
| struct | PINFCACHE |
| struct | parser |
Defines |
| #define | CONTROL_Z '\x1a' |
| #define | MAX_SECTION_NAME_LEN 255 |
| #define | MAX_FIELD_LEN 511 /* larger fields get silently truncated */ |
| #define | MAX_STRING_LEN (MAX_INF_STRING_LENGTH+1) |
Typedefs |
| typedef const CHAR *(* | parser_state_func )(struct parser *parser, const CHAR *pos) |
Enumerations |
| enum | parser_state {
LINE_START,
SECTION_NAME,
KEY_NAME,
VALUE_NAME,
EOL_BACKSLASH,
QUOTES,
LEADING_SPACES,
TRAILING_SPACES,
COMMENT,
NB_PARSER_STATES,
LINE_START,
SECTION_NAME,
KEY_NAME,
VALUE_NAME,
EOL_BACKSLASH,
QUOTES,
LEADING_SPACES,
TRAILING_SPACES,
COMMENT,
NB_PARSER_STATES,
LINE_START,
SECTION_NAME,
KEY_NAME,
VALUE_NAME,
EOL_BACKSLASH,
QUOTES,
LEADING_SPACES,
TRAILING_SPACES,
COMMENT,
NB_PARSER_STATES,
LINE_START,
SECTION_NAME,
KEY_NAME,
VALUE_NAME,
EOL_BACKSLASH,
QUOTES,
LEADING_SPACES,
TRAILING_SPACES,
COMMENT,
NB_PARSER_STATES
} |
Functions |
| static const CHAR * | line_start_state (struct parser *parser, const CHAR *pos) |
| static const CHAR * | section_name_state (struct parser *parser, const CHAR *pos) |
| static const CHAR * | key_name_state (struct parser *parser, const CHAR *pos) |
| static const CHAR * | value_name_state (struct parser *parser, const CHAR *pos) |
| static const CHAR * | eol_backslash_state (struct parser *parser, const CHAR *pos) |
| static const CHAR * | quotes_state (struct parser *parser, const CHAR *pos) |
| static const CHAR * | leading_spaces_state (struct parser *parser, const CHAR *pos) |
| static const CHAR * | trailing_spaces_state (struct parser *parser, const CHAR *pos) |
| static const CHAR * | comment_state (struct parser *parser, const CHAR *pos) |
| static PINFCACHELINE | InfpCacheFreeLine (PINFCACHELINE Line) |
| static PINFCACHESECTION | InfpCacheFreeSection (PINFCACHESECTION Section) |
| static PINFCACHESECTION | InfpCacheFindSection (PINFCACHE Cache, PCSTR Name) |
| static PINFCACHESECTION | InfpCacheAddSection (PINFCACHE Cache, PCHAR Name) |
| static PINFCACHELINE | InfpCacheAddLine (PINFCACHESECTION Section) |
| static PVOID | InfpAddKeyToLine (PINFCACHELINE Line, PCHAR Key) |
| static PVOID | InfpAddFieldToLine (PINFCACHELINE Line, PCHAR Data) |
| static PINFCACHELINE | InfpCacheFindKeyLine (PINFCACHESECTION Section, PCSTR Key) |
| static __inline void | push_state (struct parser *parser, enum parser_state state) |
| static __inline void | pop_state (struct parser *parser) |
| static __inline enum parser_state | set_state (struct parser *parser, enum parser_state state) |
| static __inline int | is_eof (struct parser *parser, const CHAR *ptr) |
| static __inline int | is_eol (struct parser *parser, const CHAR *ptr) |
| static int | push_token (struct parser *parser, const CHAR *pos) |
| static PVOID | add_section_from_token (struct parser *parser) |
| static struct field * | add_field_from_token (struct parser *parser, int is_key) |
| static void | close_current_line (struct parser *parser) |
| static BOOLEAN | InfpParseBuffer (PINFCACHE file, const CHAR *buffer, const CHAR *end, PULONG error_line) |
| BOOLEAN | InfOpenFile (PHINF InfHandle, PCSTR FileName, PULONG ErrorLine) |
| VOID | InfCloseFile (HINF InfHandle) |
| BOOLEAN | InfFindFirstLine (HINF InfHandle, PCSTR Section, PCSTR Key, PINFCONTEXT Context) |
| BOOLEAN | InfFindNextLine (PINFCONTEXT ContextIn, PINFCONTEXT ContextOut) |
| BOOLEAN | InfFindFirstMatchLine (PINFCONTEXT ContextIn, PCHAR Key, PINFCONTEXT ContextOut) |
| BOOLEAN | InfFindNextMatchLine (PINFCONTEXT ContextIn, PCHAR Key, PINFCONTEXT ContextOut) |
| LONG | InfGetLineCount (HINF InfHandle, PCHAR Section) |
| LONG | InfGetFieldCount (PINFCONTEXT Context) |
| BOOLEAN | InfGetBinaryField (PINFCONTEXT Context, ULONG FieldIndex, PUCHAR ReturnBuffer, ULONG ReturnBufferSize, PULONG RequiredSize) |
| BOOLEAN | InfGetIntField (PINFCONTEXT Context, ULONG FieldIndex, LONG *IntegerValue) |
| BOOLEAN | InfGetMultiSzField (PINFCONTEXT Context, ULONG FieldIndex, PCHAR ReturnBuffer, ULONG ReturnBufferSize, PULONG RequiredSize) |
| BOOLEAN | InfGetStringField (PINFCONTEXT Context, ULONG FieldIndex, PCHAR ReturnBuffer, ULONG ReturnBufferSize, PULONG RequiredSize) |
| BOOLEAN | InfGetData (PINFCONTEXT Context, PCHAR *Key, PCHAR *Data) |
| BOOLEAN | InfGetDataField (PINFCONTEXT Context, ULONG FieldIndex, PCSTR *Data) |
Variables |
| static const parser_state_func | parser_funcs [NB_PARSER_STATES] |