@thi.ng/wasm-api-bindgen
Version:
Polyglot bindings code generators (TS/JS, Zig, C11) for hybrid WebAssembly projects
32 lines • 1.22 kB
TypeScript
import { type CodeGenOpts, type ICodeGen, type TypeColl } from "./api.js";
export declare const DEFAULT_CODEGEN_OPTS: CodeGenOpts;
/**
* Takes a type collection and analyzes each analyzed to compute individual
* alignments and sizes.
*
* @remarks
* This function is idempotent and called automatically by
* {@link generateTypes}. Only exported for dev/debug purposes.
*
* @param coll
*
* @internal
*/
export declare const prepareTypes: (coll: TypeColl, opts: CodeGenOpts) => TypeColl;
/**
* Code generator main entry point. Takes an object of {@link TopLevelType}
* definitions, an actual code generator implementation for a single target
* language and (optional) global codegen options. Returns generated source code
* for all given types as a single string.
*
* @remarks
* Before actual code generation the types are first analyzed to compute their
* alignments and sizes. This is only ever done once (idempotent), even if
* `generateTypes()` is called multiple times for different target langs.
*
* @param coll
* @param codegen
* @param opts
*/
export declare const generateTypes: (coll: TypeColl, codegen: ICodeGen, opts?: Partial<CodeGenOpts>) => string;
//# sourceMappingURL=codegen.d.ts.map