Skip to content

Commit

Permalink
Merge pull request #349 from Deep-co-de/bevy_feature
Browse files Browse the repository at this point in the history
Allow dart messages to be easily handled as bevy events
  • Loading branch information
temeddix authored Jun 30, 2024
2 parents 584dcf4 + 03e898c commit ca89648
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 0 deletions.
1 change: 1 addition & 0 deletions documentation/docs/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,4 @@ rinf = { version = "0.0.0", features = ["feature-name"] }

- `rt-multi-thread`: Starts a worker thread for each CPU core available on the system within the `tokio` runtime by enabling its `rt-multi-thread` feature. By default, the `tokio` runtime uses only one thread. Enabling this feature allows the `tokio` runtime to utilize all the cores on your computer. This feature does not affect applications on the web platform.
- `show-backtrace`: Prints the full backtrace in the CLI when a panic occurs in debug mode. In general, backtrace is not very helpful when debugging async apps, so consider using [`tracing`](https://crates.io/crates/tracing) for logging purposes. Note that this feature does not affect debugging on the web platform.
- `bevy`: Implements the `Event` trait from `bevy_ecs` for `DartSignal`, allowing Bevy's entity component system to listen for events from Dart.
4 changes: 4 additions & 0 deletions rust_crate/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,10 @@ rust-version = "1.70"
[features]
rt-multi-thread = ["tokio/rt-multi-thread"]
show-backtrace = ["backtrace"]
bevy = ["bevy_ecs"]

[dependencies]
bevy_ecs = { version = "0.13", optional = true }

[target.'cfg(not(target_family = "wasm"))'.dependencies]
os-thread-local = "0.1.3"
Expand Down
1 change: 1 addition & 0 deletions rust_crate/src/interface.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ use super::interface_web::*;
/// Optionally, a custom binary called `binary` can also be included.
/// This type is generic, and the message
/// can be of any type declared in Protobuf.
#[cfg_attr(feature = "bevy", derive(bevy_ecs::event::Event))]
pub struct DartSignal<T> {
/// The message instance of a struct generated by Protobuf.
pub message: T,
Expand Down

0 comments on commit ca89648

Please sign in to comment.