1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
//! The script addon enables loading and executing Flecs scripts.
//!
//! Flecs script is a declarative language for defining entities, components, systems,
//! and other ECS constructs. Scripts provide a convenient way to initialize worlds,
//! configure entities, and set up game data without recompiling.
//!
//! # Features
//!
//! - **Declarative Syntax**: Define entities and components using a simple text format
//! - **Runtime Loading**: Load and execute scripts at runtime
//! - **Template Support**: Use templates and prefabs in scripts
//! - **Expression Evaluation**: Evaluate expressions within scripts
//!
//! # Example
//!
//! ```no_run
//! use flecs_ecs::prelude::*;
//!
//! let world = World::new();
//!
//! // Load a Flecs script
//! world.script()
//! .build_from_code(
//! r#"
//! Position {
//! x: f32,
//! y: f32
//! }
//!
//! entity {
//! Position: {10, 20}
//! }
//! "#
//! );
//! ```
//!
//! For more comprehensive script examples, see the [`examples/flecs/script/`] directory
//! in the repository, which includes:
//! - `hello_world.flecs` - Basic script example
//! - `prefabs.flecs` - Using prefabs in scripts
//! - `reflection.flecs` - Component reflection examples
//! - `expressions.flecs` - Expression evaluation examples
//!
//! [`examples/flecs/script/`]: https://github.com/Indra-db/Flecs-Rust/tree/main/flecs_ecs/examples/flecs/flecs/script
//!
//! # See also
//!
//! - [`World::script()`](crate::core::World::script) - Execute a Flecs script
//! - [Flecs Script Manual](https://www.flecs.dev/flecs/md_docs_2FlecsScript.html)
//! - [Flecs Script Tutorial](https://www.flecs.dev/flecs/flecsscripttutorial.html)
pub use *;
pub use *;
pub use *;
extern crate std;
extern crate alloc;