registerGlobalVariables static method

void registerGlobalVariables(
  1. D4rt interpreter,
  2. String importPath
)

Registers all global variables with the interpreter.

importPath is the package import path for library-scoped registration. Collects all registration errors and throws a single exception with all error details if any registrations fail.

Implementation

static void registerGlobalVariables(D4rt interpreter, String importPath) {
  final errors = <String>[];

  try {
    interpreter.registerGlobalVariable('defaultVSCodeBridgePort', $tom_vscode_scripting_api_5.defaultVSCodeBridgePort, importPath, sourceUri: 'package:tom_vscode_scripting_api/src/vscode_bridge_client.dart');
  } catch (e) {
    errors.add('Failed to register variable "defaultVSCodeBridgePort": $e');
  }
  interpreter.registerGlobalGetter('vscode', () => $tom_vscode_scripting_api_1.vscode, importPath, sourceUri: 'package:tom_vscode_scripting_api/script_globals.dart');
  interpreter.registerGlobalGetter('window', () => $tom_vscode_scripting_api_1.window, importPath, sourceUri: 'package:tom_vscode_scripting_api/script_globals.dart');
  interpreter.registerGlobalGetter('workspace', () => $tom_vscode_scripting_api_1.workspace, importPath, sourceUri: 'package:tom_vscode_scripting_api/script_globals.dart');
  interpreter.registerGlobalGetter('commands', () => $tom_vscode_scripting_api_1.commands, importPath, sourceUri: 'package:tom_vscode_scripting_api/script_globals.dart');
  interpreter.registerGlobalGetter('extensions', () => $tom_vscode_scripting_api_1.extensions, importPath, sourceUri: 'package:tom_vscode_scripting_api/script_globals.dart');
  interpreter.registerGlobalGetter('lm', () => $tom_vscode_scripting_api_1.lm, importPath, sourceUri: 'package:tom_vscode_scripting_api/script_globals.dart');
  interpreter.registerGlobalGetter('chat', () => $tom_vscode_scripting_api_1.chat, importPath, sourceUri: 'package:tom_vscode_scripting_api/script_globals.dart');

  if (errors.isNotEmpty) {
    throw StateError('Bridge registration errors (tom_vscode_scripting_api):\n${errors.join("\n")}');
  }
}