Version 7.0
Copyright © 2021 Lowell D. Thomas
APG
… an ABNF Parser Generator
Data Fields
parser_tag Struct Reference

The parser object's context. Holds the parser's state. Opaque to user. More...

#include <parserp.h>

Collaboration diagram for parser_tag:
Collaboration graph
[legend]

Data Fields

const void * vpValidate
 Set to a "magic number" by the constructor. Must be valid for all other parser function calls. More...
 
exceptionspException
 Pointer to the exception structure to use for reporting fatal errors. More...
 
void * vpMem
 Pointer to a memory object context used for all memory allocations by the parser. More...
 
void * vpAst
 Pointer to the AST object context, if any. See vpAstCtor(). More...
 
void * vpTrace
 Pointer to the trace object context, if any. See vpTraceCtor(). More...
 
void * vpStats
 Pointer to the stats object context, if any. See vpStatsCtor(). More...
 
void * vpBkru
 Pointer to the universal-mode back reference object context, if any. See vpBkruCtor(). More...
 
void * vpBkrp
 Pointer to the parent-mode back reference object context, if any. See vpBkrpCtor(). More...
 
pfn_oppfnOpFunc
 Pointer to the current node operation function. More...
 
const char * cpStringTable
 Pointer to the ASCII string table with rule and UDT names. More...
 
const acharacpAcharTable
 Pointer to the alphabet character table for TLS and TBS operators. More...
 
const aintuipChildList
 Pointer to the table of child indexes for ALT and CAT operators. More...
 
rulespRules
 Pointer to the list of rules. More...
 
udtspUdts
 Pointer to the list of UDTs. More...
 
opcode * spOpcodes
 Pointer to the list of opcodes. More...
 
aint uiRuleCount
 The number of rules in the SABNF grammar. More...
 
aint uiUdtCount
 The number of UDTs in the SABNF grammar. More...
 
aint uiOpcodeCount
 The number of opcodes (node operations) generated by the SABNF grammar. More...
 
aint uiStartRule
 The current index of the start rule. More...
 
void * vpVecInputString
 Vector to keep a copy of the input string. More...
 
const acharacpInputString
 Pointer to the input string. More...
 
aint uiInputStringLength
 Number of characters in the input string. More...
 
aint uiSubStringBeg
 The offset to the first character of the sub-string to parse. More...
 
aint uiSubStringEnd
 The offset to the first character beyond the end of the sub-string to parse. More...
 
aint uiSubStringLength
 The number of characters in the substring to parse. More...
 
aint uiLookBehindLength
 The maximum number of character to search for a match in look behind. More...
 
aint uiInLookaround
 True if in look ahead or look behind mode. More...
 
const uint8_t * ucpMaps
 Pointer to the PPPT maps. More...
 
aint uiMapSize
 Number of bytes in a single PPPT map. More...
 
aint uiMapCount
 Number of maps in the PPPT. More...
 
achar acAcharMin
 The minimum alphabet character referenced by the SABNF grammar. More...
 
achar acAcharMax
 The maximum alphabet character referenced by the SABNF grammar. More...
 
aint uiOffset
 Offset to the current phrase to parse. More...
 
aint uiPhraseLength
 Phrase length of a matched phrase. More...
 
aint uiOpState
 State of the current opcode being processed. More...
 
opcode sStartOp
 Placeholder for the parser-generated RNM operator of the start rule. The root node of the parse tree. More...
 
callback_data sCBData
 The callback data, initialized by the parser and passed to user-defined call back functions. More...
 
aint uiTreeDepth
 The current parse tree depth. More...
 
parser_state sState
 The final state of the parser. More...
 

Detailed Description

The parser object's context. Holds the parser's state. Opaque to user.

Definition at line 320 of file parserp.h.

Field Documentation

◆ acAcharMax

achar parser_tag::acAcharMax

The maximum alphabet character referenced by the SABNF grammar.

Definition at line 362 of file parserp.h.

◆ acAcharMin

achar parser_tag::acAcharMin

The minimum alphabet character referenced by the SABNF grammar.

Definition at line 361 of file parserp.h.

◆ acpAcharTable

const achar* parser_tag::acpAcharTable

Pointer to the alphabet character table for TLS and TBS operators.

Definition at line 335 of file parserp.h.

◆ acpInputString

const achar* parser_tag::acpInputString

Pointer to the input string.

Definition at line 347 of file parserp.h.

◆ cpStringTable

const char* parser_tag::cpStringTable

Pointer to the ASCII string table with rule and UDT names.

Definition at line 334 of file parserp.h.

◆ pfnOpFunc

pfn_op* parser_tag::pfnOpFunc

Pointer to the current node operation function.

Definition at line 331 of file parserp.h.

◆ sCBData

callback_data parser_tag::sCBData

The callback data, initialized by the parser and passed to user-defined call back functions.

Definition at line 371 of file parserp.h.

◆ spException

exception* parser_tag::spException

Pointer to the exception structure to use for reporting fatal errors.

