Class ReferencePriorityInfo
One entry in a workspace's ordered reference list, as the runtime sees it: a reference's
source-visible name and its position in that list. Nothing more — a referenced library's members
are not carried here. They are contributed by an ISymbolProvider and resolved
through ISymbolResolver like any other symbol (today the VBA intrinsics come from
the environment host; a dedicated library scope tier is planned). This type exists only so a
name-resolution pass can break a cross-reference tie by list position.
public sealed record ReferencePriorityInfo : IEquatable<ReferencePriorityInfo>
- Inheritance
-
ReferencePriorityInfo
- Implements
- Inherited Members
Remarks
The list is the one the .rdproj declares, in declaration order (RD-VBAL
§2.3.1.2), surfaced on IRuntimeSession.References exactly as the language server
provides it — the runtime does not re-sort it. Priority is the position: rank
0 appears first and is the lowest precedence — always the VBA standard
library — so any later reference that exports an identically-named global-scope member shadows it,
which the semantic layer surfaces as a shadowed declaration diagnostic. A workspace's own
declarations shadow every reference.
Constructors
ReferencePriorityInfo(string, int)
One entry in a workspace's ordered reference list, as the runtime sees it: a reference's
source-visible name and its position in that list. Nothing more — a referenced library's members
are not carried here. They are contributed by an ISymbolProvider and resolved
through ISymbolResolver like any other symbol (today the VBA intrinsics come from
the environment host; a dedicated library scope tier is planned). This type exists only so a
name-resolution pass can break a cross-reference tie by list position.
public ReferencePriorityInfo(string Name, int Priority)
Parameters
NamestringThe identifier a workspace uses to qualify this reference's members (
VBA,Excel, …).PriorityintThe reference's position in the workspace's ordered reference list;
0appears first and is the lowest precedence.
Remarks
The list is the one the .rdproj declares, in declaration order (RD-VBAL
§2.3.1.2), surfaced on IRuntimeSession.References exactly as the language server
provides it — the runtime does not re-sort it. Priority is the position: rank
0 appears first and is the lowest precedence — always the VBA standard
library — so any later reference that exports an identically-named global-scope member shadows it,
which the semantic layer surfaces as a shadowed declaration diagnostic. A workspace's own
declarations shadow every reference.
Properties
Name
The identifier a workspace uses to qualify this reference's members (VBA, Excel, …).
public string Name { get; init; }
Property Value
Priority
The reference's position in the workspace's ordered reference list; 0 appears first and is the lowest precedence.
public int Priority { get; init; }