17 releases (10 breaking)

0.10.0 Nov 15, 2024
0.8.0 May 27, 2024
0.4.2 Mar 26, 2024
0.1.0 Dec 8, 2023
0.0.1 Nov 10, 2023

#289 in Rust patterns

Download history 30231/week @ 2024-09-16 33650/week @ 2024-09-23 37240/week @ 2024-09-30 42848/week @ 2024-10-07 41605/week @ 2024-10-14 47229/week @ 2024-10-21 38300/week @ 2024-10-28 55124/week @ 2024-11-04 42916/week @ 2024-11-11 38636/week @ 2024-11-18 40656/week @ 2024-11-25 34604/week @ 2024-12-02 41232/week @ 2024-12-09 32338/week @ 2024-12-16 9380/week @ 2024-12-23 15962/week @ 2024-12-30

101,442 downloads per month
Used in 45 crates (3 directly)

Apache-2.0

205KB
4.5K SLoC

scale-typegen

A library based on scale-info to transpile portable registries of types into rust type definitions. This library exposes a TypeGenerator struct which wants to be given two things:

  • a scale_info::PortableRegistry containing the type information for the types that will be transpiled.
  • a TypeGeneratorSettings defining how the code generation happens: What derives and attributes that are applied, substitutes for types, if docs should be generated as well, (..).

It exposes a generate_types_mod() function that creates an intermediate representation of a module (ModuleIR) that contains types and other modules. It can be directly converted to rust code via to_token_stream().


lib.rs:

A library based on scale-info to transpile portable registries of types into rust type definitions.

Dependencies

~3.5MB
~78K SLoC