NonTerminal Class
Represents a non-terminal symbol within a grammar.
public class NonTerminal : Symbol, IKeyedObject
- Implements:
- IKeyedObject
Constructors
NonTerminal(string)
Represents a non-terminal symbol within a grammar.
public NonTerminal(string key)
| Parameter | Type | Description |
|---|---|---|
| key | string | A string that identifies the symbol. |
Properties
Production
The EbnfProduction for this non-terminal.
public EbnfProduction? Production { get; set; }
Property Value
Remarks
Once the grammar has been compiled, the setter of this property will throw an exception if called.
Methods
ToTerm(string?)
Wraps this symbol with an EbnfSymbol and optional label.
public override EbnfSymbol ToTerm(string? label)
| Parameter | Type | Description |
|---|---|---|
| label | string | The optional string label to use. |
Returns
- EbnfSymbol:
The EbnfSymbol that was created.
Inherited Members
- Symbol.CanMatch(IParserState)
- Symbol.Optional()
- Symbol.OneOrMore()
- Symbol.OnComplete(ParserCallback)
- Symbol.OnError(ParserErrorCallback)
- Symbol.OnErrorContinue()
- Symbol.OnErrorIgnore()
- Symbol.OnErrorNoReport()
- Symbol.OnInitialize(ParserCallback)
- Symbol.OnSuccess(ParserCallback)
- Symbol.Range(int, int?)
- Symbol.ToString()
- Symbol.ToTerm()
- Symbol.ZeroOrMore()
- Symbol.CanMatchCallback
- Symbol.IsCompiled
- Symbol.ErrorAlias
- Symbol.Key
- Symbol.this[string]
- object.GetType()
- object.MemberwiseClone()
- object.Equals(object)
- object.Equals(object, object)
- object.ReferenceEquals(object, object)
- object.GetHashCode()