Table of Contents

Class MemberAccessExpressionNode

Namespace
RDCore.SDK.Model.AST.Expressions
Assembly
RDCore.SDK.dll

MS-VBAL 5.6 member-access-expression (owner.member) and its with-expression sibling (.member, Owner omitted). Both are part of the l-expression grammar family alongside SimpleNameExpressionNode — a pure AST node; its static and run-time semantics (owner-type member lookup, the late-bound Variant/Object path, the design-time vs. immediate-pane error split) live in the semantics layer, not here.

public sealed record MemberAccessExpressionNode : ExpressionNode, IEquatable<SyntaxNode>, IExecutableNode, IEquatable<ExpressionNode>, IEquatable<MemberAccessExpressionNode>
Inheritance
MemberAccessExpressionNode
Implements
Inherited Members

Remarks

Owner and Member are views over Children, not separately stored — Children is the single source of truth a with expression can't desync them from.

Constructors

MemberAccessExpressionNode(SyntaxNodeId, SourceLocation, ExpressionNode?, SimpleNameExpressionNode)

MS-VBAL 5.6 member-access-expression (owner.member) and its with-expression sibling (.member, Owner omitted). Both are part of the l-expression grammar family alongside SimpleNameExpressionNode — a pure AST node; its static and run-time semantics (owner-type member lookup, the late-bound Variant/Object path, the design-time vs. immediate-pane error split) live in the semantics layer, not here.

public MemberAccessExpressionNode(SyntaxNodeId Identity, SourceLocation Location, ExpressionNode? Owner, SimpleNameExpressionNode Member)

Parameters

Identity SyntaxNodeId

A unique identifier for this specific syntax node.

Location SourceLocation

The Location (holds the document Uri and a Range) of the bound expression.

Owner ExpressionNode

The expression the member is accessed on, or null for a with-expression — a leading-dot reference (.member) whose owner is implicit, legal only inside a With block.

Member SimpleNameExpressionNode

The identifier naming the member being accessed.

Remarks

Owner and Member are views over Children, not separately stored — Children is the single source of truth a with expression can't desync them from.

Properties

Member

The identifier naming the member being accessed. A view over Children, not separately stored.

[JsonIgnore]
public SimpleNameExpressionNode Member { get; }

Property Value

SimpleNameExpressionNode

Owner

The expression the member is accessed on, or null for a with-expression — a leading-dot reference (.member) whose owner is implicit, legal only inside a With block. A view over Children, not separately stored.

[JsonIgnore]
public ExpressionNode? Owner { get; }

Property Value

ExpressionNode