antlr3baserecognizer.c(3)
| src/antlr3baserecognizer.c(3) | ANTLR3C | src/antlr3baserecognizer.c(3) |
NAME
src/antlr3baserecognizer.c - Contains the base functions that all recognizers require.
SYNOPSIS
#include <antlr3baserecognizer.h>
Functions
static ANTLR3_BOOLEAN alreadyParsedRule
(pANTLR3_BASE_RECOGNIZER recognizer, ANTLR3_MARKER ruleIndex)
Has this rule already parsed input at the current index in the input stream?
Return ANTLR3_TRUE if we have and ANTLR3_FALSE if we have not.
ANTLR3_API pANTLR3_BASE_RECOGNIZER
antlr3BaseRecognizerNew (ANTLR3_UINT32 type,
ANTLR3_UINT32 sizeHint, pANTLR3_RECOGNIZER_SHARED_STATE state)
ANTLR3_API void antlr3MTExceptionNew
(pANTLR3_BASE_RECOGNIZER recognizer)
Creates a new Mismatched Token Exception and inserts in the recognizer
exception stack. ANTLR3_API void antlr3RecognitionExceptionNew
(pANTLR3_BASE_RECOGNIZER recognizer)
static void beginBacktrack (pANTLR3_BASE_RECOGNIZER recognizer,
ANTLR3_UINT32 level)
static void beginResync (pANTLR3_BASE_RECOGNIZER recognizer)
static pANTLR3_BITSET combineFollows
(pANTLR3_BASE_RECOGNIZER recognizer, ANTLR3_BOOLEAN exact)
Compute the current followset for the input stream. static
pANTLR3_BITSET computeCSRuleFollow
(pANTLR3_BASE_RECOGNIZER recognizer)
Compute the context-sensitive FOLLOW set for current rule. static
pANTLR3_BITSET computeErrorRecoverySet
(pANTLR3_BASE_RECOGNIZER recognizer)
Compute the error recovery set for the current rule. static void
consumeUntil (pANTLR3_BASE_RECOGNIZER recognizer,
ANTLR3_UINT32 tokenType)
Eat tokens from the input stream until we get one of JUST the right type.
static void consumeUntilSet (pANTLR3_BASE_RECOGNIZER
recognizer, pANTLR3_BITSET set)
Eat tokens from the input stream until we find one that belongs to the
supplied set. static void displayRecognitionError
(pANTLR3_BASE_RECOGNIZER recognizer, pANTLR3_UINT8
*tokenNames)
Standard/Example error display method. static void endBacktrack
(pANTLR3_BASE_RECOGNIZER recognizer, ANTLR3_UINT32 level,
ANTLR3_BOOLEAN successful)
static void endResync (pANTLR3_BASE_RECOGNIZER recognizer)
static void freeBR (pANTLR3_BASE_RECOGNIZER recognizer)
static void ANTLR3_CDECL freeIntTrie (void *trie)
static void * getCurrentInputSymbol (pANTLR3_BASE_RECOGNIZER
recognizer, pANTLR3_INT_STREAM istream)
static void * getMissingSymbol (pANTLR3_BASE_RECOGNIZER
recognizer, pANTLR3_INT_STREAM istream, pANTLR3_EXCEPTION e,
ANTLR3_UINT32 expectedTokenType, pANTLR3_BITSET_LIST follow)
static ANTLR3_UINT32 getNumberOfSyntaxErrors
(pANTLR3_BASE_RECOGNIZER recognizer)
Return how many syntax errors were detected by this recognizer. static
pANTLR3_STACK getRuleInvocationStack
(pANTLR3_BASE_RECOGNIZER recognizer)
Return the rule invocation stack (how we got here in the parse. static
pANTLR3_STACK getRuleInvocationStackNamed
(pANTLR3_BASE_RECOGNIZER recognizer, pANTLR3_UINT8 name)
static ANTLR3_MARKER getRuleMemoization
(pANTLR3_BASE_RECOGNIZER recognizer, ANTLR3_INTKEY ruleIndex,
ANTLR3_MARKER ruleParseStart)
Pointer to a function to return whether the rule has parsed input starting at
the supplied start index before. static void * match
(pANTLR3_BASE_RECOGNIZER recognizer, ANTLR3_UINT32 ttype,
pANTLR3_BITSET_LIST follow)
Match current input symbol against ttype. static void matchAny
(pANTLR3_BASE_RECOGNIZER recognizer)
Consumes the next token, whatever it is, and resets the recognizer state so
that it is not in error. static void memoize
(pANTLR3_BASE_RECOGNIZER recognizer, ANTLR3_MARKER ruleIndex,
ANTLR3_MARKER ruleParseStart)
Record whether or not this rule parsed the input at this position
successfully. static void mismatch (pANTLR3_BASE_RECOGNIZER
recognizer, ANTLR3_UINT32 ttype, pANTLR3_BITSET_LIST follow)
Factor out what to do upon token mismatch so tree parsers can behave
differently. static ANTLR3_BOOLEAN mismatchIsMissingToken
(pANTLR3_BASE_RECOGNIZER recognizer, pANTLR3_INT_STREAM is,
pANTLR3_BITSET_LIST follow)
static ANTLR3_BOOLEAN mismatchIsUnwantedToken
(pANTLR3_BASE_RECOGNIZER recognizer, pANTLR3_INT_STREAM is,
ANTLR3_UINT32 ttype)
static void recover (pANTLR3_BASE_RECOGNIZER recognizer)
Recover from an error found on the input stream. static ANTLR3_BOOLEAN
recoverFromMismatchedElement (pANTLR3_BASE_RECOGNIZER
recognizer, pANTLR3_BITSET_LIST followBits)
This code is factored out from mismatched token and mismatched set recovery.
static void * recoverFromMismatchedSet
(pANTLR3_BASE_RECOGNIZER recognizer, pANTLR3_BITSET_LIST
follow)
static void * recoverFromMismatchedToken
(pANTLR3_BASE_RECOGNIZER recognizer, ANTLR3_UINT32 ttype,
pANTLR3_BITSET_LIST follow)
Attempt to recover from a single missing or extra token. static void
reportError (pANTLR3_BASE_RECOGNIZER recognizer)
Report a recognition problem. static void reset
(pANTLR3_BASE_RECOGNIZER recognizer)
static ANTLR3_BOOLEAN synpred (pANTLR3_BASE_RECOGNIZER
recognizer, void *ctx, void(*predicate)(void *ctx))
A syntactic predicate. static pANTLR3_HASH_TABLE toStrings
(pANTLR3_BASE_RECOGNIZER recognizer, pANTLR3_HASH_TABLE
tokens)
Convenience method for template rewrites - NYI.
Detailed Description
Contains the base functions that all recognizers require.
Any function can be overridden by a lexer/parser/tree parser or by the ANTLR3 programmer.
Author
Generated automatically by Doxygen for ANTLR3C from the source code.
| Tue Apr 18 2023 | Version 3.3.1 |
