Class ArrayTypePattern.MatchNode
Represents a match node produced by a ArrayTypePattern.
public sealed record ArrayTypePattern.MatchNode : IMatchNode<TypeSignature>, IMatchNode, IEquatable<ArrayTypePattern.MatchNode>
- Inheritance
-
ArrayTypePattern.MatchNode
- Implements
- Inherited Members
Constructors
MatchNode(Pattern<TypeSignature>, TypeSignature, IMatchNode<TypeSignature>, IMatchNode<IList<ArrayDimension>>)
Represents a match node produced by a ArrayTypePattern.
public MatchNode(Pattern<TypeSignature> Pattern, TypeSignature ConcreteValue, IMatchNode<TypeSignature> BaseType, IMatchNode<IList<ArrayDimension>> Dimensions)
Parameters
PatternPattern<TypeSignature>ConcreteValueTypeSignatureBaseTypeIMatchNode<TypeSignature>DimensionsIMatchNode<IList<ArrayDimension>>
Properties
BaseType
public IMatchNode<TypeSignature> BaseType { get; init; }
Property Value
ConcreteValue
Gets the value that matched the pattern.
public TypeSignature ConcreteValue { get; init; }
Property Value
Dimensions
public IMatchNode<IList<ArrayDimension>> Dimensions { get; init; }
Property Value
Pattern
Gets the pattern that was matched.
public Pattern<TypeSignature> Pattern { get; init; }
Property Value
Methods
Deconstruct(out Pattern<TypeSignature>, out TypeSignature, out IMatchNode<TypeSignature>, out IMatchNode<IList<ArrayDimension>>)
public void Deconstruct(out Pattern<TypeSignature> Pattern, out TypeSignature ConcreteValue, out IMatchNode<TypeSignature> BaseType, out IMatchNode<IList<ArrayDimension>> Dimensions)
Parameters
PatternPattern<TypeSignature>ConcreteValueTypeSignatureBaseTypeIMatchNode<TypeSignature>DimensionsIMatchNode<IList<ArrayDimension>>
Equals(MatchNode?)
public bool Equals(ArrayTypePattern.MatchNode? other)
Parameters
otherArrayTypePattern.MatchNode
Returns
Equals(object?)
public override bool Equals(object? obj)
Parameters
objobject
Returns
GetChildren()
Enumerates all child nodes of this match node.
public IEnumerable<(string Name, IMatchNode Match)> GetChildren()
Returns
GetHashCode()
public override int GetHashCode()
Returns
ToString()
public override string ToString()
Returns
Operators
operator ==(MatchNode?, MatchNode?)
public static bool operator ==(ArrayTypePattern.MatchNode? left, ArrayTypePattern.MatchNode? right)
Parameters
leftArrayTypePattern.MatchNoderightArrayTypePattern.MatchNode
Returns
operator !=(MatchNode?, MatchNode?)
public static bool operator !=(ArrayTypePattern.MatchNode? left, ArrayTypePattern.MatchNode? right)
Parameters
leftArrayTypePattern.MatchNoderightArrayTypePattern.MatchNode