mlld
Version:
mlld: llm scripting language
1 lines • 1.84 kB
Source Map (JSON)
{"version":3,"sources":["../interpreter/eval/code-execution.ts"],"names":[],"mappings":";;;AAcA,eAAsB,qBAAA,CACpB,MACA,GACqB,EAAA;AACrB,EAAM,MAAA,EAAE,QAAU,EAAA,IAAA,EAAS,GAAA,IAAA;AAI3B,EAAA,MAAM,MAAS,GAAA,MAAM,GAAI,CAAA,WAAA,CAAY,MAAM,QAAQ,CAAA;AAInD,EAAA,IAAI,CAAC,QAAY,IAAA,QAAA,KAAa,QAAQ,QAAa,KAAA,MAAA,IAAU,aAAa,OAAS,EAAA;AACjF,IAAA,MAAM,EAAE,oBAAA,EAAyB,GAAA,MAAM,OAAO,iCAAqC,CAAA;AACnF,IAAM,MAAA,SAAA,GAAY,qBAAqB,MAAM,CAAA;AAC7C,IAAO,OAAA,EAAE,KAAO,EAAA,SAAA,EAAW,GAAI,EAAA;AAAA;AAGjC,EAAO,OAAA,EAAE,KAAO,EAAA,MAAA,EAAQ,GAAI,EAAA;AAC9B;AAnBsB,MAAA,CAAA,qBAAA,EAAA,uBAAA,CAAA","file":"code-execution-6K2WXUUQ.mjs","sourcesContent":["import type { Environment } from '../env/Environment';\nimport type { EvalResult } from '../core/interpreter';\n\ninterface CodeExecutionNode {\n type: 'code';\n language: string;\n code: string;\n hasRunKeyword?: boolean;\n}\n\n/**\n * Evaluate code execution nodes (from /var RHS)\n * Delegates to environment's executeCode method which uses proper executors\n */\nexport async function evaluateCodeExecution(\n node: CodeExecutionNode,\n env: Environment\n): Promise<EvalResult> {\n const { language, code } = node;\n \n // Delegate to environment's executeCode method which uses the proper executor\n // This ensures we use VM for Node.js, AsyncFunction for JS, etc.\n const result = await env.executeCode(code, language);\n \n // Apply automatic JSON parsing for shell commands that return JSON\n // (JavaScript/Node/Python executors handle their own return types)\n if (!language || language === 'sh' || language === 'bash' || language === 'shell') {\n const { processCommandOutput } = await import('@interpreter/utils/json-auto-parser');\n const processed = processCommandOutput(result);\n return { value: processed, env };\n }\n \n return { value: result, env };\n}"]}