Skip to main content

Crate ts_gen

Crate ts_gen 

Source
Expand description

ts-gen: Generate wasm-bindgen Rust bindings from TypeScript .d.ts files.

This crate provides both a library API and a CLI tool for converting TypeScript declaration files into Rust #[wasm_bindgen] extern blocks.

§Pipeline

.d.ts files
  → oxc_parser (AST)
  → First Pass phase 1: collect all type names into TypeRegistry
  → First Pass phase 2: populate full IR (resolve references, merge var+interface patterns)
  → Assembly: group by ModuleContext, resolve inheritance chains, classify types
  → Code Generation: IR → syn::File → prettyplease → .rs files

Modules§

codegen
Code generation: IR → Rust source code.
context
Global context: owns all arenas and provides the central data store for the entire parse → codegen pipeline.
external_map
External type mapping: resolve imported types to Rust paths.
ir
Intermediate Representation for TypeScript declarations.
parse
Parser orchestration: parse .d.ts files into IR.
util

Functions§

parse
Parse .d.ts files and return the module + global context.
parse_source
Parse a single .d.ts source string and return the module + global context.