Mercury library  1.0
Translation of CFG grammars into an object model (Bachelor's thesis).
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Properties
Public Member Functions | List of all members
Mercury.Interpreting.Wildcard Class Reference

An element that matches zero or more values. Can be used as a variable, but the actioncall must be of arity (0, int.MAX_VALUE) and must accept Tree or Symbol as the argument. More...

Inheritance diagram for Mercury.Interpreting.Wildcard:
Mercury.Interpreting.Variable Mercury.Interpreting.Alternative Mercury.Interpreting.IElement

Public Member Functions

 Wildcard ()
 Creates a new Wildcard with a random name More...
 
 Wildcard (string name, SymbolType ws, IEnumerable< Symbol > symbols)
 Creates a new the Wildcard. See the Mercury.Interpreting.Alternative's constructor for more details. More...
 
override bool Equals (object obj)
 
override int GetHashCode ()
 
override string ToString ()
 
new bool Equals (IElement other)
 
bool Equals (Wildcard other)
 
- Public Member Functions inherited from Mercury.Interpreting.Variable
 Variable ()
 Creates an anonymous variable, an equivalent of Mercury.Interpreting.Wildcard that matches exactly one symbol More...
 
 Variable (string name, SymbolType ws, IEnumerable< Symbol > symbols)
 Initializes a new instance of the variable class. See Mercury.Interpreting.Alternative's constructor for more details. More...
 
override bool Equals (object obj)
 
override int GetHashCode ()
 
override string ToString ()
 
bool Equals (IElement other)
 
bool Equals (Variable other)
 
- Public Member Functions inherited from Mercury.Interpreting.Alternative
 Alternative (SymbolType sm, IEnumerable< Symbol > symbols)
 Initializes a new instance of the Alternative class. If symbols contains symbols of type that is present in the sm mask, they will be omitted. More...
 
bool MatchesSymbol (Symbol s)
 Indicates whether this alternative matches the given symbol. More...
 
override bool Equals (object obj)
 
override int GetHashCode ()
 
override string ToString ()
 
bool Equals (Alternative other)
 

Additional Inherited Members

- Static Public Member Functions inherited from Mercury.Interpreting.Variable
static bool IsValidName (string name)
 Determines whether the specified string is a valid variable name.
More...
 
- Protected Attributes inherited from Mercury.Interpreting.Alternative
HashSet< Symbolsmset
 
- Properties inherited from Mercury.Interpreting.Variable
string Name [get, set]
 Name of the variable More...
 
ElementType Type [get, set]
 
- Properties inherited from Mercury.Interpreting.Alternative
SymbolType SymbolMask [get, set]
 Mask of symbol types this alternative matches regardless the symbol name. More...
 
IReadOnlyList< SymbolSymbols [get, set]
 List of specific symbols this alternative matches. More...
 
- Properties inherited from Mercury.Interpreting.IElement
ElementType Type [get]
 Element type More...
 

Detailed Description

An element that matches zero or more values. Can be used as a variable, but the actioncall must be of arity (0, int.MAX_VALUE) and must accept Tree or Symbol as the argument.

Definition at line 370 of file Element.cs.

Constructor & Destructor Documentation

Mercury.Interpreting.Wildcard.Wildcard ( )

Creates a new Wildcard with a random name

Definition at line 375 of file Element.cs.

Mercury.Interpreting.Wildcard.Wildcard ( string  name,
SymbolType  ws,
IEnumerable< Symbol symbols 
)

Creates a new the Wildcard. See the Mercury.Interpreting.Alternative's constructor for more details.

Parameters
nameThe name of variable.
ws
symbolsThe symbols.

Definition at line 387 of file Element.cs.

Member Function Documentation

override bool Mercury.Interpreting.Wildcard.Equals ( object  obj)

Definition at line 395 of file Element.cs.

new bool Mercury.Interpreting.Wildcard.Equals ( IElement  other)

Definition at line 413 of file Element.cs.

bool Mercury.Interpreting.Wildcard.Equals ( Wildcard  other)

Definition at line 420 of file Element.cs.

override int Mercury.Interpreting.Wildcard.GetHashCode ( )

Definition at line 401 of file Element.cs.

override string Mercury.Interpreting.Wildcard.ToString ( )

Definition at line 404 of file Element.cs.


The documentation for this class was generated from the following file: