flecs_ecs 0.2.2

Rust API for the C/CPP flecs ECS library <https://github.com/SanderMertens/flecs>
Documentation
[[bench]]
harness = false
name = "main"
path = "benches/flecs/_main.rs"

[dependencies.bitflags]
version = "2.10.0"

[dependencies.compact_str]
default-features = false
version = "0.9.0"

[dependencies.flecs_ecs_derive]
version = "0.2.0"

[dependencies.flecs_ecs_sys]
default-features = false
features = ["flecs_meta_c"]
version = "0.2.1"

[dependencies.hashbrown]
version = "0.16.0"

[dependencies.libc]
version = "0.2.177"

[dependencies.smallvec]
version = "1.15.1"

[dev-dependencies.criterion]
version = "0.7.0"

[dev-dependencies.ctor]
version = "0.6.0"

[dev-dependencies.insta]
features = ["yaml", "filters"]
version = "1.43.2"

[dev-dependencies.libc]
version = "0.2.175"

[dev-dependencies.rand]
version = "0.9.2"

[dev-dependencies.rstest]
version = "0.26.1"

[dev-dependencies.rstest_reuse]
version = "0.7.0"

[dev-dependencies.seq-macro]
version = "0.3.6"

[[example]]
doc-scrape-examples = true
name = "examples"
path = "examples/flecs/z_ignore_main_test.rs"
test = true

[features]
default = ["flecs_base", "flecs_script", "flecs_stats", "flecs_metrics", "flecs_alerts", "flecs_meta", "flecs_units", "flecs_json", "flecs_doc", "flecs_log", "flecs_app", "flecs_http", "flecs_rest", "flecs_query_rust_traits"]
flecs_alerts = ["flecs_ecs_sys/flecs_alerts", "flecs_pipeline", "flecs_metrics", "flecs_timer"]
flecs_app = ["flecs_ecs_sys/flecs_app", "flecs_pipeline"]
flecs_base = ["flecs_ecs_sys/flecs_base", "std", "flecs_module", "flecs_system", "flecs_pipeline", "flecs_timer", "flecs_os_api_impl", "flecs_safety_locks"]
flecs_default_to_uncached_queries = ["flecs_ecs_sys/flecs_default_to_uncached_queries"]
flecs_disable_build_c = ["flecs_ecs_sys/disable_build_c"]
flecs_doc = ["flecs_ecs_sys/flecs_doc", "flecs_module"]
flecs_force_build_debug_c = ["flecs_ecs_sys/force_build_debug"]
flecs_force_build_release_c = ["flecs_ecs_sys/force_build_release"]
flecs_force_enable_ecs_asserts = ["flecs_ecs_sys/flecs_force_enable_ecs_asserts"]
flecs_http = ["flecs_ecs_sys/flecs_http"]
flecs_journal = ["flecs_ecs_sys/flecs_journal", "flecs_log"]
flecs_json = ["flecs_ecs_sys/flecs_json", "flecs_meta"]
flecs_log = ["flecs_ecs_sys/flecs_log"]
flecs_manual_registration = []
flecs_meta = ["flecs_ecs_sys/flecs_meta", "flecs_ecs_derive/flecs_meta", "flecs_module"]
flecs_metrics = ["flecs_ecs_sys/flecs_metrics", "flecs_meta", "flecs_units", "flecs_pipeline"]
flecs_module = ["flecs_ecs_sys/flecs_module"]
flecs_nightly_tests = []
flecs_os_api_impl = ["flecs_ecs_sys/flecs_os_api_impl"]
flecs_perf_trace = ["flecs_ecs_sys/flecs_perf_trace"]
flecs_pipeline = ["flecs_ecs_sys/flecs_pipeline", "flecs_module", "flecs_system"]
flecs_query_rust_traits = ["flecs_ecs_derive/flecs_query_rust_traits"]
flecs_regenerate_binding = ["flecs_ecs_sys/regenerate_binding"]
flecs_rest = ["flecs_ecs_sys/flecs_rest", "flecs_http", "flecs_json", "flecs_pipeline"]
flecs_rust_no_enum_reflection = []
flecs_safety_locks = ["flecs_ecs_sys/flecs_safety_locks"]
flecs_script = ["flecs_ecs_sys/flecs_script", "flecs_meta", "flecs_doc", "flecs_module"]
flecs_stats = ["flecs_ecs_sys/flecs_stats", "flecs_pipeline", "flecs_timer", "flecs_module"]
flecs_system = ["flecs_ecs_sys/flecs_system", "flecs_module"]
flecs_term_count_64 = ["flecs_ecs_sys/flecs_term_count_64"]
flecs_timer = ["flecs_ecs_sys/flecs_timer", "flecs_module", "flecs_pipeline"]
flecs_units = ["flecs_ecs_sys/flecs_units", "flecs_module", "flecs_meta"]
flecs_use_os_alloc = ["flecs_ecs_sys/use_os_alloc"]
std = ["flecs_ecs_derive/std", "compact_str/std"]

[lib]
bench = false
name = "flecs_ecs"
path = "src/lib.rs"

[lints.clippy]
alloc_instead_of_core = "warn"
doc_markdown = "warn"
float_cmp = "warn"
float_cmp_const = "warn"
manual_let_else = "warn"
print_stderr = "warn"
print_stdout = "warn"
redundant_closure_for_method_calls = "warn"
redundant_else = "warn"
semicolon_if_nothing_returned = "warn"
std_instead_of_alloc = "warn"
std_instead_of_core = "warn"
too_many_arguments = "allow"
unwrap_or_default = "warn"

[lints.rust]
unused_lifetimes = "warn"

[package]
authors = ["Indra de Backere <debackere.indra@gmail.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["game-development", "api-bindings", "simulation", "data-structures"]
description = "Rust API for the C/CPP flecs ECS library <https://github.com/SanderMertens/flecs>"
edition = "2024"
exclude = ["assets/"]
keywords = ["ecs", "flecs", "ECS", "game-development", "gamedev"]
license = "MIT"
name = "flecs_ecs"
readme = "README.md"
repository = "https://github.com/Indra-db/Flecs-Rust"
resolver = "2"
rust-version = "1.88"
version = "0.2.2"

[package.metadata.docs.rs]
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
rustdoc-args = ["-Zunstable-options", "--generate-link-to-definition"]

[target.wasm32-unknown-unknown.dev-dependencies.getrandom]
features = ["wasm_js"]
version = "0.3.3"

[[test]]
name = "docs"
path = "tests/docs/main.rs"

[[test]]
name = "ecs_os_api"
path = "tests/ecs_os_api/main.rs"

[[test]]
name = "flecs"
path = "tests/flecs/main.rs"