Represents a terminal (which is a token or a character) or a set of possible terminals (e.g. 'A'..'Z').
More...
Represents a terminal (which is a token or a character) or a set of possible terminals (e.g. 'A'..'Z').
|
override void | Call (PredVisitor visitor) |
|
| TerminalPred (LNode basis, char ch) |
|
| TerminalPred (LNode basis, int ch) |
|
| TerminalPred (LNode basis, char lo, char hi) |
|
| TerminalPred (LNode basis, IPGTerminalSet set, bool allowEOF=false) |
| Initializes the object with the specified set. More...
|
|
virtual bool | CanMerge (TerminalPred r) |
|
TerminalPred | Merge (TerminalPred r, bool ignoreActions=false) |
|
override string | ToString () |
|
| 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 () |
|
virtual 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...
|
|
|
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) |
|