Definition at line 324 of file parserp.h.

◆ spOpcodes

opcode* parser_tag::spOpcodes

Pointer to the list of opcodes.

Definition at line 339 of file parserp.h.

◆ spRules

rule* parser_tag::spRules

Pointer to the list of rules.

Definition at line 337 of file parserp.h.

◆ spUdts

udt* parser_tag::spUdts

Pointer to the list of UDTs.

Definition at line 338 of file parserp.h.

◆ sStartOp

opcode parser_tag::sStartOp

Placeholder for the parser-generated RNM operator of the start rule. The root node of the parse tree.

Definition at line 369 of file parserp.h.

◆ sState

parser_state parser_tag::sState

The final state of the parser.

Definition at line 376 of file parserp.h.

◆ ucpMaps

const uint8_t* parser_tag::ucpMaps

Pointer to the PPPT maps.

Definition at line 358 of file parserp.h.

◆ uiInLookaround

aint parser_tag::uiInLookaround

True if in look ahead or look behind mode.

Definition at line 355 of file parserp.h.

◆ uiInputStringLength

aint parser_tag::uiInputStringLength

Number of characters in the input string.

Definition at line 348 of file parserp.h.

◆ uiLookBehindLength

aint parser_tag::uiLookBehindLength

The maximum number of character to search for a match in look behind.

Definition at line 354 of file parserp.h.

◆ uiMapCount

aint parser_tag::uiMapCount

Number of maps in the PPPT.

Definition at line 360 of file parserp.h.

◆ uiMapSize

aint parser_tag::uiMapSize

Number of bytes in a single PPPT map.

Definition at line 359 of file parserp.h.

◆ uiOffset

aint parser_tag::uiOffset

Offset to the current phrase to parse.

Definition at line 366 of file parserp.h.

◆ uiOpcodeCount

aint parser_tag::uiOpcodeCount

The number of opcodes (node operations) generated by the SABNF grammar.

Definition at line 342 of file parserp.h.

◆ uiOpState

aint parser_tag::uiOpState

State of the current opcode being processed.

Definition at line 368 of file parserp.h.

◆ uipChildList

const aint* parser_tag::uipChildList

Pointer to the table of child indexes for ALT and CAT operators.

Definition at line 336 of file parserp.h.

◆ uiPhraseLength

aint parser_tag::uiPhraseLength

Phrase length of a matched phrase.

Definition at line 367 of file parserp.h.

◆ uiRuleCount

aint parser_tag::uiRuleCount

The number of rules in the SABNF grammar.

Definition at line 340 of file parserp.h.

◆ uiStartRule

aint parser_tag::uiStartRule

The current index of the start rule.

Definition at line 345 of file parserp.h.

◆ uiSubStringBeg

aint parser_tag::uiSubStringBeg

The offset to the first character of the sub-string to parse.

Definition at line 349 of file parserp.h.

◆ uiSubStringEnd

aint parser_tag::uiSubStringEnd

The offset to the first character beyond the end of the sub-string to parse.

Definition at line 350 of file parserp.h.

◆ uiSubStringLength

aint parser_tag::uiSubStringLength

The number of characters in the substring to parse.

Definition at line 351 of file parserp.h.

◆ uiTreeDepth

aint parser_tag::uiTreeDepth

The current parse tree depth.

Definition at line 373 of file parserp.h.

◆ uiUdtCount

aint parser_tag::uiUdtCount

The number of UDTs in the SABNF grammar.

Definition at line 341 of file parserp.h.

◆ vpAst

void* parser_tag::vpAst

Pointer to the AST object context, if any. See vpAstCtor().

Definition at line 326 of file parserp.h.

◆ vpBkrp

void* parser_tag::vpBkrp

Pointer to the parent-mode back reference object context, if any. See vpBkrpCtor().

Definition at line 330 of file parserp.h.

◆ vpBkru

void* parser_tag::vpBkru

Pointer to the universal-mode back reference object context, if any. See vpBkruCtor().

Definition at line 329 of file parserp.h.

◆ vpMem

void* parser_tag::vpMem

Pointer to a memory object context used for all memory allocations by the parser.

Definition at line 325 of file parserp.h.

◆ vpStats

void* parser_tag::vpStats

Pointer to the stats object context, if any. See vpStatsCtor().

Definition at line 328 of file parserp.h.

◆ vpTrace

void* parser_tag::vpTrace

Pointer to the trace object context, if any. See vpTraceCtor().

Definition at line 327 of file parserp.h.

◆ vpValidate

const void* parser_tag::vpValidate

Set to a "magic number" by the constructor. Must be valid for all other parser function calls.

Definition at line 322 of file parserp.h.

◆ vpVecInputString

void* parser_tag::vpVecInputString

Vector to keep a copy of the input string.

Definition at line 346 of file parserp.h.


The documentation for this struct was generated from the following file:
APG Version 7.0 is licensed under the 2-Clause BSD License,
an Open Source Initiative Approved License.