IScriptEngine<TResult, TInterface>

public string LanguageName { get; }

Language: C#

Язык движка скриптинга

public IScript<TResult> Compile(string script)

Language: C#

Компилирует скрипт и возвращает объект IScript

Текст скрипта Объект скрипта

public TResult Evaluate(string script)

Language: C#

Выполняет скрипт и возвращает результат

Parameters:

  • script: Текст скрипта

Returns: Результат выполнения скрипта

public void Execute(string script)

Language: C#

Выполняет скрипт без возвращаемого значения

Parameters:

  • script: Текст скрипта

public void RegisterModule(Module<TInterface> module)

Language: C#

Регистрирует модуль в скриптинговом движке

Parameters:

  • module: Модуль для регистрации

public void SetValue(string key, T value)

Language: C#

Устанавливает значение в скриптинговом движке по ключу

Type Parameters:

  • T: Тип значения

Parameters:

  • key: Ключ
  • value: Значение

public void DeleteValue(string key)

Language: C#

Удаляет значение из скриптингового движка по ключу

Type Parameters:

  • T: Тип значения

Parameters:

  • key: Ключ

public T? GetValue(string name)

Language: C#

Получает значение из скриптингового движка по имени

Type Parameters:

  • T: Тип значения

Parameters:

  • name: Имя значения

Returns: Значение

public bool TryGetValue(string name, [NotNullWhen(true)] out T? value)

Language: C#

Пытается получить значение из скриптингового движка по имени

Type Parameters:

  • T: Тип значения

Parameters:

  • name: Имя значения
  • value: Значение

Returns: Успешность получения значения

public Task<IScript<TResult>> CompileAsync(string script, CancellationToken cancellationToken = default)

Language: C#

Асинхронно компилирует скрипт

Parameters:

  • script: Текст скрипта
  • cancellationToken: Токен отмены

Returns: Объект скрипта

public Task<TResult> EvaluateAsync(string script, CancellationToken cancellationToken = default)

Language: C#

Асинхронно выполняет скрипт и возвращает результат

Parameters:

  • script: Текст скрипта
  • cancellationToken: Токен отмены

Returns: Результат выполнения скрипта

public Task ExecuteAsync(string script, CancellationToken cancellationToken = default)

Language: C#

Асинхронно выполняет скрипт без возвращаемого значения

Parameters:

  • script: Текст скрипта
  • cancellationToken: Токен отмены

public bool TryEvaluate(string script, [NotNullWhen(true)] out TResult? result)

Language: C#

Пытается скомпилировать и выполнить скрипт

Parameters:

  • script: Текст скрипта
  • result: Результат выполнения при успехе

Returns: true если скрипт успешно выполнен

public Task<(bool Success, TResult? Result)> TryEvaluateAsync(string script, CancellationToken cancellationToken = default)

Language: C#

Пытается скомпилировать и выполнить скрипт асинхронно

Parameters:

  • script: Текст скрипта
  • cancellationToken: Токен отмены

Returns: Кортеж (успех, результат)

public IScriptEngineProfiler? Profiler { get; }

Language: C#

Получает профилер движка

public IScriptCache<TResult>? Cache { get; }

Language: C#

Получает кеш скриптов

public IScriptDebugger? Debugger { get; }

Language: C#

Получает отладчик скриптов

public void Update(float deltaTime)

Language: C#

Обновляет движок скриптинга (вызывается каждый кадр)

Parameters:

  • deltaTime: Время, прошедшее с последнего обновления в секундах

public IScriptContext CreateContext()

Language: C#

Создает новый контекст выполнения для изоляции переменных

Returns: Новый контекст выполнения

public bool RemoveContext(string contextId)

Language: C#

Удаляет контекст выполнения

Parameters:

  • contextId: Идентификатор контекста

Returns: true если контекст был удален

public IScriptContext? GetContext(string contextId)

Language: C#

Получает активный контекст выполнения

Parameters:

  • contextId: Идентификатор контекста

Returns: Контекст или null если не найден