|
106 | 106 | //!
|
107 | 107 | //! The following features can be enabled for this crate. All off them are off by default.
|
108 | 108 | //!
|
109 |
| -//! * **`formatted`** |
110 |
| -//! |
111 |
| -//! Format the generated bindings with `rustfmt`. This significantly increases initial compile times and is |
112 |
| -//! mostly useful when you actively contribute to the library and/or want to inspect generated files.<br><br> |
113 |
| -//! |
114 | 109 | //! * **`double-precision`**
|
115 | 110 | //!
|
116 | 111 | //! Use `f64` instead of `f32` for the floating-point type [`real`][type@builtin::real]. Requires Godot to be compiled with the
|
|
131 | 126 | //!
|
132 | 127 | //! * **`serde`**
|
133 | 128 | //!
|
134 |
| -//! Implement the [serde](https://docs.rs/serde) traits `Serialize` and `Deserialize` traits for certain built-in types. |
| 129 | +//! Implement the [serde](https://serde.rs/) traits `Serialize` and `Deserialize` traits for certain built-in types. |
135 | 130 | //! The serialized representation underlies **no stability guarantees** and may change at any time, even without a SemVer-breaking change.
|
136 | 131 | //! <br><br>
|
137 | 132 | //!
|
| 133 | +//! * **`lazy-function-tables`** |
| 134 | +//! |
| 135 | +//! Instead of loading all engine function pointers at startup, load them lazily on first use. This reduces startup time and RAM usage, but |
| 136 | +//! incurs additional overhead in each FFI call. Also, you lose the guarantee that once the library has booted, all function pointers are |
| 137 | +//! truly available. Function calls may thus panic only at runtime, possibly in deeply nested code paths. |
| 138 | +//! This feature is not yet thread-safe and can thus not be combined with `experimental-threads`.<br><br> |
| 139 | +//! |
| 140 | +//! * **`formatted`** |
| 141 | +//! |
| 142 | +//! Format the generated binding code with a custom-built formatter, which aims to strike a balance between runtime and human readability. |
| 143 | +//! rustfmt generates nice output, but it is unfortunately excessively slow across hundreds of Godot classes.<br><br> |
| 144 | +//! |
138 | 145 | //! * **`experimental-threads`**
|
139 | 146 | //!
|
140 | 147 | //! Experimental threading support. This enables `Send`/`Sync` traits for `Gd<T>` and makes the guard types `Gd`/`GdMut` aware of
|
141 | 148 | //! multi-threaded references. There safety aspects are not ironed out yet; there is a high risk of unsoundness at the moment.
|
142 |
| -//! As this evolves, it is very likely that the API becomes more strict. |
| 149 | +//! As this evolves, it is very likely that the API becomes more strict.<br><br> |
143 | 150 | //!
|
144 | 151 | //! * **`experimental-godot-api`**
|
145 | 152 | //!
|
146 | 153 | //! Access to `godot::engine` APIs that Godot marks "experimental". These are under heavy development and may change at any time.
|
147 |
| -//! If you opt in to this feature, expect breaking changes at compile and runtime. |
| 154 | +//! If you opt in to this feature, expect breaking changes at compile and runtime.<br><br> |
148 | 155 | //!
|
149 | 156 | //! * **`experimental-wasm`**
|
150 | 157 | //!
|
151 | 158 | //! Support for WebAssembly exports is still a work-in-progress and is not yet well tested. This feature is in place for users
|
152 |
| -//! to explicitly opt-in to any instabilities or rough edges that may result. |
153 |
| -//! |
154 |
| -//! * **`lazy-function-tables`** |
155 |
| -//! |
156 |
| -//! Instead of loading all engine function pointers at startup, load them lazily on first use. This reduces startup time and RAM usage, but |
157 |
| -//! incurs additional overhead in each FFI call. Also, you lose the guarantee that once the library has booted, all function pointers are |
158 |
| -//! truly available. Function calls may thus panic only at runtime, possibly in deeply nested code paths. |
159 |
| -//! This feature is not yet thread-safe and can thus not be combined with `experimental-threads`. |
| 159 | +//! to explicitly opt-in to any instabilities or rough edges that may result. Due to a limitation in Godot, it might currently not |
| 160 | +//! work Firefox browser.<br><br> |
160 | 161 | //!
|
161 | 162 | //! # Public API
|
162 | 163 | //!
|
|
0 commit comments