treeSitterResolveWasmImport function
Resolves an import using wasm_store.c's pinned name_eq behavior.
The C helper compares only the module-provided name length, so a non-empty prefix is accepted. Empty names are rejected by the instantiation loop.
Implementation
TreeSitterWasmResolvedImport? treeSitterResolveWasmImport(String importName) {
if (importName.isEmpty) return null;
for (final canonical in treeSitterWasmBuiltinImports) {
if (canonical.startsWith(importName)) {
return TreeSitterWasmResolvedImport(
TreeSitterWasmImportSource.builtin,
canonical,
);
}
}
for (final canonical in _wasmStdlibSymbols) {
if (canonical.startsWith(importName)) {
return TreeSitterWasmResolvedImport(
TreeSitterWasmImportSource.stdlib,
canonical,
);
}
}
return null;
}