treeSitterResolveWasmImport function

TreeSitterWasmResolvedImport? treeSitterResolveWasmImport(
  1. String importName
)

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;
}