Table of Contents

Interface IRuntimeEnvironmentProfile

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

An immutable description of the host environment an execution session runs in — the facts VBA semantics depend on that are neither in the source nor derivable from it.

public interface IRuntimeEnvironmentProfile

Remarks

Supplied by the environment host (from appsettings.json, overridable by the host). Design- time and tests use Default.

Properties

AllowDllImports

🎯 Whether a Declare'd library import may actually be called. true unless an administrator said otherwise.

bool AllowDllImports { get; }

Property Value

bool

AnsiCodePage

The ANSI code page for Byte() ↔ String conversions and the non-Unicode behaviour of Chr / Asc.

int AnsiCodePage { get; }

Property Value

int

Culture

The CultureInfo for Lcid — drives Option Compare Text, Like, Format$, and number / date let-coercion to and from String.

CultureInfo Culture { get; }

Property Value

CultureInfo

DatabaseCompare

The comparison mode Option Compare Database stands for in this environment: Text or Binary.

OptionCompare DatabaseCompare { get; }

Property Value

OptionCompare

Remarks

👉 MS-VBAL leaves Option Compare Database unspecified (§5.2.1.1); a module that declares it compares strings as this says.

ErlLineNumbering

🎯 What Erl counts as the line a run-time error was raised at. DocumentLine unless a workspace asks for MS-VBA's own behaviour.

VBErlLineNumbering ErlLineNumbering { get; }

Property Value

VBErlLineNumbering

Is64Bit

true for a 64-bit environment. Determines LongPtr width and the value of the #If Win64 / #If VBA7 pre-compiler directives.

bool Is64Bit { get; }

Property Value

bool

Language

The language the code is written in: what the environment is a dialect of, and so which symbols and statements exist at all.

SupportedLanguage Language { get; }

Property Value

SupportedLanguage

Remarks

👉 RD-VBA unless the workspace says otherwise. It is not derivable from the source, which is why it is a fact of the environment.

Lcid

The environment locale identifier (LCID). 0 means the invariant locale.

int Lcid { get; }

Property Value

int

SupportsOptionCompareDatabase

true when the host supports the Option Compare Database directive (Microsoft Access).

bool SupportsOptionCompareDatabase { get; }

Property Value

bool