DebuggerContext {SMRUCC.Rsharp.Interpreter} .NET clr documentation

DebuggerContext

Description

调试器状态管理类

这个类型是整个调试器的核心, 其内部不包含任何的控制台交互代码, 控制台的交互逻辑位于 ConsoleDebuggerFrontend 之中, 使得GUI宿主程序能够通过订阅 @E:SMRUCC.Rsharp.Interpreter.DebuggerContext.OnBreakpointHit 事件 并且调用 @M:SMRUCC.Rsharp.Interpreter.DebuggerContext.Resume(SMRUCC.Rsharp.Interpreter.DebugAction) 函数的方式来复用同一套调试器内核.

在整个环境链之上, 所有的 Environment 对象都是共享 同一个 DebuggerContext 实例的, 请参见 Environment 的构造函数之中的相关实现

Declare

            
# namespace SMRUCC.Rsharp.Interpreter
export class DebuggerContext {
   # 断点的集合管理器
   breakpoints: BreakpointStore;
   # 当前的调试动作
   CurrentAction: DebugAction;
   # 用于外部(例如UI界面)访问当前的变量环境
   CurrentEnvironment: Environment;
   # 运行时的检查器, 提供查看变量/调用堆栈以及表达式求值等功能
   inspector: DebugInspector;
   # 是否处于调试模式?
   IsDebugging: boolean;
   # 当前的代码块嵌套深度
   stackDepth: integer;
}

        

.NET clr type reference tree

  1. use by property member breakpoints: BreakpointStore
  2. use by property member CurrentAction: DebugAction
  3. use by property member inspector: DebugInspector

[Package {$package} version {$version} Index]