dylo-cli

Crates.iodylo-cli
lib.rsdylo-cli
version
sourcesrc
created_at2024-12-05 19:30:47.560784
updated_at2024-12-06 18:07:49.916297
descriptionGenerate dyn-compatible traits with proc macros
homepage
repositoryhttps://github.com/bearcove/dylo
max_upload_size
id1473537
Cargo.toml error:TOML parse error at line 19, column 1 | 19 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include`
size0
Amos Wenger (fasterthanlime)

documentation

README

license: MIT/Apache-2.0 crates.io docs.rs

dylo-runtime

dylo-runtime generates the consumer crates corresponding to module implementation crates marked with #[dylo::export] attributes. This tool scans the workspace for crates starting with mod- and generates corresponding con- crates that contain just the trait definitions and public interfaces.

Installation

cargo install dylo-runtime

Note that dylo-runtime needs rustfmt to be present at runtime.

Usage

The CLI expects to be run from the root of a Cargo workspace containing mod crates. It will:

  1. Find all crates prefixed with mod-
  2. Generate corresponding con- crates with trait definitions
  3. Add spec files to the original mod crates
  4. Verify compilation of generated consumer crates

Basic usage:

con

Options:

  • --force: Force regeneration of all consumer crates
  • --mod <NAME>: Only process the specified mod
  • -h, --help: Print help information

By default, changes are only made if the source mod crates have been modified more recently than their generated consumer crates.

con annotations, exporting interfaces etc.

For how to write con-friendly code, see the documentation of the con crate

Commit count: 34

cargo fmt