Table of Contents

Interface ISymbolProvider

Namespace
RDCore.SDK.Runtime.Abstract.Execution
Assembly
RDCore.SDK.dll

Produces the Symbols a session or semantic context is composed from. Each provider is constructed with its own source and yields the symbols that source defines.

public interface ISymbolProvider

Remarks

⚖️ RDCore provides implementations of this interface licensed under GPLv3:

  • ConfigurationSymbolProvider (environment host) — precompiler constants from the .rdproj project file, overridden by CLI arguments.
  • ProjectSymbolProvider (environment host) — the module and reference structure declared by the .rdproj.
  • SyntaxTreeSymbolProvider (language server) — declarations resolved from a parsed module's AST (both live and dead precompiler branches); their descriptors reach the environment host over rdcore/host/symbols/define.
  • LibrarySymbolProvider — types and members reflected from a referenced library.

The environment host's own runtime and standard-library symbols are provided the same way.

Methods

ProvideSymbols()

Yields the symbols this provider's source defines. May be lazy.

IEnumerable<Symbol> ProvideSymbols()

Returns

IEnumerable<Symbol>