|
Enhanced C#
Language of your choice: library documentation
|
Represents a nonterminal, which is a reference to a rule. More...
Represents a nonterminal, which is a reference to a rule.
Public fields | |
| new Rule | Rule |
| VList< LNode > | Params = VList<LNode>.Empty |
| bool | IsInline = null |
Public fields inherited from Loyc.LLParserGenerator.Pred | |
| LNode | PreAction |
| LNode | PostAction |
| Symbol | VarLabel |
| bool | VarIsList |
| Func< LNode, LNode > | ResultSaver |
A function that saves the result produced by the matching code of this predicate (null if the result is not saved). For example, if the parser generator is given the predicate @[ x='a'..'z' ], the default matching code will be @(Match('a', 'z')), and ResultSaver will be set to a function that receives this matching code and returns @(x = Match('a', 'z')) in response. More... | |
Properties | |
| override bool | IsNullable [get] |
Properties inherited from Loyc.LLParserGenerator.Pred | |
| LNode | Basis [get, set] |
| abstract bool | IsNullable [get] |
| Returns true if this predicate can match an empty input. More... | |
| object | Location [get] |
Properties inherited from Loyc.IHasLocation | |
| object | Location [get] |
Public Member Functions | |
| override void | Call (PredVisitor visitor) |
| RuleRef (LNode basis, Rule rule) | |
| override string | ToString () |
| override string | ChooseGotoLabel () |
| Optional. If this predicate represents the matching code for a branch of an Alts and this code is reached through a goto statement, this method is used to select a label name. Supported by RuleRef. More... | |
Public Member Functions inherited from Loyc.LLParserGenerator.Pred | |
| Pred (LNode basis) | |
| LNode | AutoSaveResult (LNode matchingCode) |
| virtual Pred | Clone () |
| Deep-clones a predicate tree. Terminal sets and Nodes referenced by the tree are not cloned; the clone's value of Next will be null. The same Pred cannot appear in two places in a tree, so you must clone before re-use. More... | |
| string | ToStringWithPosition () |
Additional Inherited Members | |
Static Public Member Functions inherited from Loyc.LLParserGenerator.Pred | |
| static Seq | operator+ (char a, Pred b) |
| static Seq | operator+ (Pred a, char b) |
| static Seq | operator+ (Pred a, Pred b) |
| static Pred | operator| (char a, Pred b) |
| static Pred | operator| (Pred a, char b) |
| static Pred | operator| (Pred a, Pred b) |
| static Pred | operator/ (Pred a, Pred b) |
| static Pred | operator+ (Pred a) |
| static Pred | Or (Pred a, Pred b, bool slashJoined) |
| static Pred | Or (Pred a, Pred b, bool slashJoined, LNode basis, BranchMode aMode=BranchMode.None, BranchMode bMode=BranchMode.None, IMessageSink sink=null) |
| static Alts | Star (Pred contents, bool?greedy=null) |
| static Alts | Opt (Pred contents, bool?greedy=null) |
| static Seq | Plus (Pred contents, bool?greedy=null) |
| static TerminalPred | Range (char lo, char hi) |
| static TerminalPred | Set (IPGTerminalSet set) |
| static TerminalPred | Set (string set) |
| static TerminalPred | Set (params LNode[] s) |
| static TerminalPred | Not (params LNode[] s) |
| static TerminalPred | Char (char c) |
| static TerminalPred | Chars (params char[] c) |
| static Seq | Seq (string s, LNode basis=null) |
| static Rule | Rule (string name, Pred pred, bool isStartingRule=false, bool isToken=false, int maximumK=-1) |
| static Pred | operator+ (LNode pre, Pred p) |
| static Pred | operator+ (Pred p, LNode post) |
| static LNode | MergeActions (LNode action, LNode action2) |
| static AndPred | And (object test) |
| static AndPred | AndNot (object test) |
| static Pred | Set (string varName, Pred pred) |
| static Pred | SetVar (string varName, Pred pred) |
| static Pred | AddSet (string varName, Pred pred) |
| static Pred | Op (string varName, Symbol @operator, Pred pred) |
|
inlinevirtual |
Optional. If this predicate represents the matching code for a branch of an Alts and this code is reached through a goto statement, this method is used to select a label name. Supported by RuleRef.
Reimplemented from Loyc.LLParserGenerator.Pred.
1.8.7