File size: 1,529 Bytes
768b0bb
d350890
 
 
 
 
 
 
 
 
 
 
 
 
768b0bb
123d0d1
 
 
 
1b0dae9
 
 
 
123d0d1
1a163b2
1d3de83
123d0d1
17e3bdc
 
 
3f42fbe
8790ac2
31262e9
8790ac2
d32514c
8790ac2
 
 
 
04e939e
1d3de83
e454eb7
ff1ae87
77457b4
768b0bb
1d3de83
1b797a7
a6758d9
04e939e
c75775a
04e939e
768b0bb
7dd5442
04e939e
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
#![allow(non_snake_case)]
#![allow(clippy::missing_safety_doc)]
#![allow(clippy::too_many_arguments)]
// FFI code frequently casts pointers for clarity even when redundant
#![allow(clippy::unnecessary_cast)]
// Transmute annotations are verbose for FFI function pointer casts
#![allow(clippy::missing_transmute_annotations)]
// Clamp-like patterns in FFI init code often have subtly different semantics
#![allow(clippy::manual_clamp)]
// Complex types are common in FFI function pointer signatures
#![allow(clippy::type_complexity)]
// Doc formatting lints — not worth the churn
#![allow(clippy::empty_line_after_doc_comments)]
#![allow(clippy::doc_lazy_continuation)]

// Allow proc macros to reference `openwa_core::registry` even when
// invoked from within openwa-core itself (where the crate name is `crate`).
extern crate self as openwa_core;

// Re-export inventory so the define_addresses! macro can reference it
// from any crate that depends on openwa-core.
pub use inventory;

// Re-export derive macros so users write `use openwa_core::FieldRegistry;`
pub use openwa_derive::vtable;
pub use openwa_derive::FieldRegistry;

#[macro_use]
pub mod macros;

pub mod asset;
pub mod audio;
pub mod bitgrid;
pub mod engine;
pub mod frontend;
pub mod game;
pub mod input;
pub mod render;

pub mod address;
pub mod field_format;
pub mod fixed;
pub mod log;
pub mod mem;
pub mod rebase;
pub mod registry;
pub mod rng;
pub mod snapshot;
pub mod task;
pub mod trig;
pub mod vtable;
pub mod wa;
pub mod wa_alloc;
pub mod wa_call;