MCPcopy Index your code
hub / github.com/CodeGraphContext/CodeGraphContext / loadModule

Function loadModule

website/public/wasm/web-tree-sitter.js:2269–2411  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

2267 var loadWebAssemblyModule = /* @__PURE__ */ __name((binary, flags, libName, localScope, handle) => {
2268 var metadata = getDylinkMetadata(binary);
2269 function loadModule() {
2270 var memAlign = Math.pow(2, metadata.memoryAlign);
2271 var memoryBase = metadata.memorySize ? alignMemory(getMemory(metadata.memorySize + memAlign), memAlign) : 0;
2272 var tableBase = metadata.tableSize ? wasmTable.length : 0;
2273 if (handle) {
2274 HEAP8[handle + 8] = 1;
2275 LE_HEAP_STORE_U32((handle + 12 >> 2) * 4, memoryBase);
2276 LE_HEAP_STORE_I32((handle + 16 >> 2) * 4, metadata.memorySize);
2277 LE_HEAP_STORE_U32((handle + 20 >> 2) * 4, tableBase);
2278 LE_HEAP_STORE_I32((handle + 24 >> 2) * 4, metadata.tableSize);
2279 }
2280 if (metadata.tableSize) {
2281 wasmTable.grow(metadata.tableSize);
2282 }
2283 var moduleExports;
2284 function resolveSymbol(sym) {
2285 var resolved = resolveGlobalSymbol(sym).sym;
2286 if (!resolved && localScope) {
2287 resolved = localScope[sym];
2288 }
2289 if (!resolved) {
2290 resolved = moduleExports[sym];
2291 }
2292 return resolved;
2293 }
2294 __name(resolveSymbol, "resolveSymbol");
2295 var proxyHandler = {
2296 get(stubs, prop) {
2297 switch (prop) {
2298 case "__memory_base":
2299 return memoryBase;
2300 case "__table_base":
2301 return tableBase;
2302 }
2303 if (prop in wasmImports && !wasmImports[prop].stub) {
2304 var res = wasmImports[prop];
2305 return res;
2306 }
2307 if (!(prop in stubs)) {
2308 var resolved;
2309 stubs[prop] = (...args2) => {
2310 resolved ||= resolveSymbol(prop);
2311 return resolved(...args2);
2312 };
2313 }
2314 return stubs[prop];
2315 }
2316 };
2317 var proxy = new Proxy({}, proxyHandler);
2318 currentModuleWeakSymbols = metadata.weakImports;
2319 var info = {
2320 "GOT.mem": new Proxy({}, GOTHandler),
2321 "GOT.func": new Proxy({}, GOTHandler),
2322 "env": proxy,
2323 "wasi_snapshot_preview1": proxy
2324 };
2325 function postInstantiation(module, instance) {
2326 updateTableMap(tableBase, metadata.tableSize);

Callers 2

loadWebAssemblyModuleMethod · 0.70
Module2Function · 0.70

Calls 2

__nameFunction · 0.85
postInstantiationFunction · 0.85

Tested by

no test coverage detected