|
Enhanced C#
Loyc library documentation
|
An base class designed for parsers that use LLLPG (Loyc LL(k) Parser Generator) and receive tokens from any IEnumerator{Token}. More...
An base class designed for parsers that use LLLPG (Loyc LL(k) Parser Generator) and receive tokens from any IEnumerator{Token}.
This base class for LLLPG parsers reads tokens from IList{Token}, but you can also pass an IEnumerable{Token} or IEnumerator{Token} to the constructor and it will convert it to a list, lazily, using BufferedSequence{T}.
Please see additional documentation in the base class.
| Token | : | ISimpleToken<MatchType> | |
| MatchType | : | IEquatable<MatchType> |
Protected Member Functions | |
| BaseParserForList (IList< Token > list, Token getEofToken, ISourceFile file, int startIndex=0) | |
| <inheridoc> | |
| BaseParserForList (IList< Token > list, Func< Token, Token > getEofToken, MatchType eof, ISourceFile file, int startIndex=0) | |
| <inheridoc> | |
| BaseParserForList (IListAndListSource< Token > list, Token eofToken, ISourceFile file, int startIndex=0) | |
| BaseParserForList (IListSource< Token > list, Token eofToken, ISourceFile file, int startIndex=0) | |
| BaseParserForList (IEnumerable< Token > list, Token getEofToken, ISourceFile file, int startIndex=0) | |
| <inheridoc> | |
| BaseParserForList (IEnumerable< Token > list, Func< Token, Token > getEofToken, MatchType eof, ISourceFile file, int startIndex=0) | |
| <inheridoc> | |
| BaseParserForList (IEnumerator< Token > list, Token getEofToken, ISourceFile file, int startIndex=0) | |
| <inheridoc> | |
Protected Member Functions inherited from Loyc.Syntax.BaseParserForList< Token, MatchType, List > | |
| BaseParserForList (List list, Func< Token, Token > getEofToken, MatchType eof, ISourceFile file, int startIndex=0) | |
| Initializes this object to begin parsing the specified tokens. More... | |
| BaseParserForList (List list, Token getEofToken, ISourceFile file, int startIndex=0) | |
| virtual void | Reset (List list, Token eofToken, ISourceFile file, int startIndex=0) |
| Reinitializes the object. This method is called by the constructor. More... | |
| virtual void | Reset (List list, Func< Token, Token > getEofToken, MatchType eof, ISourceFile file, int startIndex=0) |
| Reinitializes the object. This method is called by the constructor. More... | |
| void | Reset () |
| sealed override MatchType | EofInt () |
| Returns the value used for EOF (normally 0) More... | |
| sealed override Token | LT (int i) |
Returns the token at lookahead i (e.g. Source[InputPosition + i] if the tokens come from a list called Source) More... | |
| MatchType | LA (int i) |
| abstract override string | ToString (MatchType tokenType) |
| Returns a string representation of the specified token type. These strings are used in error messages. More... | |
| bool | Down (List children) |
| Switches to parsing the specified token list at position zero (typically the value of Loyc.Syntax.Lexing.Token.Children in a token tree produced by TokensToTree.) The original token list and the original InputPosition are placed on a stack, so you can restore the old list by calling Up(). More... | |
| void | Up () |
| Returns to the old token list saved by Down. More... | |
| T | Up< T > (T value) |
Calls Up() and returns value. More... | |
Protected Member Functions inherited from Loyc.Syntax.BaseParser< Token, MatchType > | |
| BaseParser (ISourceFile?file=null, int startIndex=0) | |
| Initializes the base class. More... | |
| virtual int | LaIndexToCharIndex (int lookaheadIndex) |
| Converts a lookahead token index to a character index (used for error reporting). More... | |
| virtual object | LaIndexToMsgContext (int lookaheadIndex) |
| Converts a lookahead token index to a SourceRange (or to a string if SourceFile was initialized to null.) More... | |
| virtual void | Error (int lookaheadIndex, string message) |
| Records an error or throws an exception. More... | |
| virtual void | Error (int lookaheadIndex, string format, params object?[] args) |
| void | Skip () |
| Token | MatchAny () |
| Token | Match (HashSet< MatchType > set, bool inverted=false) |
| Token | Match (MatchType a) |
| Token | Match (MatchType a, MatchType b) |
| Token | Match (MatchType a, MatchType b, MatchType c) |
| Token | Match (MatchType a, MatchType b, MatchType c, MatchType d) |
| Token | MatchExcept () |
| Token | MatchExcept (MatchType a) |
| Token | MatchExcept (MatchType a, MatchType b) |
| Token | MatchExcept (MatchType a, MatchType b, MatchType c) |
| Token | MatchExcept (MatchType a, MatchType b, MatchType c, MatchType d) |
| Token | MatchExcept (HashSet< MatchType > set) |
| bool | TryMatch (HashSet< MatchType > set, bool inverted=false) |
| bool | TryMatch (MatchType a) |
| bool | TryMatch (MatchType a, MatchType b) |
| bool | TryMatch (MatchType a, MatchType b, MatchType c) |
| bool | TryMatch (MatchType a, MatchType b, MatchType c, MatchType d) |
| bool | TryMatchExcept () |
| bool | TryMatchExcept (MatchType a) |
| bool | TryMatchExcept (MatchType a, MatchType b) |
| bool | TryMatchExcept (MatchType a, MatchType b, MatchType c) |
| bool | TryMatchExcept (MatchType a, MatchType b, MatchType c, MatchType d) |
| bool | TryMatchExcept (HashSet< MatchType > set) |
| void | MatchError (bool inverted, params MatchType[] expected) |
| virtual void | MatchError (bool inverted, IEnumerable< MatchType > expected) |
| Handles an error that occurs during Match() or MatchExcept() More... | |
| virtual string | ToString (bool inverted, IEnumerable< MatchType > expected) |
| virtual void | Check (bool expectation, string expectedDescr="") |
Additional Inherited Members | |
Public static fields inherited from Loyc.Syntax.BaseParser< Token, MatchType > | |
| static readonly IMessageSink | LogExceptionErrorSink |
| Throws LogException when it receives an error. Non-errors are sent to MessageSink.Default. More... | |
| static readonly IMessageSink | FormatExceptionErrorSink |
Properties inherited from Loyc.Syntax.BaseParserForList< Token, MatchType, List > | |
| Token | EofToken [get] |
| List | TokenList [get] |
| The IList{Token} that was provided to the constructor, if any. More... | |
| sealed override MatchType | LA0Int [get] |
| MatchType | LA0 [get] |
| new int | InputPosition [get, set] |
Properties inherited from Loyc.Syntax.BaseParser< Token, MatchType > | |
| IMessageSink | ErrorSink [get, set] |
| Gets or sets the object to which error messages are sent. The default object is LogExceptionErrorSink, which throws an exception if an error occurs. More... | |
| ISourceFile | SourceFile [get] |
| The ISourceFile object that was provided to the constructor, if any. More... | |
| Token | LT0 [get] |
| Next token to parse (cached; is set to LT(0) whenever InputPosition is changed). More... | |
| int | InputPosition [get, set] |
| Current position of the next token to be parsed. More... | |
| abstract MatchType | LA0Int [get] |
| Returns the token type of _lt0 (normally _lt0.TypeInt) More... | |
Static Protected Member Functions inherited from Loyc.Syntax.BaseParser< Token, MatchType > | |
| static HashSet< MatchType > | NewSet (params MatchType[] items) |
Protected fields inherited from Loyc.Syntax.BaseParserForList< Token, MatchType, List > | |
| Func< Token, Token > | _getEofToken |
| List | _tokenList |
Protected fields inherited from Loyc.Syntax.BaseParser< Token, MatchType > | |
| ISourceFile | _sourceFile |
| Token | _lt0 = default! |
| int | _inputPosition |
| MatchType | EOF |
1.8.7