Class TypeDefOrRefPattern.MatchNode
Represents a match node produced by a TypeDefOrRefPattern.
public sealed record TypeDefOrRefPattern.MatchNode : IMatchNode<TypeSignature?>, IMatchNode, IEquatable<TypeDefOrRefPattern.MatchNode>
- Inheritance
-
TypeDefOrRefPattern.MatchNode
- Implements
- Inherited Members
Constructors
MatchNode(Pattern<TypeSignature?>, TypeSignature, IMatchNode<bool>, IMatchNode<ITypeDefOrRef>)
Represents a match node produced by a TypeDefOrRefPattern.
public MatchNode(Pattern<TypeSignature?> Pattern, TypeSignature ConcreteValue, IMatchNode<bool> IsValueType, IMatchNode<ITypeDefOrRef> Type)
Parameters
PatternPattern<TypeSignature>ConcreteValueTypeSignatureIsValueTypeIMatchNode<bool>TypeIMatchNode<ITypeDefOrRef>
Properties
ConcreteValue
Gets the value that matched the pattern.
public TypeSignature ConcreteValue { get; init; }
Property Value
IsValueType
public IMatchNode<bool> IsValueType { get; init; }
Property Value
Pattern
Gets the pattern that was matched.
public Pattern<TypeSignature?> Pattern { get; init; }
Property Value
Type
public IMatchNode<ITypeDefOrRef> Type { get; init; }
Property Value
Methods
Deconstruct(out Pattern<TypeSignature?>, out TypeSignature, out IMatchNode<bool>, out IMatchNode<ITypeDefOrRef>)
public void Deconstruct(out Pattern<TypeSignature?> Pattern, out TypeSignature ConcreteValue, out IMatchNode<bool> IsValueType, out IMatchNode<ITypeDefOrRef> Type)
Parameters
PatternPattern<TypeSignature>ConcreteValueTypeSignatureIsValueTypeIMatchNode<bool>TypeIMatchNode<ITypeDefOrRef>
Equals(MatchNode?)
public bool Equals(TypeDefOrRefPattern.MatchNode? other)
Parameters
otherTypeDefOrRefPattern.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 ==(TypeDefOrRefPattern.MatchNode? left, TypeDefOrRefPattern.MatchNode? right)
Parameters
leftTypeDefOrRefPattern.MatchNoderightTypeDefOrRefPattern.MatchNode
Returns
operator !=(MatchNode?, MatchNode?)
public static bool operator !=(TypeDefOrRefPattern.MatchNode? left, TypeDefOrRefPattern.MatchNode? right)
Parameters
leftTypeDefOrRefPattern.MatchNoderightTypeDefOrRefPattern.MatchNode