MCPcopy Index your code
hub / github.com/microsoft/TypeChat / createProgramFromModuleText

Function createProgramFromModuleText

typescript/src/ts/validate.ts:112–130  ·  view source on GitHub ↗
(moduleText: string, oldProgram?: ts.Program)

Source from the content-addressed store, hash-verified

110 }
111
112 function createProgramFromModuleText(moduleText: string, oldProgram?: ts.Program) {
113 const fileMap = new Map([
114 createFileMapEntry("/lib.d.ts", libText),
115 createFileMapEntry("/schema.ts", schema),
116 createFileMapEntry("/json.ts", moduleText)
117 ]);
118 const host: ts.CompilerHost = {
119 getSourceFile: fileName => fileMap.get(fileName),
120 getDefaultLibFileName: () => "lib.d.ts",
121 writeFile: () => {},
122 getCurrentDirectory: () => "/",
123 getCanonicalFileName: fileName => fileName,
124 useCaseSensitiveFileNames: () => true,
125 getNewLine: () => "\n",
126 fileExists: fileName => fileMap.has(fileName),
127 readFile: fileName => "",
128 };
129 return ts.createProgram(Array.from(fileMap.keys()), options, host, oldProgram);
130 }
131
132 function createFileMapEntry(filePath: string, fileText: string): [string, ts.SourceFile] {
133 return [filePath, ts.createSourceFile(filePath, fileText, ts.ScriptTarget.Latest)];

Callers 2

validateFunction · 0.85

Calls 1

createFileMapEntryFunction · 0.85

Tested by

no test coverage detected