types.ts 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. export interface EcalAstNode {
  2. allowescapes: boolean;
  3. children: EcalAstNode[];
  4. id: number;
  5. identifier: boolean;
  6. line: number;
  7. linepos: number;
  8. name: string;
  9. pos: number;
  10. source: string;
  11. value: any;
  12. }
  13. export interface ThreadInspection {
  14. callStack: string[];
  15. callStackNode?: EcalAstNode[];
  16. callStackVsSnapshot?: Record<string, any>[];
  17. callStackVsSnapshotGlobal?: Record<string, any>[];
  18. threadRunning: boolean;
  19. code?: string;
  20. node?: EcalAstNode;
  21. vs?: Record<string, any>;
  22. vsGlobal?: Record<string, any>;
  23. }
  24. export interface ThreadStatus {
  25. callStack: string[];
  26. threadRunning?: boolean;
  27. }
  28. export interface DebugStatus {
  29. breakonstart: boolean;
  30. breakpoints: Record<string, boolean>;
  31. sources: string[];
  32. threads: Record<string, ThreadStatus>;
  33. }
  34. /**
  35. * Log output stream for this client.
  36. */
  37. export interface LogOutputStream {
  38. log(value: string): void;
  39. error(value: string): void;
  40. }
  41. export interface ClientBreakEvent {
  42. tid: number;
  43. inspection: ThreadInspection;
  44. }
  45. export enum ContType {
  46. Resume = "Resume",
  47. StepIn = "StepIn",
  48. StepOver = "StepOver",
  49. StepOut = "StepOut",
  50. }