Class IrInstruction.GetElement
Reads an indexed element or dynamic object property.
public sealed record IrInstruction.GetElement : IrInstruction, IEquatable<IrInstruction>, IEquatable<IrInstruction.GetElement>
- Inheritance
-
IrInstruction.GetElement
- Implements
- Inherited Members
Constructors
GetElement(TextSpan, int, int, int, bool, bool)
Reads an indexed element or dynamic object property.
public GetElement(TextSpan Span, int Destination, int Target, int Index, bool IsObjectAccess, bool IsOptional)
Parameters
SpanTextSpanThe source span.
DestinationintThe destination slot.
TargetintThe target slot.
IndexintThe index or key slot.
IsObjectAccessboolWhether the target is an object.
IsOptionalboolWhether null propagates through the access.
Properties
Destination
The destination slot.
public int Destination { get; init; }
Property Value
EqualityContract
protected override Type EqualityContract { get; }
Property Value
Index
The index or key slot.
public int Index { get; init; }
Property Value
IsObjectAccess
Whether the target is an object.
public bool IsObjectAccess { get; init; }
Property Value
IsOptional
Whether null propagates through the access.
public bool IsOptional { get; init; }
Property Value
Target
The target slot.
public int Target { get; init; }
Property Value
Methods
Deconstruct(out TextSpan, out int, out int, out int, out bool, out bool)
public void Deconstruct(out TextSpan Span, out int Destination, out int Target, out int Index, out bool IsObjectAccess, out bool IsOptional)
Parameters
Equals(IrInstruction?)
public override sealed bool Equals(IrInstruction? other)
Parameters
otherIrInstruction
Returns
Equals(GetElement?)
public bool Equals(IrInstruction.GetElement? other)
Parameters
otherIrInstruction.GetElement
Returns
Equals(object?)
public override bool Equals(object? obj)
Parameters
objobject
Returns
GetHashCode()
public override int GetHashCode()
Returns
PrintMembers(StringBuilder)
protected override bool PrintMembers(StringBuilder builder)
Parameters
builderStringBuilder
Returns
ToString()
public override string ToString()
Returns
Operators
operator ==(GetElement?, GetElement?)
public static bool operator ==(IrInstruction.GetElement? left, IrInstruction.GetElement? right)
Parameters
leftIrInstruction.GetElementrightIrInstruction.GetElement
Returns
operator !=(GetElement?, GetElement?)
public static bool operator !=(IrInstruction.GetElement? left, IrInstruction.GetElement? right)
Parameters
leftIrInstruction.GetElementrightIrInstruction.GetElement