tricu

An interpreted language for exploring Tree Calculus
Log | Files | Refs | README | LICENSE

compiler-protocol.ts (830B)


      1 import type { ImportPlan } from './import-plan.js';
      2 import type { RuntimeStats } from './runtime-backends.js';
      3 import type { OutputType } from './codecs.js';
      4 import type { RequestId, WorkerMessage } from './protocol.js';
      5 import type { LocalModuleInput } from './local-modules.js';
      6 export type CompilerClient = { type: 'compile'; source: unknown; environment?: string; localModules?: LocalModuleInput[] }
      7   | { type: 'export-module' }
      8   | { type: 'run'; export: string; arguments: unknown; expression?: string; output: OutputType; mode: 'pure' | 'io'; step: boolean }
      9   | { type: 'resume'; id: RequestId; value?: string };
     10 export type CompilerMessage = Exclude<WorkerMessage, { type: 'loaded' }>
     11   | { type: 'import-checked'; plan: ImportPlan }
     12   | { type: 'compiled'; names: string[]; stats: RuntimeStats; milliseconds: number };