/
EvilBeaver
/
OneScript
Обзор
Документация
Войти
/
EvilBeaver
/
OneScript
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
develop
src/ScriptEngine/Machine/ExecutionFrame.cs
45 строк
1 KB
EvilBeaver
Заменен подход к получению переменных из контекстов, класс IAttachableContext.cs теперь используется для получения переменных по номеру, а не массивом.
25 ноя 2025, 12:04
25 ноя 2025, 12:04
cb25ba5
Код
Авторство
О чём код?
/*---------------------------------------------------------- This Source Code Form is subject to the terms of the Mozilla Public License, v.2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. ----------------------------------------------------------*/ using System.Collections.Generic; using OneScript.Contexts; using OneScript.Language; namespace ScriptEngine.Machine { internal class ExecutionFrame { public IVariable[] Locals; public int InstructionPointer; public int LineNumber; public bool DiscardReturnValue; public string MethodName; public ScriptException LastException; public StackRuntimeModule Module; public bool IsReentrantCall; public readonly Stack<IValue> LocalFrameStack = new Stack<IValue>(); public IAttachableContext ThisScope { get; set; } public IReadOnlyList<IAttachableContext> Scopes { get; set; } public override string ToString() { return $"{MethodName}: {LineNumber} ({Module.Source.Name})"; } } public struct ExecutionFrameInfo { public string Source; public int LineNumber; public string MethodName; internal ExecutionFrame FrameObject; } }