Table of Contents

Class IrInstruction.GetProperty

Namespace
MuLang.IR
Assembly
MuLang.IR.dll

Reads a named property.

public sealed record IrInstruction.GetProperty : IrInstruction, IEquatable<IrInstruction>, IEquatable<IrInstruction.GetProperty>
Inheritance
IrInstruction.GetProperty
Implements
Inherited Members

Constructors

GetProperty(TextSpan, int, int, string, bool, bool)

Reads a named property.

public GetProperty(TextSpan Span, int Destination, int Target, string Name, bool IsOptional, bool IsArrayLength)

Parameters

Span TextSpan

The source span.

Destination int

The destination slot.

Target int

The target slot.

Name string

The property name.

IsOptional bool

Whether null propagates through the access.

IsArrayLength bool

Whether the access represents an array length operation.

Properties

Destination

The destination slot.

public int Destination { get; init; }

Property Value

int

EqualityContract

protected override Type EqualityContract { get; }

Property Value

Type

IsArrayLength

Whether the access represents an array length operation.

public bool IsArrayLength { get; init; }

Property Value

bool

IsOptional

Whether null propagates through the access.

public bool IsOptional { get; init; }

Property Value

bool

Name

The property name.

public string Name { get; init; }

Property Value

string

Target

The target slot.

public int Target { get; init; }

Property Value

int

Methods

Deconstruct(out TextSpan, out int, out int, out string, out bool, out bool)

public void Deconstruct(out TextSpan Span, out int Destination, out int Target, out string Name, out bool IsOptional, out bool IsArrayLength)

Parameters

Span TextSpan
Destination int
Target int
Name string
IsOptional bool
IsArrayLength bool

Equals(IrInstruction?)

public override sealed bool Equals(IrInstruction? other)

Parameters

other IrInstruction

Returns

bool

Equals(GetProperty?)

public bool Equals(IrInstruction.GetProperty? other)

Parameters

other IrInstruction.GetProperty

Returns

bool

Equals(object?)

public override bool Equals(object? obj)

Parameters

obj object

Returns

bool

GetHashCode()

public override int GetHashCode()

Returns

int

PrintMembers(StringBuilder)

protected override bool PrintMembers(StringBuilder builder)

Parameters

builder StringBuilder

Returns

bool

ToString()

public override string ToString()

Returns

string

Operators

operator ==(GetProperty?, GetProperty?)

public static bool operator ==(IrInstruction.GetProperty? left, IrInstruction.GetProperty? right)

Parameters

left IrInstruction.GetProperty
right IrInstruction.GetProperty

Returns

bool

operator !=(GetProperty?, GetProperty?)

public static bool operator !=(IrInstruction.GetProperty? left, IrInstruction.GetProperty? right)

Parameters

left IrInstruction.GetProperty
right IrInstruction.GetProperty

Returns

bool