Class ExpressionNode
- Namespace
- StepLang.Parsing
- Assembly
- StepLang.dll
public abstract record ExpressionNode : IEvaluatableNode<IExpressionEvaluator, ExpressionResult>, INode, IEquatable<ExpressionNode>
- Inheritance
-
ExpressionNode
- Implements
-
- Derived
-
- Inherited Members
-
Constructors
ExpressionNode()
protected ExpressionNode()
ExpressionNode(ExpressionNode)
protected ExpressionNode(ExpressionNode original)
Parameters
original
ExpressionNode
Properties
EqualityContract
protected virtual Type EqualityContract { get; }
Property Value
- Type
Location
public abstract TokenLocation Location { get; }
Property Value
- TokenLocation
Methods
Equals(ExpressionNode?)
public virtual bool Equals(ExpressionNode? other)
Parameters
other
ExpressionNode
Returns
- bool
Equals(object?)
public override bool Equals(object? obj)
Parameters
obj
object
Returns
- bool
EvaluateUsing(IExpressionEvaluator)
public abstract ExpressionResult EvaluateUsing(IExpressionEvaluator evaluator)
Parameters
evaluator
IExpressionEvaluator
Returns
- ExpressionResult
GetHashCode()
public override int GetHashCode()
Returns
- int
PrintMembers(StringBuilder)
protected virtual bool PrintMembers(StringBuilder builder)
Parameters
builder
StringBuilder
Returns
- bool
ToString()
public override string ToString()
Returns
- string
Operators
operator ==(ExpressionNode?, ExpressionNode?)
public static bool operator ==(ExpressionNode? left, ExpressionNode? right)
Parameters
left
ExpressionNode
right
ExpressionNode
Returns
- bool
operator !=(ExpressionNode?, ExpressionNode?)
public static bool operator !=(ExpressionNode? left, ExpressionNode? right)
Parameters
left
ExpressionNode
right
ExpressionNode
Returns
- bool