|
exip
Alpha 0.5.4
|
Definitions and utility functions for EXI Proto-Grammars. More...
#include "procTypes.h"Go to the source code of this file.
Data Structures | |
| struct | ProtoRuleEntry |
| Productions in a rule with the same number of parts in their event codes. More... | |
| struct | ProtoGrammar |
| struct | ProtoGrammarArray |
Typedefs | |
| typedef struct ProtoRuleEntry | ProtoRuleEntry |
| typedef struct ProtoGrammar | ProtoGrammar |
| typedef struct ProtoGrammarArray | ProtoGrammarArray |
Functions | |
| errorCode | createProtoGrammar (Index rulesDim, ProtoGrammar *pg) |
| Creates and allocates memory for new proto grammar. More... | |
| void | destroyProtoGrammar (ProtoGrammar *pg) |
| Frees the allocated memory for a proto grammar. More... | |
| errorCode | addProtoRule (ProtoGrammar *pg, Index prodDim, ProtoRuleEntry **ruleEntry) |
| Add an empty rule to a proto grammar. More... | |
| errorCode | addProduction (ProtoRuleEntry *ruleEntry, EventType eventType, Index typeId, QNameID qnameID, SmallIndex nonTermID) |
| Add a production to a particular proto rule. More... | |
| errorCode | convertProtoGrammar (AllocList *memlist, ProtoGrammar *pg, EXIGrammar *exiGrammar) |
| Create a new EXI grammar from existing proto grammar. More... | |
| errorCode | cloneProtoGrammar (ProtoGrammar *src, ProtoGrammar *dest) |
| Clones a proto grammar instance. More... | |
| errorCode | printProtoGrammarRule (SmallIndex nonTermID, ProtoRuleEntry *rule) |
| errorCode | printProtoGrammar (ProtoGrammar *pgr) |
| typedef struct ProtoGrammar ProtoGrammar |
Definition at line 49 of file protoGrammars.h.
| typedef struct ProtoGrammarArray ProtoGrammarArray |
Definition at line 60 of file protoGrammars.h.
| typedef struct ProtoRuleEntry ProtoRuleEntry |
Definition at line 34 of file protoGrammars.h.
| errorCode addProduction | ( | ProtoRuleEntry * | ruleEntry, |
| EventType | eventType, | ||
| Index | typeId, | ||
| QNameID | qnameID, | ||
| SmallIndex | nonTermID | ||
| ) |
| [in,out] | ruleEntry | the rule to which the production is added |
| [in] | eventType | event type of the production |
| [in] | typeId | index of the type of the production in the simple type table |
| [in] | qnameID | qnameId of the production |
| [in] | nonTermID | of the production |
Definition at line 42 of file protoGrammars.c.
| errorCode addProtoRule | ( | ProtoGrammar * | pg, |
| Index | prodDim, | ||
| ProtoRuleEntry ** | ruleEntry | ||
| ) |
| [in,out] | pg | the proto grammar |
| [in] | prodDim | initial number of productions in the rule |
| [in] | ruleEntry | pointer to the rule entry |
Definition at line 32 of file protoGrammars.c.
| errorCode cloneProtoGrammar | ( | ProtoGrammar * | src, |
| ProtoGrammar * | dest | ||
| ) |
| [in] | src | the source proto-grammar |
| [out] | dest | a pointer to the newly created proto grammar |
Definition at line 103 of file protoGrammars.c.
| errorCode convertProtoGrammar | ( | AllocList * | memlist, |
| ProtoGrammar * | pg, | ||
| EXIGrammar * | exiGrammar | ||
| ) |
| [in,out] | memlist | A list storing the memory allocations for the new EXI grammar |
| [in] | pg | the source proto-grammar |
| [out] | exiGrammar | a pointer to the newly created EXI grammar |
Definition at line 58 of file protoGrammars.c.
| errorCode createProtoGrammar | ( | Index | rulesDim, |
| ProtoGrammar * | pg | ||
| ) |
| [in] | rulesDim | initial number of the rules in the protogrammar |
| [out] | pg | an empty proto-grammar |
Definition at line 25 of file protoGrammars.c.
| void destroyProtoGrammar | ( | ProtoGrammar * | pg) |
| [out] | pg | the proto-grammar to be removed |
Definition at line 127 of file protoGrammars.c.
| errorCode printProtoGrammar | ( | ProtoGrammar * | pgr) |
Definition at line 220 of file protoGrammars.c.
| errorCode printProtoGrammarRule | ( | SmallIndex | nonTermID, |
| ProtoRuleEntry * | rule | ||
| ) |
Definition at line 139 of file protoGrammars.c.
1.8.4