bevy_api_gen

Crates.iobevy_api_gen
lib.rsbevy_api_gen
version0.6.0
sourcesrc
created_at2022-08-03 00:09:00.469054
updated_at2024-04-04 16:03:52.395663
descriptionCode generator tool for bevy
homepage
repositoryhttps://github.com/makspll/bevy_mod_scripting
max_upload_size
id637647
size162,179
Maksymilian Mozolewski (makspll)

documentation

README

bevy_api_gen

This crate is a part of the "bevy_mod_scripting" workspace.

bevy_api_gen is a Cargo plugin that generates reflection-powered wrappers for Bevy types. It can list Reflect types in a workspace and perform arbitrary codegen using Tera templates.

Installation

To install bevy_api_gen, use the following command:

cargo +nightly-2024-01-24 install bevy_api_gen

Usage

Generate

To run the main codegen process, use the following command:

cargo +nightly-2024-01-24 bevy-api-gen generate

This will perform all parts of the process and generate meta as well as .rs files for each crate in your workspace in your /target/plugin-nightly-2024-01-24/bevy_api_gen directory

Collect

After generating all the files, you can 'collect' them in a mod.rs file like so:

cargo +nightly-2024-01-24 bevy-api-gen collect

List Types

To see a list of all Reflect implementing types in your workspace run:

cargo +nightly-2024-01-24 bevy-api-gen list-types > all_types.txt

List Templates

To see the list of all templates which you can override use:

cargo +nightly-2024-01-24 bevy-api-gen list-templates

Print Template

You can also print any of the templates to stdout:

cargo +nightly-2024-01-24 bevy-api-gen print item.tera
Commit count: 463

cargo fmt