diff --git a/Cargo.toml b/Cargo.toml index 5dd7d3d46a..4e52dea19a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -151,51 +151,51 @@ bevy_mod_scripting_world = { path = "crates/bevy_mod_scripting_world", version = # bevy -bevy = { version = "0.18", default-features = false } -bevy_math = { version = "0.18", default-features = false, features = ["std"] } -bevy_transform = { version = "0.18", default-features = false } -bevy_reflect = { version = "0.18", default-features = false } -bevy_ecs = { version = "0.18", default-features = false } -bevy_asset = { version = "0.18", default-features = false } -bevy_app = { version = "0.18", default-features = false } -bevy_log = { version = "0.18", default-features = false } -bevy_internal = { version = "0.18", default-features = false } -bevy_diagnostic = { version = "0.18", default-features = false } -bevy_platform = { version = "0.18", default-features = false } -bevy_time = { version = "0.18", default-features = false } -bevy_input = { version = "0.18", default-features = false } -bevy_a11y = { version = "0.18", default-features = false, features = [ +bevy = { version = "0.19", default-features = false } +bevy_math = { version = "0.19", default-features = false, features = ["std"] } +bevy_transform = { version = "0.19", default-features = false } +bevy_reflect = { version = "0.19", default-features = false } +bevy_ecs = { version = "0.19", default-features = false } +bevy_asset = { version = "0.19", default-features = false } +bevy_app = { version = "0.19", default-features = false } +bevy_log = { version = "0.19", default-features = false } +bevy_internal = { version = "0.19", default-features = false } +bevy_diagnostic = { version = "0.19", default-features = false } +bevy_platform = { version = "0.19", default-features = false } +bevy_time = { version = "0.19", default-features = false } +bevy_input = { version = "0.19", default-features = false } +bevy_a11y = { version = "0.19", default-features = false, features = [ "std", "bevy_reflect", ] } -bevy_animation = { version = "0.18", default-features = false } -bevy_color = { version = "0.18", default-features = false, features = [ +bevy_animation = { version = "0.19", default-features = false } +bevy_color = { version = "0.19", default-features = false, features = [ "std", "bevy_reflect", ] } -bevy_core_pipeline = { version = "0.18", default-features = false } -bevy_gizmos = { version = "0.18", default-features = false } -bevy_gltf = { version = "0.18", default-features = false } -bevy_image = { version = "0.18", default-features = false, features = [ +bevy_core_pipeline = { version = "0.19", default-features = false } +bevy_gizmos = { version = "0.19", default-features = false } +bevy_gltf = { version = "0.19", default-features = false } +bevy_image = { version = "0.19", default-features = false, features = [ "bevy_reflect", ] } -bevy_input_focus = { version = "0.18", default-features = false, features = [ +bevy_input_focus = { version = "0.19", default-features = false, features = [ "std", "bevy_reflect", ] } -bevy_mesh = { version = "0.18", default-features = false } -bevy_pbr = { version = "0.18", default-features = false } -bevy_picking = { version = "0.18", default-features = false } -bevy_render = { version = "0.18", default-features = false } -bevy_scene = { version = "0.18", default-features = false } -bevy_sprite = { version = "0.18", default-features = false } -bevy_text = { version = "0.18", default-features = false } -bevy_window = { version = "0.18", default-features = false, features = [ +bevy_mesh = { version = "0.19", default-features = false } +bevy_pbr = { version = "0.19", default-features = false } +bevy_picking = { version = "0.19", default-features = false } +bevy_render = { version = "0.19", default-features = false } +bevy_scene = { version = "0.19", default-features = false } +bevy_sprite = { version = "0.19", default-features = false } +bevy_text = { version = "0.19", default-features = false } +bevy_window = { version = "0.19", default-features = false, features = [ "bevy_reflect", "std", ] } -bevy_winit = { version = "0.18", default-features = false } -bevy_utils = { version = "0.18", default-features = false, features = ["std"] } +bevy_winit = { version = "0.19", default-features = false } +bevy_utils = { version = "0.19", default-features = false, features = ["std"] } glam = { version = "0.30.10", default-features = false } uuid = { version = "1.13", default-features = false } @@ -216,7 +216,7 @@ parking_lot = { version = "0.12.1", default-features = false } strum = { version = "0.26", default-features = false } rhai = { version = "1.21", default-features = false } mlua = { version = "0.11", default-features = false } -log = { version = "0.4", default-features = false } +log = { version = "0.4.33", default-features = false } env_logger = { version = "0.11", default-features = false } clap = { version = "4", default-features = false, features = ["std"] } mdbook-preprocessor = { version = "0.5", default-features = false } @@ -237,7 +237,7 @@ pretty_assertions = { version = "1.4", default-features = false, features = [ manifest-dir-macros = { version = "0.1.18", default-features = false } assert_cmd = { version = "2.1", default-features = false } tokio = { version = "1", default-features = false } -bevy_console = { version = "0.17.1", default-features = false } +bevy_console = { git="https://github.com/makspll/bevy-console", default-features = false } tracing-tracy = { version = "0.11", default-features = false } libtest-mimic = { version = "0.8", default-features = false } criterion = { version = "0.5", default-features = false } diff --git a/assets/scripts/game_of_life.lua b/assets/scripts/game_of_life.lua index 49a2ce4d21..b6e4e253d1 100644 --- a/assets/scripts/game_of_life.lua +++ b/assets/scripts/game_of_life.lua @@ -1,7 +1,7 @@ LifeState = world.get_type_by_name("LifeState") Settings = world.get_type_by_name("Settings") -info("Lua: The game_of_life.lua script just got loaded") +log_warn("Lua: The game_of_life.lua script just got loaded") math.randomseed(os.time()) function fetch_life_state() @@ -11,8 +11,8 @@ function fetch_life_state() end function on_script_loaded() - info("Lua: Hello! I am initiating the game of life simulation state with randomness!") - info("Lua: Click on the screen to set cells alive after running the `gol start` command") + log_warn("Lua: Hello! I am initiating the game of life simulation state with randomness!") + log_warn("Lua: Click on the screen to set cells alive after running the `gol start` command") local life_state = fetch_life_state() @@ -27,12 +27,10 @@ end function on_click(x, y) -- get the settings - info("Lua: Clicked at x: " .. x .. " y: " .. y) + log_warn("Lua: Clicked at x: " .. x .. " y: " .. y) local life_state = fetch_life_state() local cells = life_state.cells - local settings = world.get_resource(Settings) - local dimensions = settings.physical_grid_dimensions local screen = settings.display_grid_dimensions @@ -42,11 +40,14 @@ function on_click(x, y) local screen_x = screen[1] local screen_y = screen[2] + local cell_width = screen_x / dimension_x local cell_height = screen_y / dimension_y local cell_x = math.floor(x / cell_width) local cell_y = math.floor(y / cell_height) + print(x, y) + print(screen_x, screen_y) local index = (cell_y * dimension_x) + cell_x @@ -110,7 +111,7 @@ function on_update() end function on_script_unloaded() - info("Lua: I am being unloaded, goodbye!") + log_warn("Lua: I am being unloaded, goodbye!") -- set state to 0's local life_state = fetch_life_state() diff --git a/check.ps1 b/check.ps1 index d35ceac565..d9c0af6465 100644 --- a/check.ps1 +++ b/check.ps1 @@ -1,16 +1,15 @@ -#!/bin/bash -WORKSPACE_DIR="$PWD" +$WORKSPACE_DIR = Get-Location -cd "$(dirname "$0")" -# if the path is in /bevy_api_gen then we run the codegen check +Set-Location $PSScriptRoot -if [[ "$WORKSPACE_DIR" == *"/bevy_api_gen"* ]]; then - # save output to file as well as stdout and stderr +if ($WORKSPACE_DIR -like "*\codegen*") { cargo xtask check --ide-mode --kind codegen -elif [[ "$WORKSPACE_DIR" == *"/xtask"* ]]; then - cd "$WORKSPACE_DIR" - cargo clippy --workspace --message-format=json --all-targets -- -D warnings -else - cd "$WORKSPACE_DIR" - cargo xtask check --ide-mode --kind main -fi \ No newline at end of file +} +elseif ($WORKSPACE_DIR -like "*\xtask*") { + Set-Location $WORKSPACE_DIR + cargo check --quiet --workspace --message-format=json --all-targets +} +else { + Set-Location $WORKSPACE_DIR + cargo xtask check --ide-mode --kind main +} \ No newline at end of file diff --git a/codegen/Cargo.bootstrap.toml b/codegen/Cargo.bootstrap.toml index 301eb863f2..fdeae3d30c 100644 --- a/codegen/Cargo.bootstrap.toml +++ b/codegen/Cargo.bootstrap.toml @@ -6,7 +6,7 @@ edition = "2024" [dependencies] bevy_mod_scripting_bindings = { path = "{{BMS_BINDINGS_PATH}}" } -bevy_reflect = { version = "0.18", features = [ +bevy_reflect = { version = "0.19", features = [ "smol_str", "glam", "petgraph", diff --git a/codegen/Cargo.toml b/codegen/Cargo.toml index f80a2dab8d..df71d45c4a 100644 --- a/codegen/Cargo.toml +++ b/codegen/Cargo.toml @@ -16,11 +16,12 @@ include = [ ] [workspace] -members = ["crates/crate_feature_graph"] +members = ["crates/bevy_mod_scripting_rustc_driver","crates/bevy_mod_scripting_rustc_utils","crates/crate_feature_graph", "crates/test_crates/rust_lib_tests"] exclude = [ "crates/test_crates/workspace/root", "crates/test_crates/workspace/crate_a", "crates/test_crates/workspace/crate_b", + "crates/test_crates/**" ] [[bin]] @@ -44,12 +45,16 @@ rustc_private = true [workspace.dependencies] crate_feature_graph = { path = "crates/crate_feature_graph", version = "0.1" } +bevy_mod_scripting_rustc_utils = { path = "crates/bevy_mod_scripting_rustc_utils", version = "0.1" } +bevy_mod_scripting_rustc_driver = { path = "crates/bevy_mod_scripting_rustc_driver", version = "0.1" } + +assert_cmd = { version = "2.1", default-features = false } petgraph = { version = "0.8" } log = "0.4" env_logger = "0.11" pretty_env_logger = "0.4" indexmap = "2" -cargo_metadata = "0.18" +cargo_metadata = "0.23" serde_json = "1" serde = "1" clap = { version = "4", features = ["derive", "string"] } @@ -65,6 +70,9 @@ pretty_assertions = "1.3" [dependencies] crate_feature_graph = { workspace = true, features = ["dot_parser", "serde"] } +bevy_mod_scripting_rustc_driver = { workspace = true } +bevy_mod_scripting_rustc_utils = { workspace = true } + clap = { workspace = true } tera = { workspace = true } strum = { workspace = true } @@ -82,5 +90,4 @@ prettyplease = { workspace = true } convert_case = { workspace = true } chrono = { workspace = true } -[build-dependencies] -toml = "0.8" + diff --git a/codegen/crates/bevy_mod_scripting_rustc_driver/Cargo.toml b/codegen/crates/bevy_mod_scripting_rustc_driver/Cargo.toml new file mode 100644 index 0000000000..9fdf836ef9 --- /dev/null +++ b/codegen/crates/bevy_mod_scripting_rustc_driver/Cargo.toml @@ -0,0 +1,16 @@ +[package] +name = "bevy_mod_scripting_rustc_driver" +version = "0.1.0" +edition = "2024" + +[package.metadata.rust-analyzer] +rustc_private = true + +[dependencies] +cargo_metadata = { workspace = true } +serde = { workspace = true } +serde_json = { workspace = true } +log = { workspace = true } + +[build-dependencies] +toml = "0.8" \ No newline at end of file diff --git a/codegen/build.rs b/codegen/crates/bevy_mod_scripting_rustc_driver/build.rs similarity index 96% rename from codegen/build.rs rename to codegen/crates/bevy_mod_scripting_rustc_driver/build.rs index cee5f6012f..79c2dadb2c 100644 --- a/codegen/build.rs +++ b/codegen/crates/bevy_mod_scripting_rustc_driver/build.rs @@ -27,7 +27,7 @@ fn target_libdir(rustc: &Path) -> PathBuf { pub fn main() { // Use to set RUSTC_CHANNEL so we can compute target dir from rustc_plugin - let toolchain_toml = include_str!("rust-toolchain.toml"); + let toolchain_toml = include_str!("../../rust-toolchain.toml"); let toolchain_table = toolchain_toml.parse::().unwrap(); let toolchain = toolchain_table["toolchain"].as_table().unwrap(); let channel = toolchain["channel"].as_str().unwrap(); diff --git a/codegen/src/driver/mod.rs b/codegen/crates/bevy_mod_scripting_rustc_driver/src/lib.rs similarity index 87% rename from codegen/src/driver/mod.rs rename to codegen/crates/bevy_mod_scripting_rustc_driver/src/lib.rs index 3ad259c229..a9ba6508c3 100644 --- a/codegen/src/driver/mod.rs +++ b/codegen/crates/bevy_mod_scripting_rustc_driver/src/lib.rs @@ -1,13 +1,19 @@ +#![feature(rustc_private)] +#![deny(rustc::internal)] + //! The module dealing with how the CLI interacts with each instantiation of the //! plugin across the workspace. mod plugin; +extern crate rustc_session; +extern crate rustc_driver; +extern crate rustc_driver_impl; use std::{ env, ops::Deref, path::{Path, PathBuf}, - process::{Command, Stdio, exit}, + process::{Command, ExitCode, Stdio, exit}, }; use cargo_metadata::{Metadata, camino::Utf8PathBuf}; @@ -17,6 +23,8 @@ use rustc_session::{EarlyDiagCtxt, config::ErrorOutputType}; pub const CRATES_TO_RUN_PLUGIN_ON_ENV: &str = "CRATES_TO_RUN_PLUGIN_ON"; pub const CARGO_VERBOSE: &str = "CARGO_VERBOSE"; pub const WORKSPACE_GRAPH_FILE_ENV: &str = "WORKSPACE_GRAPH_FILE"; +/// The rustc toolchain this crate was built with and needs to work with +pub const CHANNEL: &str = env!("RUSTC_CHANNEL"); pub fn fetch_target_directory(metadata: &Metadata) -> Utf8PathBuf { let plugin_subdir = format!("plugin-{}", crate::CHANNEL); @@ -58,7 +66,7 @@ pub fn cli_main(plugin: T, include_crates: Vec, metadata cmd.env(CRATES_TO_RUN_PLUGIN_ON_ENV, include_crates.join(",")); - let args_str = serde_json::to_string(&args.args).unwrap(); + let args_str = serde_json::to_string::>(&args).unwrap(); log::debug!("{PLUGIN_ARGS}={args_str}"); cmd.env(PLUGIN_ARGS, args_str); @@ -69,6 +77,21 @@ pub fn cli_main(plugin: T, include_crates: Vec, metadata exit(exit_status.code().unwrap_or(-1)); } + +pub fn copy_command_without_args( + cmd: &std::process::Command, + arg_filter: &[&str], +) -> std::process::Command { + let mut new_cmd = std::process::Command::new(cmd.get_program()); + new_cmd.args( + cmd.get_args() + .filter(|a| !arg_filter.iter().any(|f| f == a)), + ); + new_cmd.envs(cmd.get_envs().filter_map(|(a, b)| b.map(|b| (a, b)))); + new_cmd +} + + // use std::{ // env, // ops::Deref, @@ -169,18 +192,18 @@ struct DefaultCallbacks; impl rustc_driver::Callbacks for DefaultCallbacks {} /// The top-level function that should be called by your internal driver binary. -pub fn driver_main(plugin: T) { +pub fn driver_main(plugin: T) -> ExitCode { let early_dcx = EarlyDiagCtxt::new(ErrorOutputType::default()); rustc_driver::init_rustc_env_logger(&early_dcx); - exit(rustc_driver::catch_with_exit_code(move || { + rustc_driver::catch_with_exit_code(move || { let mut orig_args: Vec = env::args().collect(); let (have_sys_root_arg, sys_root) = get_sysroot(&orig_args); if orig_args.iter().any(|a| a == "--version" || a == "-V") { println!("{}", plugin.version()); - exit(0); + return ExitCode::SUCCESS; } // Setting RUSTC_WRAPPER causes Cargo to pass 'rustc' as the first argument. @@ -209,8 +232,11 @@ pub fn driver_main(plugin: T) { .as_ref() .map(|s| s.to_string()) .unwrap_or_default(); + + let plugin_args: Result, _> = + serde_json::from_str(&env::var(PLUGIN_ARGS).unwrap_or_default()); let is_target_crate = env::var(CRATES_TO_RUN_PLUGIN_ON_ENV) - .is_ok_and(|crates| crates.split(',').any(|c| c == crate_being_built)); + .is_ok_and(|crates| crates.split(',').any(|c| c == crate_being_built)) || plugin_args.as_ref().is_ok_and(|plugin_args| matches!(plugin_args.filter, CrateFilter::AllCrates)); let normal_rustc = arg_value(&args, "--print", |_| true).is_some(); let run_plugin = !normal_rustc && is_target_crate; @@ -220,9 +246,7 @@ pub fn driver_main(plugin: T) { // args.extend([String::from("--cap-lints"), String::from("warn")]); if run_plugin { log::debug!("Running plugin on crate: {crate_being_built}"); - let plugin_args: T::Args = - serde_json::from_str(&env::var(PLUGIN_ARGS).unwrap()).unwrap(); - plugin.run(args, plugin_args); + plugin.run(args, plugin_args.unwrap()); } else { log::debug!( "Running normal Rust. Relevant variables:\ @@ -232,5 +256,6 @@ primary_package={primary_package}" ); rustc_driver_impl::run_compiler(&args, &mut DefaultCallbacks); } - })) + ExitCode::SUCCESS + }) } diff --git a/codegen/src/driver/license b/codegen/crates/bevy_mod_scripting_rustc_driver/src/license similarity index 100% rename from codegen/src/driver/license rename to codegen/crates/bevy_mod_scripting_rustc_driver/src/license diff --git a/codegen/src/driver/plugin.rs b/codegen/crates/bevy_mod_scripting_rustc_driver/src/plugin.rs similarity index 89% rename from codegen/src/driver/plugin.rs rename to codegen/crates/bevy_mod_scripting_rustc_driver/src/plugin.rs index a15cf3164b..d89ca444d2 100644 --- a/codegen/src/driver/plugin.rs +++ b/codegen/crates/bevy_mod_scripting_rustc_driver/src/plugin.rs @@ -1,9 +1,10 @@ use std::{borrow::Cow, process::Command}; use cargo_metadata::camino::Utf8Path; -use serde::{Serialize, de::DeserializeOwned}; +use serde::{Deserialize, Serialize, de::DeserializeOwned}; /// Specification of a set of crates. +#[derive(Serialize, Deserialize)] pub enum CrateFilter { /// Every crate in the workspace and all transitive dependencies. AllCrates, @@ -12,6 +13,7 @@ pub enum CrateFilter { } /// Arguments from your plugin to the rustc_plugin framework. +#[derive(Serialize, Deserialize)] pub struct RustcPluginArgs { /// Whatever CLI arguments you want to pass along. pub args: Args, @@ -47,7 +49,7 @@ pub trait RustcPlugin: Sized { fn modify_cargo(&self, _cargo: &mut Command, _args: &Self::Args) {} /// Executes the plugin with a set of compiler and plugin args. - fn run(self, compiler_args: Vec, plugin_args: Self::Args); + fn run(self, compiler_args: Vec, plugin_args: RustcPluginArgs); } /// The name of the environment variable shared between the CLI and the driver. diff --git a/codegen/crates/bevy_mod_scripting_rustc_utils/Cargo.toml b/codegen/crates/bevy_mod_scripting_rustc_utils/Cargo.toml new file mode 100644 index 0000000000..1bf4e0b9ef --- /dev/null +++ b/codegen/crates/bevy_mod_scripting_rustc_utils/Cargo.toml @@ -0,0 +1,27 @@ +[package] +name = "bevy_mod_scripting_rustc_utils" +version = "0.1.0" +edition = "2024" + +[package.metadata.rust-analyzer] +rustc_private = true + +[[bin]] +name = "cargo-bms-rustc-utils" +path = "src/bin/main.rs" + +[[bin]] +name = "bms-rustc-utils-driver" +path = "src/bin/driver.rs" + + +[dependencies] +bevy_mod_scripting_rustc_driver = { workspace = true } +clap = { workspace = true } +pretty_env_logger = { workspace = true } +cargo_metadata = { workspace = true} +log = { workspace = true } +serde = { workspace = true } + +[dev-dependencies] +assert_cmd = { workspace = true } \ No newline at end of file diff --git a/codegen/crates/bevy_mod_scripting_rustc_utils/src/args.rs b/codegen/crates/bevy_mod_scripting_rustc_utils/src/args.rs new file mode 100644 index 0000000000..6f2776af30 --- /dev/null +++ b/codegen/crates/bevy_mod_scripting_rustc_utils/src/args.rs @@ -0,0 +1,40 @@ +use clap::{Args, Parser, Subcommand}; + +#[derive(Debug, Parser, serde::Serialize, serde::Deserialize)] +#[command( + version, + about, + long_about, + disable_help_flag = true, + bin_name = "cargo bms-rustc-utils", + arg_required_else_help = true +)] +pub struct Cli { + #[command(subcommand)] + pub command: Command, +} + +#[derive(Debug, Subcommand, serde::Serialize, serde::Deserialize)] +pub enum Command { + /// Generate implementation for a function argument. + ArgImplements(ArgImplementsArgs), +} + +#[derive(Debug, Args, serde::Serialize, serde::Deserialize)] +pub struct ArgImplementsArgs { + /// Name of the trait to implement. + #[arg(long = "trait")] + pub trait_name: String, + + /// Type containing the function. + #[arg(long = "type")] + pub type_name: String, + + /// Function name. + #[arg(long)] + pub function: String, + + /// Function argument name. + #[arg(long)] + pub arg: String, +} \ No newline at end of file diff --git a/codegen/crates/bevy_mod_scripting_rustc_utils/src/bin/driver.rs b/codegen/crates/bevy_mod_scripting_rustc_utils/src/bin/driver.rs new file mode 100644 index 0000000000..fe0cc03033 --- /dev/null +++ b/codegen/crates/bevy_mod_scripting_rustc_utils/src/bin/driver.rs @@ -0,0 +1,15 @@ +#![feature(rustc_private)] +use std::process::ExitCode; +use bevy_mod_scripting_rustc_driver::driver_main; +use bevy_mod_scripting_rustc_utils::plugin::RustcUtilsPlugin; + +extern crate rustc_log; + +fn main() -> ExitCode { + pretty_env_logger::formatted_builder() + .parse_write_style("always") + .parse_filters(&std::env::var("RUST_LOG").unwrap_or_else(|_| "info".into())) + .init(); + + driver_main(RustcUtilsPlugin {}) +} diff --git a/codegen/crates/bevy_mod_scripting_rustc_utils/src/bin/main.rs b/codegen/crates/bevy_mod_scripting_rustc_utils/src/bin/main.rs new file mode 100644 index 0000000000..5c35c65380 --- /dev/null +++ b/codegen/crates/bevy_mod_scripting_rustc_utils/src/bin/main.rs @@ -0,0 +1,29 @@ +#![feature(rustc_private)] +use std::{ + env, +}; + +use bevy_mod_scripting_rustc_driver::cli_main; +use bevy_mod_scripting_rustc_utils::plugin::RustcUtilsPlugin; +use log::info; + +fn main() { + + if env::var("RUST_LOG").is_err() { + unsafe { env::set_var("RUST_LOG", "info") }; + } + pretty_env_logger::init(); + + info!("Using RUST_LOG: {:?}", env::var("RUST_LOG")); + + let metadata = cargo_metadata::MetadataCommand::new() + .no_deps() + .other_options(["--all-features".to_string(), "--offline".to_string()]) + .exec() + .unwrap(); + cli_main( + RustcUtilsPlugin {}, + [].into(), + &metadata, + ); +} diff --git a/codegen/crates/bevy_mod_scripting_rustc_utils/src/emitter.rs b/codegen/crates/bevy_mod_scripting_rustc_utils/src/emitter.rs new file mode 100644 index 0000000000..edcae5961d --- /dev/null +++ b/codegen/crates/bevy_mod_scripting_rustc_utils/src/emitter.rs @@ -0,0 +1,145 @@ +use std::{io, sync::{Arc, Mutex, OnceLock, atomic::{AtomicBool, Ordering}}}; + +use rustc_data_structures::sync::DynSend; +use rustc_errors::{DiagInner, annotate_snippet_emitter_writer::AnnotateSnippetEmitter, emitter::{DynEmitter, Emitter, HumanReadableErrorType, OutputTheme, stderr_destination}, json::JsonEmitter}; +use rustc_middle::ty::{TyCtxt}; +use rustc_session::{Session, config::ErrorOutputType}; +use rustc_span::source_map::SourceMap; + +#[derive(Default)] +pub struct Buffer { + messages: Vec, + has_errors: bool, +} + +impl Buffer { + // #[allow(clippy::arc_with_non_send_sync)] + // pub fn new() -> Arc> { + // Arc::new(Mutex::new(Self::default())) + // } + + pub fn capture_and_reset(&mut self) -> (String, bool) { + let ret = (self.messages.join("\n"), self.has_errors); + *self = Default::default(); + ret + } +} + +pub struct CaptureState { + pub capture: AtomicBool, + pub buffer: Mutex, + /// Set to `true` by `DelegatingBufferEmitter::new`, so we can tell + /// whether the consumer actually installed our emitter on the dcx. + pub installed: AtomicBool, +} + +/// Global, process-wide handle to the capture state. Populated once when +/// `DelegatingBufferEmitter` is constructed and wrapped into the real `DiagCtxt`. +static CAPTURE_STATE: OnceLock> = OnceLock::new(); + +impl CaptureState { + fn get_or_init() -> &'static Arc { + CAPTURE_STATE.get_or_init(|| { + Arc::new(CaptureState { + capture: AtomicBool::new(false), + buffer: Mutex::new(Buffer::default()), + installed: AtomicBool::new(false), + }) + }) + } + + /// Call once, right after building the emitter, so callers can detect + /// a missing `set_emitter` at startup. + pub fn install(session: &Session) { + session.dcx().set_emitter(Box::new(DelegatingBufferEmitter::new(build_real_emitter(session)))); + Self::get_or_init().installed.store(true, Ordering::SeqCst); + } + + pub fn is_installed() -> bool { + Self::get_or_init().installed.load(Ordering::SeqCst) + } + + /// Turn capturing on, run `f`, turn it back off, and return the + /// captured messages. Panics loudly if the delegating emitter was + /// never installed, instead of silently emitting to stderr. + pub fn capture(ctxt: TyCtxt<'_>, f: impl FnOnce() -> T) -> (T, String, bool) { + assert!( + Self::is_installed(), + "DelegatingBufferEmitter was never installed on the DiagCtxt; + call CaptureState::install(&session) from your callbacks" + ); + + let state = Self::get_or_init(); + state.capture.store(true, Ordering::SeqCst); + let had_errors_before = ctxt.dcx().has_errors().is_some(); + let result = f(); + + if !had_errors_before { + ctxt.dcx().reset_err_count(); + } + state.capture.store(false, Ordering::SeqCst); + + let mut buffer = state.buffer.lock().unwrap(); + let (messages, has_errors) = buffer.capture_and_reset(); + (result, messages, has_errors) + } +} + + pub struct DelegatingBufferEmitter { + inner: Box, +} + +impl DelegatingBufferEmitter { + pub fn new(inner: Box) -> Self { + Self { inner } + } +} + +impl Emitter for DelegatingBufferEmitter { + fn emit_diagnostic(&mut self, diag: DiagInner) { + let state = CaptureState::get_or_init(); + if state.capture.load(Ordering::SeqCst) { + let mut buffer = state.buffer.lock().unwrap(); + let msg = rustc_errors::format_diag_message(&diag.messages[0].0, &diag.args); + buffer.messages.push(msg.into_owned()); + if diag.is_error() { + buffer.has_errors = true; + } + } else { + self.inner.emit_diagnostic(diag); + } + } + + fn source_map(&self) -> Option<&SourceMap> { + self.inner.source_map() + } +} + +fn build_real_emitter(sess: &Session) -> Box { + // same shape as librustdoc::core::new_dcx / rustc_session::session::mk_emitter + match sess.opts.error_format { + ErrorOutputType::HumanReadable { kind: HumanReadableErrorType { short, unicode }, color_config } => { + Box::new( + AnnotateSnippetEmitter::new(stderr_destination(color_config)) + .sm(Some(sess.psess.clone_source_map())) + .short_message(short) + .diagnostic_width(sess.opts.diagnostic_width) + .track_diagnostics(sess.opts.unstable_opts.track_diagnostics) + .theme(if unicode { OutputTheme::Unicode } else { OutputTheme::Ascii }), + ) + } + ErrorOutputType::Json { pretty, json_rendered, color_config } => { + Box::new( + JsonEmitter::new( + Box::new(io::BufWriter::new(io::stderr())), + Some(sess.psess.clone_source_map()), + pretty, + json_rendered, + color_config, + ) + .diagnostic_width(sess.opts.diagnostic_width) + .track_diagnostics(sess.opts.unstable_opts.track_diagnostics), + ) + } + } +} \ No newline at end of file diff --git a/codegen/crates/bevy_mod_scripting_rustc_utils/src/lib.rs b/codegen/crates/bevy_mod_scripting_rustc_utils/src/lib.rs new file mode 100644 index 0000000000..a02565c99c --- /dev/null +++ b/codegen/crates/bevy_mod_scripting_rustc_utils/src/lib.rs @@ -0,0 +1,26 @@ +#![feature(rustc_private)] +#![deny(rustc::internal)] + +// use rustc_hir::def_id::DefId; +// use rustc_middle::ty::{Ty, TyCtxt}; +extern crate rustc_ast; +extern crate rustc_const_eval; +extern crate rustc_driver; +extern crate rustc_driver_impl; +extern crate rustc_errors; +extern crate rustc_hir; +extern crate rustc_infer; +extern crate rustc_interface; +extern crate rustc_log; +extern crate rustc_middle; +extern crate rustc_session; +extern crate rustc_span; +extern crate rustc_trait_selection; +extern crate rustc_data_structures; + +pub mod plugin; +pub mod query; +pub use emitter::CaptureState; + +pub(crate) mod emitter; +mod args; \ No newline at end of file diff --git a/codegen/crates/bevy_mod_scripting_rustc_utils/src/plugin.rs b/codegen/crates/bevy_mod_scripting_rustc_utils/src/plugin.rs new file mode 100644 index 0000000000..fbade177ec --- /dev/null +++ b/codegen/crates/bevy_mod_scripting_rustc_utils/src/plugin.rs @@ -0,0 +1,182 @@ +use bevy_mod_scripting_rustc_driver::{RustcPlugin, RustcPluginArgs, copy_command_without_args}; +use cargo_metadata::camino::Utf8Path; +use clap::Parser; +use rustc_driver::{Callbacks, Compilation}; +use rustc_hir::{ + def_id::{DefId, LOCAL_CRATE}, +}; +use rustc_span::Ident; + +use crate::{ + args::Cli, emitter::{CaptureState}, query::{query_crate_non_trait_impls, type_implements_trait, typing_env_function_arg_in_impl}, +}; + +pub struct RustcUtilsPlugin {} + +pub struct RustcUtilsCallbacks { + args: Cli, +} + +impl Callbacks for RustcUtilsCallbacks { + fn after_expansion( + &mut self, + compiler: &rustc_interface::interface::Compiler, + tcx: rustc_middle::ty::TyCtxt<'_>, + ) -> rustc_driver::Compilation { + let sess = &compiler.sess; + + if sess.dcx().has_errors().is_some() { + sess.dcx().fatal("compilation failed, aborting analysis."); + } + + CaptureState::install(sess); + + match &self.args.command { + crate::args::Command::ArgImplements(arg_implements_args) => { + let trait_did = match tcx + .traits(LOCAL_CRATE) + .iter() + .find(|t| tcx.item_ident(**t).to_string() == arg_implements_args.trait_name) + { + Some(trait_did) => *trait_did, + None => { + println!( + "no: trait '{}' not found in crate", + arg_implements_args.trait_name + ); + return rustc_driver::Compilation::Continue; + } + }; + + let impl_did: Option = + query_crate_non_trait_impls(tcx, |tcx, type_did, _impl_did| { + tcx.hir_ident(tcx.hir_expect_item(*type_did).hir_id()) + .to_string() + == arg_implements_args.type_name + }) + .map(|(_, i)| *i) + .collect::>() + .first() + .copied(); + + let impl_did = match impl_did { + Some(impl_did) => impl_did, + None => { + println!( + "no: impl block not found for type: {}", + arg_implements_args.type_name + ); + return Compilation::Continue + } + }; + + let items = tcx.associated_items(impl_did); + + let func_did = items.find_by_ident_and_kind(tcx, Ident::from_str(&arg_implements_args.function), rustc_middle::ty::AssocTag::Fn, impl_did); + + let func_did = match func_did { + Some(func_did) => func_did.def_id, + None => { + println!("no: could not find function: {} on any impl block for type: {}", arg_implements_args.function, arg_implements_args.type_name); + return Compilation::Continue; + } + }; + + let bound_sig = tcx.fn_sig(func_did); + + + let (typing_env, fn_sig) = + typing_env_function_arg_in_impl(tcx, bound_sig, func_did, impl_did); + + + let param = match tcx.fn_arg_idents(func_did).iter().zip(fn_sig.inputs()).find(|(param, _)| { + param.is_some_and(|p| p.to_string() == arg_implements_args.arg) + }) { + Some((_,param)) => param, + None => { + println!("no: no parameter named {} found on function", arg_implements_args.arg); + return Compilation::Continue; + }, + }; + + match type_implements_trait(tcx, typing_env, *param, trait_did) { + Ok(_) => println!("yes"), + Err(err) => { + println!("no: {err}") + }, + }; + + } + } + rustc_driver::Compilation::Continue + } +} + + + +impl RustcPlugin for RustcUtilsPlugin { + type Args = Cli; + + fn version(&self) -> std::borrow::Cow<'static, str> { + env!("CARGO_PKG_VERSION").into() + } + + fn driver_name(&self) -> std::borrow::Cow<'static, str> { + "bms-rustc-utils-driver".into() + } + + fn args( + &self, + _target_dir: &Utf8Path, + ) -> bevy_mod_scripting_rustc_driver::RustcPluginArgs { + RustcPluginArgs { + args: Cli::parse_from(std::env::args().skip(1)), + filter: bevy_mod_scripting_rustc_driver::CrateFilter::AllCrates, + } + } + + fn run(self, compiler_args: Vec, plugin_args: RustcPluginArgs) { + let mut callbacks = RustcUtilsCallbacks { args: plugin_args.args }; + + rustc_driver_impl::run_compiler(&compiler_args, &mut callbacks); + } + fn modify_cargo(&self, cmd: &mut std::process::Command, _args: &Self::Args) { + *cmd = copy_command_without_args(cmd, &["-q", "-v",]); //"--all", "--workspace"]); + cmd.args(["--color", "always"]); + // if !args.features.is_empty() { + // cmd.args(["--features", &args.features.join(",")]); + // } + + // if args.no_default_features { + // cmd.arg("--no-default-features"); + // } + + // // make cargo chatty as well + // if args.verbose.get_log_level_int() >= 3 { + // cmd.arg("-q"); + // } else { + // cmd.arg("-q"); + // } + + // if let Some(crates) = WorkspaceMeta::from_env().include_crates { + // for c in crates { + // cmd.args(["-p", &c]); + // } + // } + + let all_env = cmd + .get_envs() + .filter_map(|(key, val)| { + val.map(|val| format!("{}={}", key.to_string_lossy(), val.to_string_lossy())) + }) + .collect::>() + .join(" "); + let bin_name = cmd.get_program().to_string_lossy(); + let args = cmd + .get_args() + .map(|a| a.to_string_lossy()) + .collect::>() + .join(" "); + log::debug!("Running cargo build command: \n{all_env} {bin_name} {args}",); + } +} diff --git a/codegen/crates/bevy_mod_scripting_rustc_utils/src/query.rs b/codegen/crates/bevy_mod_scripting_rustc_utils/src/query.rs new file mode 100644 index 0000000000..8e3683fb6a --- /dev/null +++ b/codegen/crates/bevy_mod_scripting_rustc_utils/src/query.rs @@ -0,0 +1,79 @@ +use rustc_hir::def_id::{DefId, LocalDefId}; +use rustc_infer::{infer::TyCtxtInferExt, traits::ObligationCause}; +use rustc_middle::ty::{EarlyBinder, FnSig, ParamEnv, PolyFnSig, Ty, TyCtxt, TypingEnv, TypingMode, Unnormalized}; +use rustc_trait_selection::{error_reporting::InferCtxtErrorExt, traits::ObligationCtxt}; + +use crate::emitter::{CaptureState}; + +pub fn typing_env_function_arg_in_impl<'tcx>( + tcx: TyCtxt<'tcx>, + sig: EarlyBinder<'tcx, PolyFnSig<'tcx>>, + function: DefId, + impl_block: DefId, +) -> (TypingEnv<'tcx>, FnSig<'tcx>) { + let impl_predicates = tcx + .predicates_of(impl_block) + .instantiate_identity(tcx) + .predicates + .into_iter() + .map(Unnormalized::skip_norm_wip); + let func_predicates = tcx + .predicates_of(function) + .instantiate_own_identity() + .map(|(a, _)| Unnormalized::skip_norm_wip(a)); + let all_predicates = impl_predicates.chain(func_predicates); + let param_env = ParamEnv::new(tcx.mk_clauses_from_iter(all_predicates)); + let env = TypingEnv::new(param_env, TypingMode::non_body_analysis()); + + // Discharge the EarlyBinder identically, then liberate the late-bound + // lifetimes on the fn sig using `function`'s DefId so no escaping + // bound vars remain in the extracted `FnSig`. + let fn_sig = sig.instantiate_identity(); + let fn_sig = tcx.liberate_late_bound_regions(function, fn_sig.skip_norm_wip()); + + (env, fn_sig) +} + +pub fn type_implements_trait<'tcx>(tcx: TyCtxt<'tcx>, ctxt: TypingEnv<'tcx>, self_ty: Ty<'tcx>, trait_did: DefId) -> Result<(), String>{ + + let (_, messages, has_errors) = CaptureState::capture::<()>(tcx, || { + + { + let (infr_ctxt, param_env) = tcx.infer_ctxt() + .build_with_typing_env(ctxt); + + let ocx = ObligationCtxt::new_with_diagnostics(&infr_ctxt); + + ocx.register_bound( + ObligationCause::dummy(), + param_env, + self_ty, + trait_did, + ); + + let errors = ocx.evaluate_obligations_error_on_ambiguity(); + + let errcx = infr_ctxt.err_ctxt(); + + // errcx.dcx().set_emitter(Box::new(BufferEmitter::new(shared_buffer.clone()))); + errcx.report_fulfillment_errors(errors); + } + }); + + if has_errors { + Err(messages) + } else { + Ok(()) + } +} + +/// Returns all impls in the crate satisfying a condition, and their trait DefId +pub fn query_crate_trait_impls<'tcx>(tcx: TyCtxt<'tcx>, q: impl Fn(TyCtxt<'tcx>, &'tcx DefId, &'tcx LocalDefId) -> bool ) -> impl Iterator { + tcx.all_local_trait_impls(()).iter().flat_map(|(a,b)| b.iter().map(move |b| (a,b))).filter(move |(a, b)| q(tcx, a, b)) +} + +/// Returns all inherent type impls from the crate, and their type LocalDefId +pub fn query_crate_non_trait_impls<'tcx>(tcx: TyCtxt<'tcx>, q: impl Fn(TyCtxt<'tcx>, &'tcx LocalDefId, &'tcx DefId) -> bool) -> impl Iterator { + let iter = tcx.crate_inherent_impls(()).0; + iter.inherent_impls.iter().flat_map(move |(t,impls)| impls.iter().map(move |i| (t,i))).filter(move |(l, i)| q(tcx, l, i)) +} \ No newline at end of file diff --git a/codegen/crates/bevy_mod_scripting_rustc_utils/tests/integration_tests.rs b/codegen/crates/bevy_mod_scripting_rustc_utils/tests/integration_tests.rs new file mode 100644 index 0000000000..43122bb03a --- /dev/null +++ b/codegen/crates/bevy_mod_scripting_rustc_utils/tests/integration_tests.rs @@ -0,0 +1,78 @@ +use std::{path::PathBuf, process::Output}; +use assert_cmd::Command; + + +pub fn test_harness(args: impl IntoIterator) -> Output { + let mut cmd = Command::cargo_bin("cargo-bms-rustc-utils").unwrap(); + cmd.arg("skipped-arg"); + let crate_dir = env!("CARGO_MANIFEST_DIR"); + let test_lib_dir = PathBuf::from(crate_dir).parent().unwrap().join("test_crates").join("rust_lib_tests"); + unsafe { std::env::set_var("CARGO_TARGET_DIR", test_lib_dir.join("target")) }; + let mut clean_cmd = std::process::Command::new("cargo"); + clean_cmd.arg("clean").current_dir(&test_lib_dir); + println!("{clean_cmd:?}, {:?}", clean_cmd.get_current_dir()); + clean_cmd.status().unwrap(); + + cmd + .current_dir(test_lib_dir) + .args(args) + .output() + .unwrap() +} + +#[test] +pub fn test_plain_argument_direct_impl() { + let output = test_harness([ + "arg-implements", + "--trait", + "SimpleTrait", + "--type", + "TargetType", + "--function", + "simple_fn", + "--arg", + "arg" + ].into_iter().map(String::from).collect::>()); + + assert_eq!(String::from_utf8(output.stdout).unwrap(), "yes\n"); + assert!(output.status.success()); +} + + +#[test] +pub fn test_complex_trait() { + let output = test_harness([ + "arg-implements", + "--trait", + "WithAssocItem", + "--type", + "TargetType", + "--function", + "with_assoc_fn", + "--arg", + "arg" + ].into_iter().map(String::from).collect::>()); + + assert_eq!(String::from_utf8(output.stdout).unwrap(), "yes\n"); + assert!(output.status.success()); +} + + +#[test] +pub fn test_not_implementing_arg() { + let output = test_harness([ + "arg-implements", + "--trait", + "SimpleTrait", + "--type", + "TargetType", + "--function", + "simple_fn_negative", + "--arg", + "arg" + ].into_iter().map(String::from).collect::>()); + + assert_eq!(String::from_utf8(output.stdout).unwrap(), "no: the trait bound `std::string::String: SimpleTrait` is not satisfied\n"); + assert!(output.status.success()); +} + diff --git a/codegen/crates/crate_feature_graph/src/feature.rs b/codegen/crates/crate_feature_graph/src/feature.rs index d3471b42e3..c6bb0a6ec9 100644 --- a/codegen/crates/crate_feature_graph/src/feature.rs +++ b/codegen/crates/crate_feature_graph/src/feature.rs @@ -19,7 +19,7 @@ pub struct CrateName(pub(crate) String); impl<'a, T: Borrow> From<&'a T> for CrateName { fn from(pkg: &'a T) -> Self { - CrateName(pkg.borrow().name.clone()) + CrateName(pkg.borrow().name.to_string()) } } @@ -467,7 +467,7 @@ impl From for Crate { } Self { - name: CrateName(meta.name.clone()), + name: CrateName(meta.name.to_string()), features, dependencies: dependencies .into_iter() diff --git a/codegen/crates/test_crates/rust_lib_tests/Cargo.toml b/codegen/crates/test_crates/rust_lib_tests/Cargo.toml new file mode 100644 index 0000000000..8f39868462 --- /dev/null +++ b/codegen/crates/test_crates/rust_lib_tests/Cargo.toml @@ -0,0 +1,6 @@ +[package] +name = "rust_lib_tests" +version = "0.1.0" +edition = "2024" + +[dependencies] diff --git a/codegen/crates/test_crates/rust_lib_tests/src/lib.rs b/codegen/crates/test_crates/rust_lib_tests/src/lib.rs new file mode 100644 index 0000000000..a7332adb33 --- /dev/null +++ b/codegen/crates/test_crates/rust_lib_tests/src/lib.rs @@ -0,0 +1,28 @@ +pub trait SimpleTrait {} + +pub trait WithAssocItem { + type A: SimpleTrait; +} + +impl SimpleTrait for usize {} +impl WithAssocItem for usize { + type A = usize; +} + +pub struct TargetType; + +#[allow(unused_variables)] +impl TargetType { + pub fn simple_fn(arg: usize) { + + } + + pub fn simple_fn_negative(arg: String) { + + } + + + pub fn with_assoc_fn(arg: A) { + + } +} diff --git a/codegen/crates/test_crates/workspace/root/Cargo.toml b/codegen/crates/test_crates/workspace/root/Cargo.toml index 29bcf2fa1d..da1fbc4727 100644 --- a/codegen/crates/test_crates/workspace/root/Cargo.toml +++ b/codegen/crates/test_crates/workspace/root/Cargo.toml @@ -16,4 +16,4 @@ crate_b = { path = "children/crate_b", optional = true, default-features = true path = "crate_a/lib.rs" [workspace] -members = ["children/crate_a", "children/crate_b"] +members = ["children/crate_a", "children/crate_b"] \ No newline at end of file diff --git a/codegen/rust-toolchain.toml b/codegen/rust-toolchain.toml index 4077610134..f7fffc71ee 100644 --- a/codegen/rust-toolchain.toml +++ b/codegen/rust-toolchain.toml @@ -1,3 +1,3 @@ [toolchain] components = ["clippy", "rust-src", "rustc-dev", "llvm-tools"] -channel = "nightly-2025-11-08" +channel = "nightly-2026-06-26" diff --git a/codegen/src/args.rs b/codegen/src/args.rs index d45115086c..078bcda712 100644 --- a/codegen/src/args.rs +++ b/codegen/src/args.rs @@ -74,18 +74,29 @@ pub struct Args { global = true, short, long, - default_value = "bevy_winit,bevy_window", + default_value = "bevy_winit,bevy_window,bevy_clipboard", use_value_delimiter = true, value_delimiter = ',' )] pub exclude_crates: Option>, + /// Crates to exclude from code generation + #[arg( + global = true, + short, + long, + default_value = "assert_fields_are_eq", + use_value_delimiter = true, + value_delimiter = ',' + )] + pub exclude_functions: Option>, + #[arg( global = true, short, long, help = "The rust version to consider when looking at stability tags etc", - default_value = "1.89.0" + default_value = "1.96.0" )] pub minimum_supported_rust_version_target: Option, } @@ -172,6 +183,7 @@ impl Verbosity { fn default_ignored_types() -> String { [ + "bevy_core_pipeline::RootNonCameraView", "std::any::TypeId", "bevy_reflect::DynamicArray", "bevy_reflect::DynamicList", diff --git a/codegen/src/bin/driver.rs b/codegen/src/bin/driver.rs index c01c637a3d..8f6b97fdc2 100644 --- a/codegen/src/bin/driver.rs +++ b/codegen/src/bin/driver.rs @@ -1,14 +1,17 @@ #![feature(rustc_private)] -use bevy_mod_scripting_codegen::{driver::driver_main, *}; +use std::process::ExitCode; + +use bevy_mod_scripting_codegen::{*}; +use bevy_mod_scripting_rustc_driver::driver_main; // use rustc_log::LoggerConfig; extern crate rustc_log; -fn main() { +fn main() -> ExitCode { pretty_env_logger::formatted_builder() .parse_write_style("always") .parse_filters(&std::env::var("RUST_LOG").unwrap_or_else(|_| "warn".into())) .init(); - driver_main(BevyAnalyzer); + driver_main(BevyAnalyzer) } diff --git a/codegen/src/bin/main.rs b/codegen/src/bin/main.rs index 2910caf82a..1d8fdd2ae1 100644 --- a/codegen/src/bin/main.rs +++ b/codegen/src/bin/main.rs @@ -3,12 +3,13 @@ use std::{ collections::HashMap, env, fs::{File, create_dir_all}, - io::{BufRead, Write}, + io::Write, path::{Path, PathBuf}, process::{Command, Stdio}, }; -use bevy_mod_scripting_codegen::{driver::*, *}; +use bevy_mod_scripting_codegen::{*}; +use bevy_mod_scripting_rustc_driver::{CHANNEL, WORKSPACE_GRAPH_FILE_ENV, cli_main, fetch_target_directory}; use cargo_metadata::camino::{Utf8Path, Utf8PathBuf}; use clap::Parser; use crate_feature_graph::{Workspace, WorkspaceGraph}; @@ -46,7 +47,7 @@ fn main() { let crates = metadata .workspace_packages() .iter() - .map(|p| p.name.to_owned()) + .map(|p| p.name.to_string()) .collect::>(); info!("Computing active features"); @@ -90,7 +91,7 @@ fn main() { None }; - let plugin_subdir = format!("plugin-{}", env!("RUSTC_CHANNEL")); + let plugin_subdir = format!("plugin-{}", CHANNEL); let plugin_target_dir = metadata.target_directory.join(plugin_subdir); info!("Computing workspace metadata"); @@ -181,7 +182,7 @@ fn main() { let temp_dir = find_bootstrap_dir(); - debug!("Bootstrap directory: {}", &temp_dir.as_path().display()); + debug!("Bootstrap directory: {}", temp_dir.as_path().display()); write_bootstrap_files(args.bms_bindings_path, temp_dir.as_path()); @@ -217,7 +218,7 @@ fn main() { // disable incremental compilation unsafe { env::set_var("CARGO_INCREMENTAL", "0") }; - driver::cli_main( + cli_main( BevyAnalyzer, workspace_meta.include_crates.unwrap_or_default(), &metadata, @@ -250,18 +251,17 @@ fn build_bootstrap( let mut cmd = Command::new("cargo") .current_dir(temp_dir) .stdout(Stdio::piped()) - .stderr(Stdio::piped()) + .stderr(Stdio::inherit()) .args(["build", "--message-format=json"]) .spawn() .unwrap(); - info!( + println!( "cd {} && cargo build --message-format=json", temp_dir.display() ); let reader = std::io::BufReader::new(cmd.stdout.take().unwrap()); - let err_reader = std::io::BufReader::new(cmd.stderr.take().unwrap()); std::fs::create_dir_all(cache_dir).unwrap(); @@ -285,17 +285,12 @@ fn build_bootstrap( cargo_metadata::Message::CompilerMessage(msg) => { info!("{msg}"); } - _ => {} + a => { + println!("{a:?}"); + } } } } - for msg in err_reader.lines() { - if let Ok(line) = msg { - info!("{line}"); - } else { - panic!("Failed to read cargo stderr"); - } - } // cache bootstrap artifacts if let Some(artifact) = bootstrap_rlibs.values().next() { @@ -370,8 +365,10 @@ fn write_bootstrap_files(bms_bindings_path: Utf8PathBuf, path: &Path) { String::from_utf8(include_bytes!("../../Cargo.bootstrap.toml").to_vec()) .expect("Could not read manifest template as utf8"); - manifest_content = - manifest_content.replace(BMS_BINDINGS_PATH_PLACEHOLDER, bms_bindings_path.as_str()); + manifest_content = manifest_content.replace( + BMS_BINDINGS_PATH_PLACEHOLDER, + &bms_bindings_path.as_str().replace("\\", "/"), + ); let manifest_path = path.join("Cargo.toml"); diff --git a/codegen/src/callback.rs b/codegen/src/callback.rs index 8bb951ce61..45f4ad7718 100644 --- a/codegen/src/callback.rs +++ b/codegen/src/callback.rs @@ -1,12 +1,14 @@ use std::path::PathBuf; +use bevy_mod_scripting_rustc_driver::WORKSPACE_GRAPH_FILE_ENV; +use bevy_mod_scripting_rustc_utils::CaptureState; use crate_feature_graph::WorkspaceGraph; use log::{info, trace}; use rustc_hir::def_id::LOCAL_CRATE; use tera::Context; use crate::{ - ALL_PASSES, Args, TemplateKind, WorkspaceMeta, driver::WORKSPACE_GRAPH_FILE_ENV, + ALL_PASSES, Args, TemplateKind, WorkspaceMeta, modifying_file_loader::ModifyingFileLoader, }; @@ -34,6 +36,8 @@ impl rustc_driver::Callbacks for BevyAnalyzerCallbacks { sess.dcx().fatal("compilation failed, aborting analysis."); } + CaptureState::install(sess); + let mut meta_dirs = Vec::default(); let mut templates_dir = None; // add all relevant meta dirs to the context diff --git a/codegen/src/candidate.rs b/codegen/src/candidate.rs index 68c2ca5d75..be9d0e49d9 100644 --- a/codegen/src/candidate.rs +++ b/codegen/src/candidate.rs @@ -2,7 +2,7 @@ use std::borrow::Cow; use indexmap::IndexMap; use rustc_hir::def_id::DefId; -use rustc_middle::ty::{AdtDef, FieldDef, FnSig, TyCtxt, VariantDef, Visibility}; +use rustc_middle::ty::{AdtDef, FieldDef, FnSig, TyCtxt, TypingEnv, VariantDef, Visibility}; use rustc_span::Symbol; use crate::ReflectionStrategy; @@ -67,6 +67,7 @@ pub struct FunctionCandidate<'tcx> { pub(crate) notes: Vec, pub(crate) arguments: Vec, pub(crate) ret: FunctionArgCandidate, + pub(crate) typing_env: TypingEnv<'tcx> } #[derive(Debug)] diff --git a/codegen/src/context.rs b/codegen/src/context.rs index f8ef2b692e..9c6c5979a9 100644 --- a/codegen/src/context.rs +++ b/codegen/src/context.rs @@ -65,6 +65,11 @@ pub(crate) const DEF_PATHS_BMS_FROM_SCRIPT: [&str; 2] = pub(crate) const DEF_PATHS_BMS_INTO_SCRIPT: [&str; 2] = ["bevy_mod_scripting_bindings::IntoScript", "IntoScript"]; +pub(crate) const DEF_PATHS_BMS_TYPED_SCRIPT_ARGUMENT: [&str; 2] = + ["bevy_mod_scripting_bindings::TypedScriptArgument", "TypedScriptArgument"]; +pub(crate) const DEF_PATHS_BMS_TYPED_SCRIPT_RETURN: [&str; 2] = + ["bevy_mod_scripting_bindings::TypedScriptReturn", "TypedScriptReturn"]; + pub(crate) const DEF_PATHS_REFLECT: [&str; 2] = ["bevy_reflect::PartialReflect", "reflect::PartialReflect"]; pub(crate) const DEF_PATHS_GET_TYPE_REGISTRATION: [&str; 2] = [ @@ -100,6 +105,8 @@ pub(crate) const STD_OR_CORE_TRAITS: [&str; 13] = [ pub(crate) struct CachedTraits { pub(crate) bms_into_script: Option, pub(crate) bms_from_script: Option, + pub(crate) bms_script_argument: Option, + pub(crate) bms_script_return: Option, pub(crate) bevy_reflect_reflect: Option, pub(crate) bevy_reflect_get_type_registration: Option, /// Map from def_path_str to DefId of common std traits we work with diff --git a/codegen/src/lib.rs b/codegen/src/lib.rs index de0271bbe6..417a3ad7e9 100644 --- a/codegen/src/lib.rs +++ b/codegen/src/lib.rs @@ -39,7 +39,3 @@ pub(crate) use template::*; pub use template::{ Collect, Crate, TEMPLATE_DIR, TemplateKind, configure_tera, extend_context_with_args, }; -pub mod driver; - -/// The rustc toolchain this crate was built with and needs to work with -pub const CHANNEL: &str = env!("RUSTC_CHANNEL"); diff --git a/codegen/src/modifying_file_loader.rs b/codegen/src/modifying_file_loader.rs index 07f2075fbe..c3521e6ae9 100644 --- a/codegen/src/modifying_file_loader.rs +++ b/codegen/src/modifying_file_loader.rs @@ -1,8 +1,8 @@ use std::{ io, sync::{ - Arc, atomic::{AtomicBool, Ordering}, + Arc, }, }; @@ -32,6 +32,7 @@ impl FileLoader for ModifyingFileLoader { ("bevy_mod_scripting_bindings", vec![]), ] { if !f.contains(&format!("extern crate {crate_}")) + && !f.contains(&format!("extern crate self as {crate_}")) && !excluded_files .iter() .any(|s| path.to_str().unwrap().contains(s)) @@ -58,4 +59,8 @@ impl FileLoader for ModifyingFileLoader { fn read_binary_file(&self, path: &std::path::Path) -> io::Result> { RealFileLoader.read_binary_file(path) } + + fn current_directory(&self) -> io::Result { + RealFileLoader.current_directory() + } } diff --git a/codegen/src/passes/cache_traits.rs b/codegen/src/passes/cache_traits.rs index b06e6aef72..8910a63a96 100644 --- a/codegen/src/passes/cache_traits.rs +++ b/codegen/src/passes/cache_traits.rs @@ -4,8 +4,7 @@ use rustc_middle::ty::TyCtxt; use rustc_span::Symbol; use crate::{ - Args, BevyCtxt, DEF_PATHS_BMS_FROM_SCRIPT, DEF_PATHS_BMS_INTO_SCRIPT, - DEF_PATHS_GET_TYPE_REGISTRATION, DEF_PATHS_REFLECT, STD_ONLY_TRAITS, STD_OR_CORE_TRAITS, + Args, BevyCtxt, DEF_PATHS_BMS_FROM_SCRIPT, DEF_PATHS_BMS_INTO_SCRIPT, DEF_PATHS_BMS_TYPED_SCRIPT_ARGUMENT, DEF_PATHS_BMS_TYPED_SCRIPT_RETURN, DEF_PATHS_GET_TYPE_REGISTRATION, DEF_PATHS_REFLECT, STD_ONLY_TRAITS, STD_OR_CORE_TRAITS, }; fn dump_traits(tcx: &TyCtxt) -> String { @@ -48,6 +47,12 @@ pub(crate) fn cache_traits(ctxt: &mut BevyCtxt<'_>, _args: &Args) -> bool { } else if DEF_PATHS_BMS_FROM_SCRIPT.contains(&def_path_str.as_str()) { trace!("found FromScript trait def id: {trait_did:?}"); ctxt.cached_traits.bms_from_script = Some(trait_did); + }else if DEF_PATHS_BMS_TYPED_SCRIPT_ARGUMENT.contains(&def_path_str.as_str()) { + trace!("found TypedScriptArgument trait def id: {trait_did:?}"); + ctxt.cached_traits.bms_script_argument = Some(trait_did); + } else if DEF_PATHS_BMS_TYPED_SCRIPT_RETURN.contains(&def_path_str.as_str()) { + trace!("found TypedScriptReturn trait def id: {trait_did:?}"); + ctxt.cached_traits.bms_script_return = Some(trait_did); } } diff --git a/codegen/src/passes/find_methods_and_fields.rs b/codegen/src/passes/find_methods_and_fields.rs index a054ebb145..43e0a92377 100644 --- a/codegen/src/passes/find_methods_and_fields.rs +++ b/codegen/src/passes/find_methods_and_fields.rs @@ -1,16 +1,15 @@ use std::io::Write; +use bevy_mod_scripting_rustc_utils::query::{type_implements_trait, typing_env_function_arg_in_impl}; use indexmap::IndexMap; use itertools::Itertools; -use log::trace; +use log::{trace}; use rustc_hir::{ StableSince, def_id::{DefId, LOCAL_CRATE}, }; -use rustc_infer::infer::TyCtxtInferExt; -use rustc_middle::ty::{AdtDef, AssocKind, FnSig, GenericArgs, Ty, TyCtxt, TyKind, TypingEnv}; +use rustc_middle::ty::{AdtDef, AssocKind, GenericArgs, Ty, TyCtxt, TyKind, TypingEnv}; use rustc_span::Symbol; -use rustc_trait_selection::infer::InferCtxtExt; use crate::{ Args, BevyCtxt, CachedTraits, MetaLoader, ReflectionStrategy, @@ -71,7 +70,7 @@ pub(crate) fn find_methods_and_fields(ctxt: &mut BevyCtxt<'_>, args: &Args) -> b ) .unwrap(); for (did, candidate) in ctxt.reflect_types.iter() { - writeln!(handle, "{:?}", ctxt.tcx.def_path_str(did)).unwrap(); + writeln!(handle, "{:?}", ctxt.tcx.def_path_str(*did)).unwrap(); writeln!(handle, "Exclusions: ").unwrap(); let mut annotator = AnnotationContextCollector::new(ctxt.tcx); annotator.annotate(candidate); @@ -104,10 +103,11 @@ pub(crate) fn find_methods_and_fields(ctxt: &mut BevyCtxt<'_>, args: &Args) -> b true } +#[allow(clippy::result_large_err)] fn generate_functions<'tcx>( ctxt: &mut BevyCtxt<'tcx>, args: &Args, - def_id: DefId, + _def_id: DefId, impl_did: DefId, ) -> (Vec>, Vec>) { let (functions, excluded_functions): (Vec<_>, Vec<_>) = ctxt @@ -128,25 +128,22 @@ fn generate_functions<'tcx>( .tcx .impl_opt_trait_ref(impl_did) .map(|tr| tr.skip_binder().def_id); - let param_env = TypingEnv::non_body_analysis(ctxt.tcx, def_id); let fn_did = assoc_item.def_id; - let fn_sig = ctxt.tcx.fn_sig(fn_did).instantiate_identity(); - let sig: FnSig = ctxt - .tcx - .normalize_erasing_late_bound_regions(param_env, fn_sig); + let (typing_env, sig) = typing_env_function_arg_in_impl(ctxt.tcx, ctxt.tcx.fn_sig(fn_did), fn_did, impl_did); Some(FunctionCandidate { fn_name, did: fn_did, visibility: assoc_item.visibility(ctxt.tcx), sig, has_self, - is_unsafe: sig.safety.is_unsafe(), + is_unsafe: sig.safety().is_unsafe(), kind: trait_did .map(|trait_did| FunctionCandidateKind::TraitImplMethod {trait_did,impl_did}) .unwrap_or(FunctionCandidateKind::Method { impl_did }), notes: vec![], arguments: vec![], ret: FunctionArgCandidate::new(String::from("Return value")), + typing_env }) }) .map(|mut fn_candidate| { @@ -155,6 +152,10 @@ fn generate_functions<'tcx>( return Err(fn_candidate.with_note(GenerationExclusionNote::Reason(String::from("function is not public")))) } + if args.exclude_functions.as_ref().is_some_and(|fns| fns.contains(&fn_candidate.fn_name.to_ident_string())) { + return Err(fn_candidate.with_note(GenerationExclusionNote::Reason(String::from("function excluded through cli argument")))) + } + let function_generics = get_function_generics(ctxt.tcx, fn_candidate.did, fn_candidate.kind.impl_did()); @@ -190,14 +191,12 @@ fn generate_functions<'tcx>( return Err(fn_candidate.with_note(GenerationExclusionNote::Reason("Function is not public and does not come from a trait impl".to_string()))); } - let param_env = TypingEnv::non_body_analysis(ctxt.tcx, def_id); - let arg_names = ctxt.tcx.fn_arg_idents(fn_candidate.did); fn_candidate.arguments = fn_candidate.sig.inputs().iter().zip(arg_names).enumerate().map(|(index, (arg_ty, ident))| { let candidate_input = FunctionArgCandidate::new(ident.map(|id| id.to_string()).unwrap_or(index.to_string())); if type_is_supported_as_non_proxy_arg( ctxt.tcx, - param_env, + fn_candidate.typing_env, &ctxt.cached_traits, *arg_ty, ) { @@ -216,7 +215,7 @@ fn generate_functions<'tcx>( if type_is_supported_as_non_proxy_return_val( ctxt.tcx, - param_env, + fn_candidate.typing_env, &ctxt.cached_traits, fn_candidate.sig.output(), ) { @@ -254,6 +253,7 @@ fn generate_variants<'tcx>( .iter() .map(|variant| { let variant_candidate = VariantCandidate::new(variant); + #[allow(deprecated)] if has_reflect_ignore_attr(ctxt.tcx.get_all_attrs(variant.def_id)) { return Err(variant_candidate.with_note(GenerationExclusionNote::Reason( "variant has 'reflect(ignore)' attribute".to_string(), @@ -280,7 +280,7 @@ fn generate_variants<'tcx>( field.did )))); } - + #[allow(deprecated)] if has_reflect_ignore_attr(ctxt.tcx.get_all_attrs(field.did)) { return Err(candidate.with_note(GenerationExclusionNote::Reason( "field has 'reflect(ignore)' attribute".to_string(), @@ -288,7 +288,10 @@ fn generate_variants<'tcx>( } let field_ty = ctxt.tcx.erase_and_anonymize_regions( - ctxt.tcx.type_of(field.did).instantiate_identity(), + ctxt.tcx + .type_of(field.did) + .instantiate_identity() + .skip_norm_wip(), ); Ok( @@ -473,8 +476,9 @@ pub(crate) fn impls_trait<'tcx>( ty: Ty<'tcx>, trait_did: DefId, ) -> bool { - tcx.infer_ctxt() - .build(param_env.typing_mode) - .type_implements_trait(trait_did, [ty], param_env.param_env) - .must_apply_modulo_regions() + type_implements_trait(tcx, param_env, ty, trait_did).inspect_err(|e| { + trace!( + "Type impls check: '{ty:?}' error: {e}" + ); + }).is_ok() } diff --git a/codegen/src/passes/find_reflect_types.rs b/codegen/src/passes/find_reflect_types.rs index 157c43a3ab..ccafa52ba9 100644 --- a/codegen/src/passes/find_reflect_types.rs +++ b/codegen/src/passes/find_reflect_types.rs @@ -8,6 +8,7 @@ use crate::{ }; /// Finds all reflect types which we can wrap in the crate as well as sorts the final list. +#[allow(clippy::result_large_err)] pub(crate) fn find_reflect_types(ctxt: &mut BevyCtxt<'_>, args: &Args) -> bool { let tcx = &ctxt.tcx; let ignored_types = match &args.cmd { @@ -16,18 +17,19 @@ pub(crate) fn find_reflect_types(ctxt: &mut BevyCtxt<'_>, args: &Args) -> bool { _ => return true, }; + for trait_did in tcx.all_local_trait_impls(()).keys() { // we want to find the canonical `Reflect` trait's implemenations across crates, so let's check all impls and choose those // whose def_path is equal to what we know the Reflect trait's is - let def_path_str = tcx.def_path_str(trait_did); + let def_path_str = tcx.def_path_str(*trait_did); if !DEF_PATHS_REFLECT.contains(&def_path_str.as_str()) { continue; } // this returns non-local impls as well - let reflect_trait_impls = tcx.trait_impls_of(trait_did); + let reflect_trait_impls = tcx.trait_impls_of(*trait_did); // blanket impls are implementations on generics directly, i.e. `impl From for T` // non blanket impls may also contain generics but those will be contained within another type i.e. `impl Default for Vec` @@ -57,6 +59,7 @@ pub(crate) fn find_reflect_types(ctxt: &mut BevyCtxt<'_>, args: &Args) -> bool { ))); } + let generics = tcx.generics_of(*impl_did); if generics.count() > 0 { return Err(early_candidate.with_note(GenerationExclusionNote::Reason( diff --git a/codegen/src/passes/find_trait_impls.rs b/codegen/src/passes/find_trait_impls.rs index cb1e220daf..fdeb18f6a4 100644 --- a/codegen/src/passes/find_trait_impls.rs +++ b/codegen/src/passes/find_trait_impls.rs @@ -62,7 +62,7 @@ pub(crate) fn find_trait_impls(ctxt: &mut BevyCtxt<'_>, _args: &Args) -> bool { "Looking for impls of the traits: [{}]", std_traits .iter() - .map(|d| tcx.def_path_str(*d)) + .map(|d| tcx.def_path_str(**d)) .collect::>() .join(", ") ); @@ -97,17 +97,22 @@ fn type_impl_of_trait( tcx.for_each_relevant_impl( trait_did, - tcx.type_of(reflect_ty_did).instantiate_identity(), + tcx.type_of(*reflect_ty_did) + .instantiate_identity() + .skip_norm_wip(), |impl_did| { trace!( "Possible impl for trait: {:?} on type: {:?} found: {:?}", tcx.def_path_str(trait_did), - tcx.def_path_str(reflect_ty_did), + tcx.def_path_str(*reflect_ty_did), impl_did, ); //TODO: false negatives coming from this inference - let ty = tcx.type_of(reflect_ty_did).instantiate_identity(); + let ty = tcx + .type_of(*reflect_ty_did) + .instantiate_identity() + .skip_norm_wip(); let infcx = tcx.infer_ctxt().build(TypingMode::non_body_analysis()); let result = impl_matches(&infcx, ty, impl_did); log::trace!("Result: {result:#?}"); @@ -155,7 +160,12 @@ fn impl_matches<'tcx>(infcx: &InferCtxt<'tcx>, ty: Ty<'tcx>, impl_def_id: DefId) let impl_predicates = tcx.predicates_of(impl_def_id).instantiate(tcx, impl_args); ocx.register_obligations(impl_predicates.predicates.iter().map(|&predicate| { - Obligation::new(tcx, ObligationCause::dummy(), param_env, predicate) + Obligation::new( + tcx, + ObligationCause::dummy(), + param_env, + predicate.skip_norm_wip(), + ) })); ocx.try_evaluate_obligations().is_empty() diff --git a/codegen/src/passes/populate_template_data.rs b/codegen/src/passes/populate_template_data.rs index a65f364fd7..8466e098ec 100644 --- a/codegen/src/passes/populate_template_data.rs +++ b/codegen/src/passes/populate_template_data.rs @@ -2,7 +2,10 @@ use std::{borrow::Cow, convert::identity, panic}; use log::{trace, warn}; use rustc_hir::def_id::{DefId, LOCAL_CRATE}; -use rustc_middle::ty::{AdtDef, GenericArg, GenericParamDefKind, TraitRef, Ty, TyKind, TypingEnv}; +use rustc_middle::ty::{ + AdtDef, AliasTyKind, GenericArg, GenericParamDefKind, TraitRef, Ty, TyKind, TypingEnv, + Unnormalized, +}; use rustc_span::Symbol; use crate::{ @@ -51,6 +54,7 @@ pub(crate) fn populate_template_data(ctxt: &mut BevyCtxt<'_>, args: &Args) -> bo .variants .iter() .map(|variant| Variant { + #[allow(deprecated)] docstrings: docstrings(ctxt.tcx.get_all_attrs(variant.def.def_id)), name: variant.def.name.to_ident_string().into(), fields: process_fields(ctxt, variant), @@ -66,6 +70,7 @@ pub(crate) fn populate_template_data(ctxt: &mut BevyCtxt<'_>, args: &Args) -> bo is_enum: variants.len() > 1, variants, is_tuple_struct, + #[allow(deprecated)] docstrings: docstrings(tcx.get_all_attrs(reflect_ty_did)), impls_clone: trait_impls.contains_key(&clone_diagnostic), impls_debug: trait_impls.contains_key(&debug_diagnostic), @@ -106,6 +111,7 @@ pub(crate) fn process_fields<'ctx>( .fields .iter() .map(|field| Field { + #[allow(deprecated)] docstrings: docstrings(ctxt.tcx.get_all_attrs(field.did)), ident: field.name.to_ident_string(), ty: ty_to_string(ctxt, ctxt.tcx.type_of(field.did).skip_binder(), false), @@ -127,10 +133,13 @@ pub(crate) fn process_functions<'tcx>( .zip(fn_ctxt.sig.inputs()) .enumerate() .map(|(idx, (ident, ty))| { - let normalized_ty = ctxt.tcx.normalize_erasing_regions( - TypingEnv::non_body_analysis(ctxt.tcx, fn_ctxt.did), - *ty, - ); + let normalized_ty = ctxt + .tcx + .try_normalize_erasing_regions( + TypingEnv::non_body_analysis(ctxt.tcx, fn_ctxt.did), + Unnormalized::new_wip(*ty), + ) + .unwrap_or(*ty); Arg { ident: ident.map(|s| s.to_string()).unwrap_or(format!("arg_{idx}")), ty: ty_to_string(ctxt, normalized_ty, false), @@ -140,10 +149,13 @@ pub(crate) fn process_functions<'tcx>( }) .collect(); - let out_ty = ctxt.tcx.normalize_erasing_regions( - TypingEnv::non_body_analysis(ctxt.tcx, fn_ctxt.did), - fn_ctxt.sig.output(), - ); + let out_ty = ctxt + .tcx + .try_normalize_erasing_regions( + TypingEnv::non_body_analysis(ctxt.tcx, fn_ctxt.did), + Unnormalized::new_wip(fn_ctxt.sig.output()), + ) + .unwrap_or(fn_ctxt.sig.output()); let output = Output { ty: ty_to_string(ctxt, out_ty, false), @@ -159,6 +171,7 @@ pub(crate) fn process_functions<'tcx>( args, output, has_self: fn_ctxt.has_self, + #[allow(deprecated)] docstrings: docstrings(ctxt.tcx.get_all_attrs(fn_ctxt.did)), from_trait_path: fn_ctxt.kind.as_trait_fn().map(|(_, impl_did)| { let trait_ref = ctxt.tcx.impl_trait_ref(impl_did).skip_binder(); @@ -405,7 +418,12 @@ impl<'a> TyPrinter<'a> { self.buffer.push(')'); } TyKind::Alias(_, ty) => { - self.buffer.push_str(&(self.path_finder)(ty.def_id)); + self.buffer.push_str(&(self.path_finder)(match ty.kind { + AliasTyKind::Projection { def_id } + | AliasTyKind::Inherent { def_id } + | AliasTyKind::Opaque { def_id } + | AliasTyKind::Free { def_id } => def_id, + })); self.print_args(ty.args.iter()); } // self is one I think diff --git a/codegen/src/plugin.rs b/codegen/src/plugin.rs index bc5c88cfd6..5283399e3e 100644 --- a/codegen/src/plugin.rs +++ b/codegen/src/plugin.rs @@ -1,16 +1,16 @@ use std::env; +use bevy_mod_scripting_rustc_driver::{CrateFilter, RustcPlugin, RustcPluginArgs, copy_command_without_args}; use cargo_metadata::camino::Utf8Path; use clap::Parser; use log::debug; use crate::{ BevyAnalyzerCallbacks, WorkspaceMeta, - driver::{CrateFilter, RustcPluginArgs}, }; pub struct BevyAnalyzer; -impl crate::driver::RustcPlugin for BevyAnalyzer { +impl RustcPlugin for BevyAnalyzer { type Args = crate::Args; fn version(&self) -> std::borrow::Cow<'static, str> { @@ -30,8 +30,8 @@ impl crate::driver::RustcPlugin for BevyAnalyzer { } } - fn run(self, compiler_args: Vec, plugin_args: Self::Args) { - let mut callbacks = BevyAnalyzerCallbacks::new(plugin_args); + fn run(self, compiler_args: Vec, plugin_args: RustcPluginArgs) { + let mut callbacks = BevyAnalyzerCallbacks::new(plugin_args.args); rustc_driver_impl::run_compiler(&compiler_args, &mut callbacks); log::trace!("Finished compiling with plugin"); @@ -77,16 +77,3 @@ impl crate::driver::RustcPlugin for BevyAnalyzer { log::debug!("Running cargo build command: \n{all_env} {bin_name} {args}",); } } - -fn copy_command_without_args( - cmd: &std::process::Command, - arg_filter: &[&str], -) -> std::process::Command { - let mut new_cmd = std::process::Command::new(cmd.get_program()); - new_cmd.args( - cmd.get_args() - .filter(|a| !arg_filter.iter().any(|f| f == a)), - ); - new_cmd.envs(cmd.get_envs().filter_map(|(a, b)| b.map(|b| (a, b)))); - new_cmd -} diff --git a/crates/bevy_mod_scripting_bindings/src/function/from_ref.rs b/crates/bevy_mod_scripting_bindings/src/function/from_ref.rs index 94be0ede7a..5239d44a23 100644 --- a/crates/bevy_mod_scripting_bindings/src/function/from_ref.rs +++ b/crates/bevy_mod_scripting_bindings/src/function/from_ref.rs @@ -6,8 +6,12 @@ use crate::{ }; use bevy_mod_scripting_world::WorldGuard; use bevy_reflect::{ - DynamicEnum, DynamicList, DynamicMap, DynamicSet, DynamicTuple, DynamicVariant, Map, - PartialReflect, ReflectKind, Set, + PartialReflect, ReflectKind, + enums::{DynamicEnum, DynamicVariant}, + list::DynamicList, + map::{DynamicMap, Map}, + set::{DynamicSet, Set}, + tuple::DynamicTuple, }; use std::{any::TypeId, ffi::OsString, path::PathBuf}; diff --git a/crates/bevy_mod_scripting_bindings/src/path/mod.rs b/crates/bevy_mod_scripting_bindings/src/path/mod.rs index 6ae6ddeeca..c1dbbf7d77 100644 --- a/crates/bevy_mod_scripting_bindings/src/path/mod.rs +++ b/crates/bevy_mod_scripting_bindings/src/path/mod.rs @@ -6,7 +6,9 @@ use bevy_mod_scripting_asset::Language; use bevy_mod_scripting_derive::DebugWithTypeInfo; use bevy_mod_scripting_display::DisplayWithTypeInfo; use bevy_mod_scripting_world::WorldGuard; -use bevy_reflect::{PartialReflect, ReflectMut, ReflectRef, TypeInfo, TypeRegistry}; +use bevy_reflect::{ + PartialReflect, ReflectMut, ReflectRef, TypeInfo, TypeRegistry, enums::VariantType, +}; use crate::{ScriptValue, convert}; @@ -149,11 +151,9 @@ impl ReferencePart { ReflectRef::List(x) => x.get(self.expect_integer(one_indexed)? as usize), ReflectRef::Array(x) => x.get(self.expect_integer(one_indexed)? as usize), ReflectRef::Enum(x) => match x.variant_type() { - bevy_reflect::VariantType::Struct => x.field(self.expect_string()?), - bevy_reflect::VariantType::Tuple => { - x.field_at(self.expect_integer(one_indexed)? as usize) - } - bevy_reflect::VariantType::Unit => return Err(()), + VariantType::Struct => x.field(self.expect_string()?), + VariantType::Tuple => x.field_at(self.expect_integer(one_indexed)? as usize), + VariantType::Unit => return Err(()), }, ReflectRef::Map(x) => { let id = x.get_represented_map_info().ok_or(())?.key_ty().id(); @@ -190,11 +190,9 @@ impl ReferencePart { ReflectMut::List(x) => x.get_mut(self.expect_integer(one_indexed)? as usize), ReflectMut::Array(x) => x.get_mut(self.expect_integer(one_indexed)? as usize), ReflectMut::Enum(x) => match x.variant_type() { - bevy_reflect::VariantType::Struct => x.field_mut(self.expect_string()?), - bevy_reflect::VariantType::Tuple => { - x.field_at_mut(self.expect_integer(one_indexed)? as usize) - } - bevy_reflect::VariantType::Unit => return Err(()), + VariantType::Struct => x.field_mut(self.expect_string()?), + VariantType::Tuple => x.field_at_mut(self.expect_integer(one_indexed)? as usize), + VariantType::Unit => return Err(()), }, ReflectMut::Map(x) => { let id = x.get_represented_map_info().ok_or(())?.key_ty().id(); diff --git a/crates/bevy_mod_scripting_bindings/src/reference.rs b/crates/bevy_mod_scripting_bindings/src/reference.rs index c030dca757..28f609ab4d 100644 --- a/crates/bevy_mod_scripting_bindings/src/reference.rs +++ b/crates/bevy_mod_scripting_bindings/src/reference.rs @@ -753,15 +753,13 @@ impl ReflectBaseType { // Convert the TypeId to ComponentId via unsafe world cell let world_cell = world.as_unsafe_world_cell()?; let components = world_cell.components(); - let assets_resource_id = components - .get_resource_id(assets_resource_type_id) - .ok_or_else(|| { - InteropError::unsupported_operation( - Some(assets_resource_type_id), - None, - "Assets resource is not registered in the world", - ) - })?; + let assets_resource_id = components.get_id(assets_resource_type_id).ok_or_else(|| { + InteropError::unsupported_operation( + Some(assets_resource_type_id), + None, + "Assets resource is not registered in the world", + ) + })?; Ok(Self { type_id: asset_type_id, diff --git a/crates/bevy_mod_scripting_bindings/src/reflection_extensions.rs b/crates/bevy_mod_scripting_bindings/src/reflection_extensions.rs index ddad55a998..871ede46c9 100644 --- a/crates/bevy_mod_scripting_bindings/src/reflection_extensions.rs +++ b/crates/bevy_mod_scripting_bindings/src/reflection_extensions.rs @@ -495,7 +495,7 @@ impl TypeInfoExtensions for TypeInfo { #[cfg(test)] mod test { use bevy_platform::collections::HashMap; - use bevy_reflect::{DynamicMap, Map}; + use bevy_reflect::map::{DynamicMap, Map}; use super::*; diff --git a/crates/bevy_mod_scripting_bindings/src/schedule.rs b/crates/bevy_mod_scripting_bindings/src/schedule.rs index 27a17ce89a..a0754a179a 100644 --- a/crates/bevy_mod_scripting_bindings/src/schedule.rs +++ b/crates/bevy_mod_scripting_bindings/src/schedule.rs @@ -233,7 +233,7 @@ mod tests { NodeId::System(system_key) => graph .systems .get(system_key) - .map(|system| system.system.name().clone().to_string()), + .map(|system| system.system().name().clone().to_string()), NodeId::Set(system_set_key) => graph .system_sets .get(system_set_key) diff --git a/crates/bevy_mod_scripting_bindings/src/world_extensions.rs b/crates/bevy_mod_scripting_bindings/src/world_extensions.rs index 3cdaad8b95..7b314a85bc 100644 --- a/crates/bevy_mod_scripting_bindings/src/world_extensions.rs +++ b/crates/bevy_mod_scripting_bindings/src/world_extensions.rs @@ -27,8 +27,9 @@ use ::{ world::World, }, bevy_reflect::{ - DynamicEnum, DynamicStruct, DynamicTuple, DynamicTupleStruct, DynamicVariant, - PartialReflect, std_traits::ReflectDefault, + PartialReflect, + enums::{DynamicEnum, DynamicVariant}, + std_traits::ReflectDefault, }, }; use bevy_app::AppExit; @@ -44,7 +45,10 @@ use bevy_mod_scripting_asset::ScriptAsset; use bevy_mod_scripting_script::ScriptAttachment; use bevy_mod_scripting_world::{CachedRegistry, RegistryCache, WorldAccessGuard, WorldGuard}; use bevy_platform::collections::HashMap; -use bevy_reflect::{GetTypeRegistration, TypeInfo, VariantInfo}; +use bevy_reflect::{ + GetTypeRegistration, TypeInfo, enums::VariantInfo, structs::DynamicStruct, tuple::DynamicTuple, + tuple_struct::DynamicTupleStruct, +}; use bevy_system_reflection::ReflectSchedule; use std::{ alloc::Layout, @@ -159,7 +163,7 @@ pub trait WorldExtensions { fn with_resource O>(&self, f: F) -> Result; /// Executes a closure with mutable access to a resource. - fn with_resource_mut) -> O>( + fn with_resource_mut, O, F: FnOnce(Mut) -> O>( &self, f: F, ) -> Result; @@ -605,7 +609,8 @@ impl<'w> WorldExtensions for WorldAccessGuard<'w> { &self, registration: ScriptResourceRegistration, ) -> Result<(), InteropError> { - let component_data = registration + // check is a resource + registration .type_registration() .type_registration() .data::() @@ -617,7 +622,9 @@ impl<'w> WorldExtensions for WorldAccessGuard<'w> { })?; // TODO: this shouldn't need entire world access it feels - self.with_world_mut(|world| component_data.remove(world)) + self.with_world_mut(|world| { + let _ = world.remove_resource_by_id(registration.resource_id); + }) } fn has_resource(&self, resource_id: ComponentId) -> Result { @@ -642,7 +649,7 @@ impl<'w> WorldExtensions for WorldAccessGuard<'w> { }) } - fn with_resource_mut) -> O>( + fn with_resource_mut, O, F: FnOnce(Mut) -> O>( &self, f: F, ) -> Result { diff --git a/crates/bevy_mod_scripting_core/src/commands.rs b/crates/bevy_mod_scripting_core/src/commands.rs index 679ff960cd..1b74412087 100644 --- a/crates/bevy_mod_scripting_core/src/commands.rs +++ b/crates/bevy_mod_scripting_core/src/commands.rs @@ -11,7 +11,11 @@ use crate::{ pipeline::RunProcessingPipelineOnce, script::Context, }; -use bevy_ecs::{system::Command, world::World}; +use bevy_ecs::{ + error::{BevyError, Severity}, + system::Command, + world::World, +}; use bevy_log::trace; use bevy_mod_scripting_bindings::{CurrentScriptAttachment, ScriptValue, WorldExtensions}; use bevy_mod_scripting_display::DisplayProxy; @@ -194,7 +198,7 @@ impl RunScriptCallback

{ /// Equivalent to running the command, but also returns the result of the callback. /// /// The returned errors will NOT be sent as events or printed unless send errors is set to true - pub fn run(mut self, world: &mut World) -> Result { + fn run(mut self, world: &mut World) -> Result { let script_contexts = world.get_resource_or_init::>().clone(); let script_callbacks = world.get_resource_or_init::>().clone(); let cache = WorldAccessGuard::setup_cache( @@ -220,9 +224,12 @@ impl RunScriptCallback

{ } impl Command for RunScriptCallback

{ - fn apply(self, world: &mut World) { - let _ = self.run(world); + fn apply(self, world: &mut World) -> Self::Out { + // inner handling already logs + self.run(world) + .map_err(|e| BevyError::from(e).with_severity(Severity::Ignore)) } + type Out = Result; } /// Command which emits a [`ScriptAttachedEvent`] and then runs the processing pipeline to immediately process it. @@ -252,6 +259,7 @@ impl Command for AttachScript

{ world.write_message(self.0); RunProcessingPipelineOnce::

::new(Some(Duration::from_secs(9999))).apply(world) } + type Out = (); } impl Command for DetachScript

{ @@ -259,4 +267,5 @@ impl Command for DetachScript

{ world.write_message(self.0); RunProcessingPipelineOnce::

::new(Some(Duration::from_secs(9999))).apply(world) } + type Out = (); } diff --git a/crates/bevy_mod_scripting_core/src/extractors.rs b/crates/bevy_mod_scripting_core/src/extractors.rs index 3599539c2e..116ef0da9f 100644 --- a/crates/bevy_mod_scripting_core/src/extractors.rs +++ b/crates/bevy_mod_scripting_core/src/extractors.rs @@ -4,12 +4,9 @@ use bevy_ecs::{ component::ComponentId, - query::{Access, AccessConflicts}, - storage::SparseSetIndex, + query::{Access, AccessConflicts, ComponentIdSet}, }; -use fixedbitset::FixedBitSet; - // /// A wrapper around a world which pre-populates access, to safely co-exist with other system params, // /// acts exactly like `&mut World` so this should be your only top-level system param // /// @@ -131,10 +128,10 @@ use fixedbitset::FixedBitSet; // } // } -fn individual_conflicts(conflicts: AccessConflicts) -> FixedBitSet { +fn individual_conflicts(conflicts: AccessConflicts) -> ComponentIdSet { match conflicts { // todo, not sure what to do here - AccessConflicts::All => FixedBitSet::new(), + AccessConflicts::All => ComponentIdSet::new(), AccessConflicts::Individual(fixed_bit_set) => fixed_bit_set, } } @@ -155,106 +152,12 @@ pub(crate) fn get_all_access_ids(access: &Access) -> Vec<(ComponentId, bool)> { read.difference_with(&written); let mut result = Vec::new(); - for c in read.ones() { - result.push((ComponentId::get_sparse_set_index(c), false)); + for c in read.iter() { + result.push((c, false)); } - for c in written.ones() { - result.push((ComponentId::get_sparse_set_index(c), true)); + for c in written.iter() { + result.push((c, true)); } result } - -// #[cfg(test)] -// mod test { -// use crate::config::{GetPluginThreadConfig, ScriptingPluginConfiguration}; -// use bevy_ecs::resource::Resource; -// use bevy_mod_scripting_bindings::ScriptValue; -// use test_utils::make_test_plugin; - -// use { -// bevy_app::{App, Plugin, Update}, -// bevy_ecs::{ -// component::Component, -// entity::Entity, -// event::{Event, EventReader}, -// system::{Query, ResMut}, -// }, -// }; - -// use super::*; - -// make_test_plugin!(crate); - -// #[derive(Component)] -// struct Comp; - -// #[derive(Resource, Default)] -// struct Res; - -// #[test] -// pub fn check_with_world_correctly_locks_resource_and_component() { -// let system_fn = |mut guard: WithWorldGuard<(ResMut, Query<&'static Comp>)>| { -// let (guard, (_res, _entity)) = guard.get_mut(); -// assert_eq!(guard.list_accesses().len(), 2, "Expected 2 accesses"); -// assert!( -// !guard.claim_read_access( -// ReflectAccessId::for_resource::(&guard.as_unsafe_world_cell().unwrap()) -// .unwrap() -// ) -// ); -// assert!( -// !guard.claim_write_access( -// ReflectAccessId::for_resource::(&guard.as_unsafe_world_cell().unwrap()) -// .unwrap() -// ) -// ); -// }; - -// let mut app = App::new(); -// app.add_systems(Update, system_fn); -// app.insert_resource(Res); -// app.world_mut().spawn(Comp); - -// app.cleanup(); -// app.finish(); -// app.update(); -// } - -// #[test] -// #[should_panic( -// expected = "WithWorldGuard must be the only top-level system param, cannot run system" -// )] -// pub fn check_with_world_panics_when_used_with_resource_top_level() { -// let system_fn = |_res: ResMut, mut _guard: WithWorldGuard>| {}; - -// let mut app = App::new(); -// app.add_systems(Update, system_fn); -// app.insert_resource(Res); -// app.world_mut().spawn(Comp); - -// app.cleanup(); -// app.finish(); -// app.update(); -// } - -// #[test] -// #[should_panic( -// expected = "WithWorldGuard must be the only top-level system param, cannot run system" -// )] -// pub fn check_with_world_panics_when_used_with_event_reader_top_level() { -// #[derive(Event)] -// struct TestEvent; -// let system_fn = -// |_res: EventReader, mut _guard: WithWorldGuard>| {}; - -// let mut app = App::new(); -// app.add_systems(Update, system_fn); -// app.insert_resource(Res); -// app.world_mut().spawn(Comp); - -// app.cleanup(); -// app.finish(); -// app.update(); -// } -// } diff --git a/crates/bevy_mod_scripting_core/src/handler.rs b/crates/bevy_mod_scripting_core/src/handler.rs index c61e709339..66397ec926 100644 --- a/crates/bevy_mod_scripting_core/src/handler.rs +++ b/crates/bevy_mod_scripting_core/src/handler.rs @@ -88,12 +88,12 @@ impl ScriptingHandler

for P { pub fn event_handler( world: &mut World, state: &mut SystemState>>, -) { +) -> bevy_ecs::error::Result { // we wrap the inner event handler, so that we can guarantee that the handler context is released statically { let script_context = world.get_resource_or_init::>().clone(); let script_callbacks = world.get_resource_or_init::>().clone(); - let event_cursor = state.get_mut(world); + let event_cursor = state.get_mut(world)?; let cache = WorldAccessGuard::setup_cache(world, CurrentScriptAttachment::default()); let guard = WorldAccessGuard::new_exclusive(world, cache); event_handler_inner::

( @@ -103,6 +103,7 @@ pub fn event_handler( script_callbacks, guard, ); + Ok(()) } } @@ -116,13 +117,14 @@ pub(crate) fn event_handler_inner( guard: WorldAccessGuard, ) { let mut errors = Vec::default(); - let events = guard.with_resource(|events: &Messages| { - event_cursor - .read(events) - .filter(|e| e.label == callback_label) - .cloned() - .collect::>() - }); + let events: Result, InteropError> = + guard.with_resource(|events: &Messages| { + event_cursor + .read(events) + .filter(|e| e.label == callback_label) + .cloned() + .collect::>() + }); let events = match events { Ok(events) => events, @@ -180,6 +182,7 @@ pub(crate) fn event_handler_inner( .with_type_info_context(Some("args: "), event.args.clone()) .with_language(P::LANGUAGE) }); + drop(ctxt); if event.trigger_response { diff --git a/crates/bevy_mod_scripting_core/src/pipeline/mod.rs b/crates/bevy_mod_scripting_core/src/pipeline/mod.rs index 50e72ba877..72c2f70fdf 100644 --- a/crates/bevy_mod_scripting_core/src/pipeline/mod.rs +++ b/crates/bevy_mod_scripting_core/src/pipeline/mod.rs @@ -203,14 +203,20 @@ impl Plugin for ScriptLoadingPipeline

{ app.init_resource::(); + // bevy considers the ordering on observers watching the same event to be arbitrary, this order + // flipped in bevy 0.19, + // now the first observer registered is the last/ + // we probably shouldn't rely on that, but it's convenient for separation of concerns + + // reloaded observer goes last + if self.on_script_reloaded_callback { + app.add_observer(on_script_reloaded_pipeline_handler::

); + } + // load observer goes first if self.on_script_loaded_callback { app.add_observer(on_script_loaded_pipeline_handler::

); } - // then reload - if self.on_script_reloaded_callback { - app.add_observer(on_script_reloaded_pipeline_handler::

); - } // these are the only triggers on their events if self.on_script_unloaded_callback { @@ -315,6 +321,8 @@ impl Command for RunProcessingPipelineOnce

{ machines.budget = last_setting; } } + + type Out = (); } /// A system which runs [`RunProcessingPipelineOnce`] command for the plugin only if there are active machines @@ -422,7 +430,7 @@ mod test { SystemState::>::from_world(world); // start empty { - let mut state = system_state.get_mut(world); + let mut state = system_state.get_mut(world).unwrap(); let loaded = state.get_loaded().collect::>(); assert!(loaded.is_empty()) } @@ -443,7 +451,7 @@ mod test { // expect one loading, one invalid { - let mut state = system_state.get_mut(world); + let mut state = system_state.get_mut(world).unwrap(); let loaded = state.get_loaded().collect::>(); assert!(loaded.is_empty()); assert_eq!(state.loading.len(), 1); @@ -451,7 +459,7 @@ mod test { // now on next call the old ones don't persist { - let mut state = system_state.get_mut(world); + let mut state = system_state.get_mut(world).unwrap(); let loaded = state.get_loaded().collect::>(); assert!(loaded.is_empty()) } diff --git a/crates/bevy_mod_scripting_core/src/script_system.rs b/crates/bevy_mod_scripting_core/src/script_system.rs index 632879e6fd..ad18495ca0 100644 --- a/crates/bevy_mod_scripting_core/src/script_system.rs +++ b/crates/bevy_mod_scripting_core/src/script_system.rs @@ -190,6 +190,7 @@ struct ScriptSystemState { system_params: Vec, script_contexts: ScriptContexts

, script_callbacks: ScriptCallbacks

, + initialization_errors: Result<(), Vec>, } /// Equivalent of [`bevy_ecs::system::SystemParam`] but for dynamic systems, these are the kinds of things @@ -302,6 +303,10 @@ impl System for DynamicScriptSystem

{ } }; + if let Err(Some(first)) = state.initialization_errors.as_mut().map_err(|e| e.pop()) { + return Err(RunSystemError::Skipped(first)); + } + // TODO: cache references which don't change once we have benchmarks for param in &mut state.system_params { match param { @@ -390,6 +395,7 @@ impl System for DynamicScriptSystem

{ let mut subset = HashSet::::new(); let mut system_params = Vec::with_capacity(self.system_param_descriptors.len()); let mut component_access_set = FilteredAccessSet::new(); + let mut initialization_errors: Result<(), Vec> = Ok(()); for param in &self.system_param_descriptors { match param { ScriptSystemParamDescriptor::Res(res) => { @@ -404,14 +410,17 @@ impl System for DynamicScriptSystem

{ let mut access = FilteredAccess::matches_nothing(); - access.add_resource_write(component_id); + access.add_write(component_id); component_access_set.add(access); - #[allow( - clippy::panic, - reason = "WIP, to be dealt with in validate params better, but panic will still remain" - )] if subset.contains(&component_id) { - panic!("Duplicate resource access in system: {component_id:?}."); + initialization_errors = Err(initialization_errors + .err() + .unwrap_or_default() + .into_iter() + .chain([SystemParamValidationError::skipped::<()>(format!( + "Duplicate resource access in system: {component_id:?}." + ))]) + .collect()); } subset.insert(component_id); } @@ -431,12 +440,15 @@ impl System for DynamicScriptSystem

{ .map(|(a, _)| a) .collect::>(); - #[allow( - clippy::panic, - reason = "WIP, to be dealt with in validate params better, but panic will still remain" - )] if !subset.is_disjoint(&new_raids) { - panic!("Non-disjoint query in dynamic system parameters."); + initialization_errors = Err(initialization_errors + .err() + .unwrap_or_default() + .into_iter() + .chain([SystemParamValidationError::skipped::<()>( + "Non-disjoint query in dynamic system parameters.".to_string(), + )]) + .collect()); } system_params.push(ScriptSystemParam::EntityQuery { @@ -466,6 +478,7 @@ impl System for DynamicScriptSystem

{ system_params, script_contexts: world.get_resource_or_init::>().clone(), script_callbacks: world.get_resource_or_init::>().clone(), + initialization_errors, }); component_access_set @@ -487,13 +500,6 @@ impl System for DynamicScriptSystem

{ fn queue_deferred(&mut self, _world: DeferredWorld) {} - unsafe fn validate_param_unsafe( - &mut self, - _world: UnsafeWorldCell, - ) -> Result<(), SystemParamValidationError> { - Ok(()) - } - fn default_system_sets(&self) -> Vec { vec![ScriptSystemSet::new(self.name.clone()).intern()] } @@ -501,14 +507,6 @@ impl System for DynamicScriptSystem

{ fn type_id(&self) -> TypeId { TypeId::of::() } - - fn validate_param(&mut self, world: &World) -> Result<(), SystemParamValidationError> { - let world_cell = world.as_unsafe_world_cell_readonly(); - // SAFETY: - // - We have exclusive access to the entire world. - // - `update_archetype_component_access` has been called. - unsafe { self.validate_param_unsafe(world_cell) } - } } /// A trait for managing script systems in schedules dynamically diff --git a/crates/bevy_mod_scripting_display/src/printer/mod.rs b/crates/bevy_mod_scripting_display/src/printer/mod.rs index bccfda99f7..2110271438 100644 --- a/crates/bevy_mod_scripting_display/src/printer/mod.rs +++ b/crates/bevy_mod_scripting_display/src/printer/mod.rs @@ -1,4 +1,7 @@ -use bevy_reflect::{DynamicTypePath, PartialReflect, ReflectRef, VariantField}; +use bevy_reflect::{ + DynamicTypePath, PartialReflect, ReflectRef, + enums::{VariantField, VariantType}, +}; use crate::*; @@ -42,9 +45,9 @@ impl<'f, 'b: 'f, 't> ReflectPrinter<'f, 'b, 't> { .formatter .debug_struct_with_type_info(s.reflect_ident_or_short_path(), self.type_info) .build_with(|mut b| { - for (i, field) in s.iter_fields().enumerate() { + for (field_name, field) in s.iter_fields() { b.field( - s.name_at(i).unwrap_or("unknown"), + field_name, &PrintReflectAsDebug::new_with_opt_info(field, self.type_info), ); } @@ -127,7 +130,7 @@ impl<'f, 'b: 'f, 't> ReflectPrinter<'f, 'b, 't> { }) .finish(), ReflectRef::Enum(e) => { - let is_tuple = !matches!(e.variant_type(), bevy_reflect::VariantType::Struct); + let is_tuple = !matches!(e.variant_type(), VariantType::Struct); let variant_path = e.variant_name(); if is_tuple { self.formatter diff --git a/crates/bevy_mod_scripting_world/src/world.rs b/crates/bevy_mod_scripting_world/src/world.rs index 08da51d714..26dfd468fd 100644 --- a/crates/bevy_mod_scripting_world/src/world.rs +++ b/crates/bevy_mod_scripting_world/src/world.rs @@ -430,16 +430,23 @@ impl<'w> WorldAccessGuard<'w> { /// Gets the resource id of the given component or resource pub fn get_resource_id(&self, id: TypeId) -> Result, DynWorldAccessError> { - Ok(self - .as_unsafe_world_cell_readonly()? + let cell = self.as_unsafe_world_cell_readonly()?; + Ok(cell .components() - .get_resource_id(id)) + .get_id(id) + // Safety: we are not updating the cache + .and_then(|id| { + unsafe { cell.resource_entities() } + .get(id) + .is_some() + .then_some(id) + })) } fn resource_component_id(&self) -> Result { self.as_unsafe_world_cell()? .components() - .resource_id::() + .get_id(TypeId::of::()) .ok_or_else(|| DynWorldAccessError::UnregisteredResource(TypeId::of::())) } diff --git a/crates/bevy_system_reflection/src/lib.rs b/crates/bevy_system_reflection/src/lib.rs index 5867a10b52..98615c0a5a 100644 --- a/crates/bevy_system_reflection/src/lib.rs +++ b/crates/bevy_system_reflection/src/lib.rs @@ -52,7 +52,7 @@ impl ReflectSystem { ) -> Self { ReflectSystem { name: system.name().into(), - type_id: system.type_id(), + type_id: system.system_type(), node_id: ReflectNodeId(NodeId::System(node_id)), default_system_sets: system.default_system_sets(), } diff --git a/crates/bindings/bevy_a11y_bms_bindings/Cargo.toml b/crates/bindings/bevy_a11y_bms_bindings/Cargo.toml index dfd95040a5..34e806feca 100644 --- a/crates/bindings/bevy_a11y_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_a11y_bms_bindings/Cargo.toml @@ -20,15 +20,15 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_a11y = { version = "0.18.1", features = ["bevy_reflect", "std"], default-features = true} +bevy_a11y = { version = "0.19.0", features = ["bevy_reflect", "std"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} diff --git a/crates/bindings/bevy_a11y_bms_bindings/src/lib.rs b/crates/bindings/bevy_a11y_bms_bindings/src/lib.rs index 8e8f510b48..401a7a3e4d 100644 --- a/crates/bindings/bevy_a11y_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_a11y_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -139,60 +140,41 @@ pub(crate) fn register_accessibility_systems_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_a11y::AccessibilitySystems, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_a11y::AccessibilitySystems>| { - let output: () = { - { - let output: () = <::bevy_a11y::AccessibilitySystems as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_a11y::AccessibilitySystems>| { - let output: V<::bevy_a11y::AccessibilitySystems> = { - { - let output: V<::bevy_a11y::AccessibilitySystems> = <::bevy_a11y::AccessibilitySystems as ::core::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_a11y::AccessibilitySystems>| { + let output: V<::bevy_a11y::AccessibilitySystems> = { + { + let output: V<::bevy_a11y::AccessibilitySystems> = + <::bevy_a11y::AccessibilitySystems as ::core::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_a11y::AccessibilitySystems>, - other: R<::bevy_a11y::AccessibilitySystems>| - { - let output: bool = { - { - let output: bool = <::bevy_a11y::AccessibilitySystems as ::core::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_a11y::AccessibilitySystems>, + other: R<::bevy_a11y::AccessibilitySystems>| { + let output: bool = { + { + let output: bool = + <::bevy_a11y::AccessibilitySystems as ::core::cmp::PartialEq< ::bevy_a11y::AccessibilitySystems, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry diff --git a/crates/bindings/bevy_animation_bms_bindings/Cargo.toml b/crates/bindings/bevy_animation_bms_bindings/Cargo.toml index c419bed796..3bebc637aa 100644 --- a/crates/bindings/bevy_animation_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_animation_bms_bindings/Cargo.toml @@ -20,32 +20,32 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_animation = { version = "0.18.1", features = ["bevy_mesh"], default-features = true} +bevy_animation = { version = "0.19.0", features = ["bevy_mesh"], default-features = true} -bevy_animation_macros = { version = "^0.18.0", features = [], default-features = true} +bevy_animation_macros = { version = "^0.19.0", features = [], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_mesh = { version = "^0.18.0", features = ["bevy_mikktspace", "morph"], default-features = true} +bevy_mesh = { version = "^0.19.0", features = ["bevy_mikktspace", "morph"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_time = { version = "^0.18.0", features = ["bevy_reflect", "std"], default-features = true} +bevy_time = { version = "^0.19.0", features = ["bevy_reflect", "std"], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} blake3 = { version = "^1.0", features = [], default-features = true} @@ -59,6 +59,6 @@ serde = { version = "^1", features = [], default-features = true} thread_local = { version = "^1", features = [], default-features = true} -uuid = { version = "^1.13.1", features = [], default-features = true} +uuid = { version = "^1.21.0", features = [], default-features = true} diff --git a/crates/bindings/bevy_animation_bms_bindings/src/lib.rs b/crates/bindings/bevy_animation_bms_bindings/src/lib.rs index 73410738cc..c823e142a1 100644 --- a/crates/bindings/bevy_animation_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_animation_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -46,23 +47,6 @@ pub(crate) fn register_animation_graph_handle_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_animation::graph::AnimationGraphHandle, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_animation::graph::AnimationGraphHandle>| { - let output: () = { - { - let output: () = <::bevy_animation::graph::AnimationGraphHandle as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_animation::graph::AnimationGraphHandle>| { @@ -325,77 +309,56 @@ pub(crate) fn register_animation_target_id_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_animation::AnimationTargetId, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_animation::AnimationTargetId>| { - let output: () = { - { - let output: () = <::bevy_animation::AnimationTargetId as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_animation::AnimationTargetId>| { - let output: V<::bevy_animation::AnimationTargetId> = { - { - let output: V<::bevy_animation::AnimationTargetId> = <::bevy_animation::AnimationTargetId as ::std::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_animation::AnimationTargetId>| { + let output: V<::bevy_animation::AnimationTargetId> = { + { + let output: V<::bevy_animation::AnimationTargetId> = + <::bevy_animation::AnimationTargetId as ::std::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_animation::AnimationTargetId>, - other: R<::bevy_animation::AnimationTargetId>| - { - let output: bool = { - { - let output: bool = <::bevy_animation::AnimationTargetId as ::std::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_animation::AnimationTargetId>, + other: R<::bevy_animation::AnimationTargetId>| { + let output: bool = { + { + let output: bool = + <::bevy_animation::AnimationTargetId as ::std::cmp::PartialEq< ::bevy_animation::AnimationTargetId, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "from_name", - |name: R<::bevy_ecs::name::Name>| { - let output: V<::bevy_animation::AnimationTargetId> = { - { - let output: V<::bevy_animation::AnimationTargetId> = ::bevy_animation::AnimationTargetId::from_name( - &name, - ) - .into(); - output - } - }; - output - }, - " Creates a new [`AnimationTargetId`] by hashing a single name.", - &["name"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "from_name", + |name: R<::bevy_ecs::name::Name>| { + let output: V<::bevy_animation::AnimationTargetId> = { + { + let output: V<::bevy_animation::AnimationTargetId> = + ::bevy_animation::AnimationTargetId::from_name(&name).into(); + output + } + }; + output + }, + " Creates a new [`AnimationTargetId`] by hashing a single name.", + &["name"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -435,60 +398,41 @@ pub(crate) fn register_repeat_animation_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_animation::RepeatAnimation, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_animation::RepeatAnimation>| { - let output: () = { - { - let output: () = <::bevy_animation::RepeatAnimation as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_animation::RepeatAnimation>| { - let output: V<::bevy_animation::RepeatAnimation> = { - { - let output: V<::bevy_animation::RepeatAnimation> = <::bevy_animation::RepeatAnimation as ::std::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_animation::RepeatAnimation>| { + let output: V<::bevy_animation::RepeatAnimation> = { + { + let output: V<::bevy_animation::RepeatAnimation> = + <::bevy_animation::RepeatAnimation as ::std::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_animation::RepeatAnimation>, - other: R<::bevy_animation::RepeatAnimation>| - { - let output: bool = { - { - let output: bool = <::bevy_animation::RepeatAnimation as ::std::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_animation::RepeatAnimation>, + other: R<::bevy_animation::RepeatAnimation>| { + let output: bool = { + { + let output: bool = + <::bevy_animation::RepeatAnimation as ::std::cmp::PartialEq< ::bevy_animation::RepeatAnimation, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -603,6 +547,40 @@ pub(crate) fn register_active_animation_functions(world: &mut World) { " Returns true if the animation is playing in reverse.", &["_self"], ) + .register_documented( + "just_completed", + |_self: R<::bevy_animation::ActiveAnimation>| { + let output: bool = { + { + let output: bool = ::bevy_animation::ActiveAnimation::just_completed( + &_self, + ) + .into(); + output + } + }; + output + }, + " Returns true if the animation was completed at least once this tick.", + &["_self"], + ) + .register_documented( + "last_seek_time", + |_self: R<::bevy_animation::ActiveAnimation>| { + let output: ::std::option::Option = { + { + let output: ::std::option::Option = ::bevy_animation::ActiveAnimation::last_seek_time( + &_self, + ) + .into(); + output + } + }; + output + }, + " Returns the last seek time of the animation.", + &["_self"], + ) .register_documented( "repeat_mode", |_self: R<::bevy_animation::ActiveAnimation>| { @@ -768,6 +746,18 @@ pub(crate) fn register_threaded_animation_graph_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_weights_curve_sample_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_animation::animation_curves::WeightsCurveSample, + >::new(world); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_animation::animation_curves::WeightsCurveSample, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_animation_transitions_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_animation::transition::AnimationTransitions, @@ -884,6 +874,7 @@ impl Plugin for BevyAnimationScriptingPlugin { register_cubic_rotation_curve_functions(&mut world); register_animation_graph_node_functions(&mut world); register_threaded_animation_graph_functions(&mut world); + register_weights_curve_sample_functions(&mut world); register_animation_transitions_functions(&mut world); register_animation_transition_functions(&mut world); } diff --git a/crates/bindings/bevy_app_bms_bindings/Cargo.toml b/crates/bindings/bevy_app_bms_bindings/Cargo.toml new file mode 100644 index 0000000000..6f2b9461b0 --- /dev/null +++ b/crates/bindings/bevy_app_bms_bindings/Cargo.toml @@ -0,0 +1,40 @@ +[package] +name = "bevy_app_bms_bindings" +description = "Automatically generated bindings for bevy_app crate" +readme = "README.md" +version.workspace = true +edition.workspace = true +authors.workspace = true +license.workspace = true +homepage.workspace = true +repository.workspace = true +keywords.workspace = true +categories.workspace = true + +[lib] +test = false + +[dependencies] + + +bevy_mod_scripting_core = { workspace = true } +bevy_mod_scripting_bindings = { workspace = true } +bevy_mod_scripting_derive = { workspace = true } +bevy_app = { version = "0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} + + +bevy_derive = { version = "^0.19.0", features = [], default-features = true} + +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} + +bevy_platform = { version = "^0.19.0", features = ["alloc", "futures-lite", "serialize", "std"], default-features = true} + +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} + +ctrlc = { version = "^3.4.4", features = [], default-features = true} + +downcast-rs = { version = "^2", features = ["std"], default-features = false} + +variadics_please = { version = "^1.1", features = [], default-features = true} + + diff --git a/crates/bindings/bevy_app_bms_bindings/README.md b/crates/bindings/bevy_app_bms_bindings/README.md new file mode 100644 index 0000000000..3d0061a3ee --- /dev/null +++ b/crates/bindings/bevy_app_bms_bindings/README.md @@ -0,0 +1,4 @@ +# bevy_app bindings +This crate is part of the [bevy_mod_scripting](http://github.com/makspll/bevy_mod_scripting) project. + +The code inside is fully generated via a custom rustc plugin. \ No newline at end of file diff --git a/crates/bindings/bevy_app_bms_bindings/src/lib.rs b/crates/bindings/bevy_app_bms_bindings/src/lib.rs new file mode 100644 index 0000000000..ff722e7403 --- /dev/null +++ b/crates/bindings/bevy_app_bms_bindings/src/lib.rs @@ -0,0 +1,125 @@ +#![allow(clippy::all)] +#![allow(unused, deprecated, dead_code)] +extern crate std; + +use bevy_app::{App, Plugin}; +use bevy_ecs::prelude::*; +use bevy_mod_scripting_bindings::{ + ReflectReference, + function::{ + from::{M, R, V}, + namespace::NamespaceBuilder, + }, +}; +use bevy_mod_scripting_derive::script_bindings; +pub struct BevyAppScriptingPlugin; +pub(crate) fn register_app_exit_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_app::AppExit, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_app::AppExit>| { + let output: V<::bevy_app::AppExit> = { + { + let output: V<::bevy_app::AppExit> = <::bevy_app::AppExit as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_app::AppExit>, other: R<::bevy_app::AppExit>| { + let output: bool = { + { + let output: bool = <::bevy_app::AppExit as ::core::cmp::PartialEq< + ::bevy_app::AppExit, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "error", + || { + let output: V<::bevy_app::AppExit> = { + { + let output: V<::bevy_app::AppExit> = ::bevy_app::AppExit::error() + .into(); + output + } + }; + output + }, + " Creates a [`AppExit::Error`] with an error code of 1.", + &[], + ) + .register_documented( + "from_code", + |code: u8| { + let output: V<::bevy_app::AppExit> = { + { + let output: V<::bevy_app::AppExit> = ::bevy_app::AppExit::from_code( + code, + ) + .into(); + output + } + }; + output + }, + " Creates a [`AppExit`] from a code.\n When `code` is 0 a [`AppExit::Success`] is constructed otherwise a\n [`AppExit::Error`] is constructed.", + &["code"], + ) + .register_documented( + "is_error", + |_self: R<::bevy_app::AppExit>| { + let output: bool = { + { + let output: bool = ::bevy_app::AppExit::is_error(&_self).into(); + output + } + }; + output + }, + " Returns `true` if `self` is a [`AppExit::Error`].", + &["_self"], + ) + .register_documented( + "is_success", + |_self: R<::bevy_app::AppExit>| { + let output: bool = { + { + let output: bool = ::bevy_app::AppExit::is_success(&_self) + .into(); + output + } + }; + output + }, + " Returns `true` if `self` is a [`AppExit::Success`].", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::bevy_app::AppExit, bevy_mod_scripting_bindings::MarkAsGenerated>(); +} +impl Plugin for BevyAppScriptingPlugin { + fn build(&self, app: &mut App) { + let mut world = app.world_mut(); + register_app_exit_functions(&mut world); + } +} diff --git a/crates/bindings/bevy_asset_bms_bindings/Cargo.toml b/crates/bindings/bevy_asset_bms_bindings/Cargo.toml index f38d24bed0..1c8a0d339c 100644 --- a/crates/bindings/bevy_asset_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_asset_bms_bindings/Cargo.toml @@ -20,14 +20,14 @@ bevy_app = { workspace = true, features = ["std"] } bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_asset = { version = "0.18.1", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} async-io = { version = "^2.6", features = [], default-features = true} -bevy_asset_macros = { version = "^0.18.0", features = [], default-features = true} +bevy_asset_macros = { version = "^0.19.0", features = [], default-features = true} -bevy_tasks = { version = "^0.18.0", features = ["async_executor", "futures-lite", "multi_threaded"], default-features = true} +bevy_tasks = { version = "^0.19.0", features = ["async_executor", "futures-lite", "multi_threaded"], default-features = true} js-sys = { version = "^0.3", features = [], default-features = true} diff --git a/crates/bindings/bevy_asset_bms_bindings/src/lib.rs b/crates/bindings/bevy_asset_bms_bindings/src/lib.rs index 776c17cbaa..f34a2dbf2d 100644 --- a/crates/bindings/bevy_asset_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_asset_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -33,6 +34,23 @@ pub(crate) fn register_untyped_handle_functions(world: &mut World) { "", &["_self"], ) + .register_documented( + "default_for_type", + |type_id: V<::core::any::TypeId>| { + let output: V<::bevy_asset::UntypedHandle> = { + { + let output: V<::bevy_asset::UntypedHandle> = ::bevy_asset::UntypedHandle::default_for_type( + type_id.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns the equivalent of [`Handle`]'s default implementation for the given type ID.", + &["type_id"], + ) .register_documented( "eq", | @@ -159,23 +177,6 @@ pub(crate) fn register_asset_index_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_asset::AssetIndex, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_asset::AssetIndex>| { - let output: () = { - { - let output: () = <::bevy_asset::AssetIndex as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_asset::AssetIndex>| { @@ -271,23 +272,6 @@ pub(crate) fn register_render_asset_usages_functions(world: &mut World) { " Get a flags value with all known bits set.", &[], ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_asset::RenderAssetUsages>| { - let output: () = { - { - let output: () = <::bevy_asset::RenderAssetUsages as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "bits", |_self: R<::bevy_asset::RenderAssetUsages>| { @@ -334,7 +318,7 @@ pub(crate) fn register_render_asset_usages_functions(world: &mut World) { }; output }, - " The bitwise negation (`!`) of the bits in a flags value, truncating the result.", + " The bitwise negation (`!`) of the bits in `self`, truncating the result.", &["_self"], ) .register_documented( @@ -355,7 +339,7 @@ pub(crate) fn register_render_asset_usages_functions(world: &mut World) { }; output }, - " Whether all set bits in a source flags value are also set in a target flags value.", + " Whether all set bits in `other` are also set in `self`.", &["_self", "other"], ) .register_documented( @@ -376,7 +360,7 @@ pub(crate) fn register_render_asset_usages_functions(world: &mut World) { }; output }, - " The intersection of a source flags value with the complement of a target flags\n value (`&!`).\n This method is not equivalent to `self & !other` when `other` has unknown bits set.\n `difference` won't truncate `other`, but the `!` operator will.", + " The intersection of `self` with the complement of `other` (`&!`).\n This method is not equivalent to `self & !other` when `other` has unknown bits set.\n `difference` won't truncate `other`, but the `!` operator will.", &["_self", "other"], ) .register_documented( @@ -466,7 +450,7 @@ pub(crate) fn register_render_asset_usages_functions(world: &mut World) { }; output }, - " The bitwise or (`|`) of the bits in two flags values.", + " The bitwise or (`|`) of the bits in `self` and `other`.", &["_self", "other"], ) .register_documented( @@ -487,7 +471,7 @@ pub(crate) fn register_render_asset_usages_functions(world: &mut World) { }; output }, - " The bitwise and (`&`) of the bits in two flags values.", + " The bitwise and (`&`) of the bits in `self` and `other`.", &["_self", "other"], ) .register_documented( @@ -508,7 +492,7 @@ pub(crate) fn register_render_asset_usages_functions(world: &mut World) { }; output }, - " Whether any set bits in a source flags value are also set in a target flags value.", + " Whether any set bits in `other` are also set in `self`.", &["_self", "other"], ) .register_documented( @@ -542,7 +526,7 @@ pub(crate) fn register_render_asset_usages_functions(world: &mut World) { }; output }, - " Whether all bits in this flags value are unset.", + " Whether all bits in `self` are unset.", &["_self"], ) .register_documented( @@ -563,7 +547,7 @@ pub(crate) fn register_render_asset_usages_functions(world: &mut World) { }; output }, - " The intersection of a source flags value with the complement of a target flags\n value (`&!`).\n This method is not equivalent to `self & !other` when `other` has unknown bits set.\n `remove` won't truncate `other`, but the `!` operator will.", + " The intersection of `self` with the complement of `other` (`&!`).\n This method is not equivalent to `self & !other` when `other` has unknown bits set.\n `remove` won't truncate `other`, but the `!` operator will.", &["_self", "other"], ) .register_documented( @@ -606,7 +590,7 @@ pub(crate) fn register_render_asset_usages_functions(world: &mut World) { }; output }, - " The intersection of a source flags value with the complement of a target flags value (`&!`).\n This method is not equivalent to `self & !other` when `other` has unknown bits set.\n `difference` won't truncate `other`, but the `!` operator will.", + " The intersection of `self` with the complement of `other` (`&!`).\n This method is not equivalent to `self & !other` when `other` has unknown bits set.\n `difference` won't truncate `other`, but the `!` operator will.", &["_self", "other"], ) .register_documented( @@ -627,7 +611,7 @@ pub(crate) fn register_render_asset_usages_functions(world: &mut World) { }; output }, - " The bitwise exclusive-or (`^`) of the bits in two flags values.", + " The bitwise exclusive-or (`^`) of the bits in `self` and `other`.", &["_self", "other"], ) .register_documented( @@ -648,7 +632,7 @@ pub(crate) fn register_render_asset_usages_functions(world: &mut World) { }; output }, - " The bitwise exclusive-or (`^`) of the bits in two flags values.", + " The bitwise exclusive-or (`^`) of the bits in `self` and `other`.", &["_self", "other"], ) .register_documented( @@ -669,7 +653,7 @@ pub(crate) fn register_render_asset_usages_functions(world: &mut World) { }; output }, - " The bitwise or (`|`) of the bits in two flags values.", + " The bitwise or (`|`) of the bits in `self` and `other`.", &["_self", "other"], ); let registry = world.get_resource_or_init::(); diff --git a/crates/bindings/bevy_camera_bms_bindings/Cargo.toml b/crates/bindings/bevy_camera_bms_bindings/Cargo.toml index 874178377f..b5cd57859a 100644 --- a/crates/bindings/bevy_camera_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_camera_bms_bindings/Cargo.toml @@ -20,31 +20,31 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_camera = { version = "0.18.1", features = [], default-features = true} +bevy_camera = { version = "0.19.0", features = [], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_image = { version = "^0.18.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} +bevy_image = { version = "^0.19.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_mesh = { version = "^0.18.0", features = ["bevy_mikktspace", "morph"], default-features = true} +bevy_mesh = { version = "^0.19.0", features = ["bevy_mikktspace", "morph"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} -bevy_window = { version = "^0.18.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} +bevy_window = { version = "^0.19.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} diff --git a/crates/bindings/bevy_camera_bms_bindings/src/lib.rs b/crates/bindings/bevy_camera_bms_bindings/src/lib.rs index ff7cd00a8c..6db71a9cbf 100644 --- a/crates/bindings/bevy_camera_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_camera_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -45,23 +46,6 @@ pub(crate) fn register_inherited_visibility_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_camera::visibility::InheritedVisibility, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_camera::visibility::InheritedVisibility>| { - let output: () = { - { - let output: () = <::bevy_camera::visibility::InheritedVisibility as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_camera::visibility::InheritedVisibility>| { @@ -128,29 +112,76 @@ pub(crate) fn register_view_visibility_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_camera::visibility::ViewVisibility, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_camera::visibility::ViewVisibility>| { - let output: () = { - { - let output: () = <::bevy_camera::visibility::ViewVisibility as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) + .register_documented( + "clone", + |_self: R<::bevy_camera::visibility::ViewVisibility>| { + let output: V<::bevy_camera::visibility::ViewVisibility> = { + { + let output: V<::bevy_camera::visibility::ViewVisibility> = + <::bevy_camera::visibility::ViewVisibility as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_camera::visibility::ViewVisibility>, + other: R<::bevy_camera::visibility::ViewVisibility>| { + let output: bool = { + { + let output: bool = + <::bevy_camera::visibility::ViewVisibility as ::std::cmp::PartialEq< + ::bevy_camera::visibility::ViewVisibility, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "get", + |_self: V<::bevy_camera::visibility::ViewVisibility>| { + let output: bool = { + { + let output: bool = + ::bevy_camera::visibility::ViewVisibility::get(_self.into_inner()).into(); + output + } + }; + output + }, + " Returns `true` if the entity is visible in any view.\n Otherwise, returns `false`.", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_camera::visibility::ViewVisibility, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_visibility_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_camera::visibility::Visibility, + >::new(world) .register_documented( "clone", - |_self: R<::bevy_camera::visibility::ViewVisibility>| { - let output: V<::bevy_camera::visibility::ViewVisibility> = { + |_self: R<::bevy_camera::visibility::Visibility>| { + let output: V<::bevy_camera::visibility::Visibility> = { { - let output: V<::bevy_camera::visibility::ViewVisibility> = <::bevy_camera::visibility::ViewVisibility as ::std::clone::Clone>::clone( + let output: V<::bevy_camera::visibility::Visibility> = <::bevy_camera::visibility::Visibility as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -163,16 +194,11 @@ pub(crate) fn register_view_visibility_functions(world: &mut World) { &["_self"], ) .register_documented( - "eq", - | - _self: R<::bevy_camera::visibility::ViewVisibility>, - other: R<::bevy_camera::visibility::ViewVisibility>| - { - let output: bool = { + "default_hidden", + || { + let output: V<::bevy_camera::visibility::Visibility> = { { - let output: bool = <::bevy_camera::visibility::ViewVisibility as ::std::cmp::PartialEq< - ::bevy_camera::visibility::ViewVisibility, - >>::eq(&_self, &other) + let output: V<::bevy_camera::visibility::Visibility> = ::bevy_camera::visibility::Visibility::default_hidden() .into(); output } @@ -180,45 +206,14 @@ pub(crate) fn register_view_visibility_functions(world: &mut World) { output }, "", - &["_self", "other"], + &[], ) .register_documented( - "get", - |_self: V<::bevy_camera::visibility::ViewVisibility>| { - let output: bool = { - { - let output: bool = ::bevy_camera::visibility::ViewVisibility::get( - _self.into_inner(), - ) - .into(); - output - } - }; - output - }, - " Returns `true` if the entity is visible in any view.\n Otherwise, returns `false`.", - &["_self"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_camera::visibility::ViewVisibility, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_visibility_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_camera::visibility::Visibility, - >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_camera::visibility::Visibility>| { - let output: () = { + "default_inherited", + || { + let output: V<::bevy_camera::visibility::Visibility> = { { - let output: () = <::bevy_camera::visibility::Visibility as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) + let output: V<::bevy_camera::visibility::Visibility> = ::bevy_camera::visibility::Visibility::default_inherited() .into(); output } @@ -226,16 +221,14 @@ pub(crate) fn register_visibility_functions(world: &mut World) { output }, "", - &["_self"], + &[], ) .register_documented( - "clone", - |_self: R<::bevy_camera::visibility::Visibility>| { + "default_visible", + || { let output: V<::bevy_camera::visibility::Visibility> = { { - let output: V<::bevy_camera::visibility::Visibility> = <::bevy_camera::visibility::Visibility as ::std::clone::Clone>::clone( - &_self, - ) + let output: V<::bevy_camera::visibility::Visibility> = ::bevy_camera::visibility::Visibility::default_visible() .into(); output } @@ -243,7 +236,7 @@ pub(crate) fn register_visibility_functions(world: &mut World) { output }, "", - &["_self"], + &[], ) .register_documented( "eq", @@ -507,64 +500,87 @@ pub(crate) fn register_clear_color_config_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_compositing_space_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_camera::CompositingSpace, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_camera::CompositingSpace>| { + let output: V<::bevy_camera::CompositingSpace> = { + { + let output: V<::bevy_camera::CompositingSpace> = + <::bevy_camera::CompositingSpace as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_camera::CompositingSpace>, other: R<::bevy_camera::CompositingSpace>| { + let output: bool = { + { + let output: bool = <::bevy_camera::CompositingSpace as ::std::cmp::PartialEq< + ::bevy_camera::CompositingSpace, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_camera::CompositingSpace, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_msaa_writeback_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_camera::MsaaWriteback, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_camera::MsaaWriteback>| { - let output: () = { - { - let output: () = <::bevy_camera::MsaaWriteback as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_camera::MsaaWriteback>| { - let output: V<::bevy_camera::MsaaWriteback> = { - { - let output: V<::bevy_camera::MsaaWriteback> = <::bevy_camera::MsaaWriteback as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_camera::MsaaWriteback>, - other: R<::bevy_camera::MsaaWriteback>| - { - let output: bool = { - { - let output: bool = <::bevy_camera::MsaaWriteback as ::std::cmp::PartialEq< - ::bevy_camera::MsaaWriteback, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .register_documented( + "clone", + |_self: R<::bevy_camera::MsaaWriteback>| { + let output: V<::bevy_camera::MsaaWriteback> = { + { + let output: V<::bevy_camera::MsaaWriteback> = + <::bevy_camera::MsaaWriteback as ::std::clone::Clone>::clone(&_self).into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_camera::MsaaWriteback>, other: R<::bevy_camera::MsaaWriteback>| { + let output: bool = { + { + let output: bool = <::bevy_camera::MsaaWriteback as ::std::cmp::PartialEq< + ::bevy_camera::MsaaWriteback, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -774,49 +790,7 @@ pub(crate) fn register_frustum_functions(world: &mut World) { &["_self", "aabb"], ) .register_documented( - "from_clip_from_world", - |clip_from_world: R<::bevy_math::Mat4>| { - let output: V<::bevy_camera::primitives::Frustum> = { - { - let output: V<::bevy_camera::primitives::Frustum> = ::bevy_camera::primitives::Frustum::from_clip_from_world( - &clip_from_world, - ) - .into(); - output - } - }; - output - }, - " Returns a frustum derived from `clip_from_world`.", - &["clip_from_world"], - ) - .register_documented( - "from_clip_from_world_custom_far", - | - clip_from_world: R<::bevy_math::Mat4>, - view_translation: R<::bevy_math::Vec3>, - view_backward: R<::bevy_math::Vec3>, - far: f32| - { - let output: V<::bevy_camera::primitives::Frustum> = { - { - let output: V<::bevy_camera::primitives::Frustum> = ::bevy_camera::primitives::Frustum::from_clip_from_world_custom_far( - &clip_from_world, - &view_translation, - &view_backward, - far, - ) - .into(); - output - } - }; - output - }, - " Returns a frustum derived from `clip_from_world`,\n but with a custom far plane.", - &["clip_from_world", "view_translation", "view_backward", "far"], - ) - .register_documented( - "intersects_obb", + "intersects_obb", | _self: R<::bevy_camera::primitives::Frustum>, aabb: R<::bevy_camera::primitives::Aabb>, @@ -862,6 +836,29 @@ pub(crate) fn register_frustum_functions(world: &mut World) { }, " Optimized version of [`Frustum::intersects_obb`]\n where the transform is [`Affine3A::IDENTITY`] and both `intersect_near` and `intersect_far` are `true`.", &["_self", "aabb"], + ) + .register_documented( + "intersects_sphere", + | + _self: R<::bevy_camera::primitives::Frustum>, + sphere: R<::bevy_camera::primitives::Sphere>, + intersect_far: bool| + { + let output: bool = { + { + let output: bool = ::bevy_camera::primitives::Frustum::intersects_sphere( + &_self, + &sphere, + intersect_far, + ) + .into(); + output + } + }; + output + }, + " Checks if a sphere intersects the frustum.", + &["_self", "sphere", "intersect_far"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); @@ -1095,6 +1092,62 @@ pub(crate) fn register_sub_camera_view_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_render_target_info_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_camera::RenderTargetInfo, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_camera::RenderTargetInfo>| { + let output: V<::bevy_camera::RenderTargetInfo> = { + { + let output: V<::bevy_camera::RenderTargetInfo> = + <::bevy_camera::RenderTargetInfo as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_camera::RenderTargetInfo, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_computed_camera_values_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_camera::ComputedCameraValues, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_camera::ComputedCameraValues>| { + let output: V<::bevy_camera::ComputedCameraValues> = { + { + let output: V<::bevy_camera::ComputedCameraValues> = + <::bevy_camera::ComputedCameraValues as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_camera::ComputedCameraValues, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_exposure_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_camera::Exposure, @@ -1226,6 +1279,34 @@ pub(crate) fn register_camera_output_mode_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_shadow_lod_origin_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_camera::ShadowLodOrigin, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_camera::ShadowLodOrigin>| { + let output: V<::bevy_camera::ShadowLodOrigin> = { + { + let output: V<::bevy_camera::ShadowLodOrigin> = + <::bevy_camera::ShadowLodOrigin as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_camera::ShadowLodOrigin, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_image_render_target_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_camera::ImageRenderTarget, @@ -1276,60 +1357,43 @@ pub(crate) fn register_manual_texture_view_handle_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_camera::ManualTextureViewHandle, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_camera::ManualTextureViewHandle>| { - let output: () = { - { - let output: () = <::bevy_camera::ManualTextureViewHandle as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_camera::ManualTextureViewHandle>| { - let output: V<::bevy_camera::ManualTextureViewHandle> = { - { - let output: V<::bevy_camera::ManualTextureViewHandle> = <::bevy_camera::ManualTextureViewHandle as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_camera::ManualTextureViewHandle>, - other: R<::bevy_camera::ManualTextureViewHandle>| - { - let output: bool = { - { - let output: bool = <::bevy_camera::ManualTextureViewHandle as ::std::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_camera::ManualTextureViewHandle>| { + let output: V<::bevy_camera::ManualTextureViewHandle> = { + { + let output: V<::bevy_camera::ManualTextureViewHandle> = + <::bevy_camera::ManualTextureViewHandle as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_camera::ManualTextureViewHandle>, + other: R<::bevy_camera::ManualTextureViewHandle>| { + let output: bool = { + { + let output: bool = + <::bevy_camera::ManualTextureViewHandle as ::std::cmp::PartialEq< ::bevy_camera::ManualTextureViewHandle, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -1342,60 +1406,43 @@ pub(crate) fn register_normalized_render_target_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_camera::NormalizedRenderTarget, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_camera::NormalizedRenderTarget>| { - let output: () = { - { - let output: () = <::bevy_camera::NormalizedRenderTarget as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_camera::NormalizedRenderTarget>| { - let output: V<::bevy_camera::NormalizedRenderTarget> = { - { - let output: V<::bevy_camera::NormalizedRenderTarget> = <::bevy_camera::NormalizedRenderTarget as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_camera::NormalizedRenderTarget>, - other: R<::bevy_camera::NormalizedRenderTarget>| - { - let output: bool = { - { - let output: bool = <::bevy_camera::NormalizedRenderTarget as ::std::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_camera::NormalizedRenderTarget>| { + let output: V<::bevy_camera::NormalizedRenderTarget> = { + { + let output: V<::bevy_camera::NormalizedRenderTarget> = + <::bevy_camera::NormalizedRenderTarget as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_camera::NormalizedRenderTarget>, + other: R<::bevy_camera::NormalizedRenderTarget>| { + let output: bool = { + { + let output: bool = + <::bevy_camera::NormalizedRenderTarget as ::std::cmp::PartialEq< ::bevy_camera::NormalizedRenderTarget, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -1462,67 +1509,17 @@ pub(crate) fn register_camera_3_d_depth_texture_usage_functions(world: &mut Worl bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_screen_space_transmission_quality_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_camera::ScreenSpaceTransmissionQuality, - >::new(world) - .register_documented( - "clone", - |_self: R<::bevy_camera::ScreenSpaceTransmissionQuality>| { - let output: V<::bevy_camera::ScreenSpaceTransmissionQuality> = { - { - let output: V<::bevy_camera::ScreenSpaceTransmissionQuality> = <::bevy_camera::ScreenSpaceTransmissionQuality as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_camera::ScreenSpaceTransmissionQuality>, - other: R<::bevy_camera::ScreenSpaceTransmissionQuality>| - { - let output: bool = { - { - let output: bool = <::bevy_camera::ScreenSpaceTransmissionQuality as ::std::cmp::PartialEq< - ::bevy_camera::ScreenSpaceTransmissionQuality, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_camera::ScreenSpaceTransmissionQuality, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_aabb_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_camera::primitives::Aabb, - >::new(world) +pub(crate) fn register_hdr_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::bevy_camera::Hdr>::new( + world, + ) .register_documented( "clone", - |_self: R<::bevy_camera::primitives::Aabb>| { - let output: V<::bevy_camera::primitives::Aabb> = { + |_self: R<::bevy_camera::Hdr>| { + let output: V<::bevy_camera::Hdr> = { { - let output: V<::bevy_camera::primitives::Aabb> = - <::bevy_camera::primitives::Aabb as ::std::clone::Clone>::clone(&_self) - .into(); + let output: V<::bevy_camera::Hdr> = + <::bevy_camera::Hdr as ::std::clone::Clone>::clone(&_self).into(); output } }; @@ -1533,11 +1530,11 @@ pub(crate) fn register_aabb_functions(world: &mut World) { ) .register_documented( "eq", - |_self: R<::bevy_camera::primitives::Aabb>, other: R<::bevy_camera::primitives::Aabb>| { + |_self: R<::bevy_camera::Hdr>, other: R<::bevy_camera::Hdr>| { let output: bool = { { - let output: bool = <::bevy_camera::primitives::Aabb as ::std::cmp::PartialEq< - ::bevy_camera::primitives::Aabb, + let output: bool = <::bevy_camera::Hdr as ::std::cmp::PartialEq< + ::bevy_camera::Hdr, >>::eq(&_self, &other) .into(); output @@ -1547,85 +1544,232 @@ pub(crate) fn register_aabb_functions(world: &mut World) { }, "", &["_self", "other"], - ) - .register_documented( - "from_min_max", - |minimum: V<::bevy_math::Vec3>, maximum: V<::bevy_math::Vec3>| { - let output: V<::bevy_camera::primitives::Aabb> = { - { - let output: V<::bevy_camera::primitives::Aabb> = - ::bevy_camera::primitives::Aabb::from_min_max( - minimum.into_inner(), - maximum.into_inner(), - ) - .into(); - output - } - }; - output - }, - "", - &["minimum", "maximum"], - ) - .register_documented( - "max", - |_self: R<::bevy_camera::primitives::Aabb>| { - let output: V<::bevy_math::Vec3A> = { - { - let output: V<::bevy_math::Vec3A> = - ::bevy_camera::primitives::Aabb::max(&_self).into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "min", - |_self: R<::bevy_camera::primitives::Aabb>| { - let output: V<::bevy_math::Vec3A> = { - { - let output: V<::bevy_math::Vec3A> = - ::bevy_camera::primitives::Aabb::min(&_self).into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "relative_radius", - |_self: R<::bevy_camera::primitives::Aabb>, - p_normal: R<::bevy_math::Vec3A>, - world_from_local: R<::bevy_math::Mat3A>| { - let output: f32 = { - { - let output: f32 = ::bevy_camera::primitives::Aabb::relative_radius( - &_self, - &p_normal, - &world_from_local, - ) - .into(); - output - } - }; - output - }, - " Calculate the relative radius of the AABB with respect to a plane", - &["_self", "p_normal", "world_from_local"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); + registry + .register_type_data::<::bevy_camera::Hdr, bevy_mod_scripting_bindings::MarkAsGenerated>(); +} +pub(crate) fn register_aabb_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_camera::primitives::Aabb, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_camera::primitives::Aabb>| { + let output: V<::bevy_camera::primitives::Aabb> = { + { + let output: V<::bevy_camera::primitives::Aabb> = <::bevy_camera::primitives::Aabb as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_camera::primitives::Aabb>, + other: R<::bevy_camera::primitives::Aabb>| + { + let output: bool = { + { + let output: bool = <::bevy_camera::primitives::Aabb as ::std::cmp::PartialEq< + ::bevy_camera::primitives::Aabb, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "from_min_max", + |minimum: V<::bevy_math::Vec3>, maximum: V<::bevy_math::Vec3>| { + let output: V<::bevy_camera::primitives::Aabb> = { + { + let output: V<::bevy_camera::primitives::Aabb> = ::bevy_camera::primitives::Aabb::from_min_max( + minimum.into_inner(), + maximum.into_inner(), + ) + .into(); + output + } + }; + output + }, + "", + &["minimum", "maximum"], + ) + .register_documented( + "is_in_half_space", + | + _self: R<::bevy_camera::primitives::Aabb>, + half_space: R<::bevy_math::primitives::HalfSpace>, + world_from_local: R<::bevy_math::Affine3A>| + { + let output: bool = { + { + let output: bool = ::bevy_camera::primitives::Aabb::is_in_half_space( + &_self, + &half_space, + &world_from_local, + ) + .into(); + output + } + }; + output + }, + " Check if the AABB is at the front side of the bisecting plane.\n Referenced from: [AABB Plane intersection](https://gdbooks.gitbooks.io/3dcollisions/content/Chapter2/static_aabb_plane.html)", + &["_self", "half_space", "world_from_local"], + ) + .register_documented( + "is_in_half_space_identity", + | + _self: R<::bevy_camera::primitives::Aabb>, + half_space: R<::bevy_math::primitives::HalfSpace>| + { + let output: bool = { + { + let output: bool = ::bevy_camera::primitives::Aabb::is_in_half_space_identity( + &_self, + &half_space, + ) + .into(); + output + } + }; + output + }, + " Optimized version of [`Self::is_in_half_space`] when the AABB is already in world space.\n Use this when `world_from_local` would be the identity transform.", + &["_self", "half_space"], + ) + .register_documented( + "max", + |_self: R<::bevy_camera::primitives::Aabb>| { + let output: V<::bevy_math::Vec3A> = { + { + let output: V<::bevy_math::Vec3A> = ::bevy_camera::primitives::Aabb::max( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "min", + |_self: R<::bevy_camera::primitives::Aabb>| { + let output: V<::bevy_math::Vec3A> = { + { + let output: V<::bevy_math::Vec3A> = ::bevy_camera::primitives::Aabb::min( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "relative_radius", + | + _self: R<::bevy_camera::primitives::Aabb>, + p_normal: R<::bevy_math::Vec3A>, + world_from_local: R<::bevy_math::Mat3A>| + { + let output: f32 = { + { + let output: f32 = ::bevy_camera::primitives::Aabb::relative_radius( + &_self, + &p_normal, + &world_from_local, + ) + .into(); + output + } + }; + output + }, + " Calculate the relative radius of the AABB with respect to a plane", + &["_self", "p_normal", "world_from_local"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); registry .register_type_data::< ::bevy_camera::primitives::Aabb, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_sphere_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_camera::primitives::Sphere, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_camera::primitives::Sphere>| { + let output: V<::bevy_camera::primitives::Sphere> = { + { + let output: V<::bevy_camera::primitives::Sphere> = <::bevy_camera::primitives::Sphere as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "intersects_obb", + | + _self: R<::bevy_camera::primitives::Sphere>, + aabb: R<::bevy_camera::primitives::Aabb>, + world_from_local: R<::bevy_math::Affine3A>| + { + let output: bool = { + { + let output: bool = ::bevy_camera::primitives::Sphere::intersects_obb( + &_self, + &aabb, + &world_from_local, + ) + .into(); + output + } + }; + output + }, + " Returns true if this sphere intersects the given oriented bounding box.\n The oriented bounding box (OBB) to test against is produced by\n transforming the given AABB according to the supplied matrix.", + &["_self", "aabb", "world_from_local"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_camera::primitives::Sphere, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_cubemap_frusta_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_camera::primitives::CubemapFrusta, @@ -1806,7 +1950,44 @@ pub(crate) fn register_visibility_class_functions(world: &mut World) { pub(crate) fn register_no_frustum_culling_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_camera::visibility::NoFrustumCulling, - >::new(world); + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_camera::visibility::NoFrustumCulling>| { + let output: V<::bevy_camera::visibility::NoFrustumCulling> = { + { + let output: V<::bevy_camera::visibility::NoFrustumCulling> = <::bevy_camera::visibility::NoFrustumCulling as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_camera::visibility::NoFrustumCulling>, + other: R<::bevy_camera::visibility::NoFrustumCulling>| + { + let output: bool = { + { + let output: bool = <::bevy_camera::visibility::NoFrustumCulling as ::std::cmp::PartialEq< + ::bevy_camera::visibility::NoFrustumCulling, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -1815,6 +1996,18 @@ pub(crate) fn register_no_frustum_culling_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_dynamic_skinned_mesh_bounds_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_camera::visibility::DynamicSkinnedMeshBounds, + >::new(world); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_camera::visibility::DynamicSkinnedMeshBounds, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_visible_mesh_entities_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_camera::visibility::VisibleMeshEntities, @@ -1835,6 +2028,23 @@ pub(crate) fn register_visible_mesh_entities_functions(world: &mut World) { }, "", &["_self"], + ) + .register_documented( + "shrink", + |mut _self: M<::bevy_camera::visibility::VisibleMeshEntities>| { + let output: () = { + { + let output: () = ::bevy_camera::visibility::VisibleMeshEntities::shrink( + &mut _self, + ) + .into(); + output + } + }; + output + }, + " Resizes the entity vector so that its capacity isn't too much higher\n than its size.", + &["_self"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); @@ -1940,23 +2150,6 @@ pub(crate) fn register_render_layers_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_camera::visibility::RenderLayers, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_camera::visibility::RenderLayers>| { - let output: () = { - { - let output: () = <::bevy_camera::visibility::RenderLayers as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_camera::visibility::RenderLayers>| { @@ -2285,6 +2478,7 @@ impl Plugin for BevyCameraScriptingPlugin { register_camera_2_d_functions(&mut world); register_camera_3_d_functions(&mut world); register_clear_color_config_functions(&mut world); + register_compositing_space_functions(&mut world); register_msaa_writeback_functions(&mut world); register_orthographic_projection_functions(&mut world); register_perspective_projection_functions(&mut world); @@ -2294,17 +2488,21 @@ impl Plugin for BevyCameraScriptingPlugin { register_viewport_functions(&mut world); register_main_pass_resolution_override_functions(&mut world); register_sub_camera_view_functions(&mut world); + register_render_target_info_functions(&mut world); + register_computed_camera_values_functions(&mut world); register_exposure_functions(&mut world); register_camera_main_texture_usages_functions(&mut world); register_render_target_functions(&mut world); register_camera_output_mode_functions(&mut world); + register_shadow_lod_origin_functions(&mut world); register_image_render_target_functions(&mut world); register_manual_texture_view_handle_functions(&mut world); register_normalized_render_target_functions(&mut world); register_camera_3_d_depth_load_op_functions(&mut world); register_camera_3_d_depth_texture_usage_functions(&mut world); - register_screen_space_transmission_quality_functions(&mut world); + register_hdr_functions(&mut world); register_aabb_functions(&mut world); + register_sphere_functions(&mut world); register_cubemap_frusta_functions(&mut world); register_cubemap_layout_functions(&mut world); register_cascades_frusta_functions(&mut world); @@ -2312,6 +2510,7 @@ impl Plugin for BevyCameraScriptingPlugin { register_scaling_mode_functions(&mut world); register_visibility_class_functions(&mut world); register_no_frustum_culling_functions(&mut world); + register_dynamic_skinned_mesh_bounds_functions(&mut world); register_visible_mesh_entities_functions(&mut world); register_cubemap_visible_entities_functions(&mut world); register_cascades_visible_entities_functions(&mut world); diff --git a/crates/bindings/bevy_color_bms_bindings/Cargo.toml b/crates/bindings/bevy_color_bms_bindings/Cargo.toml index e9ffde888a..041dbecbbb 100644 --- a/crates/bindings/bevy_color_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_color_bms_bindings/Cargo.toml @@ -20,15 +20,15 @@ bevy_app = { workspace = true, features = ["std"] } bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_color = { version = "0.18.1", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} bytemuck = { version = "^1", features = [], default-features = true} -wgpu-types = { version = "^27", features = ["std"], default-features = false} +wgpu-types = { version = "^29.0.3", features = ["std"], default-features = false} diff --git a/crates/bindings/bevy_color_bms_bindings/src/lib.rs b/crates/bindings/bevy_color_bms_bindings/src/lib.rs index 5c329ea3d8..b9da36452d 100644 --- a/crates/bindings/bevy_color_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_color_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -398,6 +399,23 @@ pub(crate) fn register_color_functions(world: &mut World) { " Reads an array of floats to creates a new [`Color`] object storing a [`Srgba`] color with an alpha of 1.0.\n # Arguments\n * `array` - Red, Green and Blue channels. Each channel is in the range [0.0, 1.0]", &["array"], ) + .register_documented( + "srgb_u32", + |color: u32| { + let output: V<::bevy_color::Color> = { + { + let output: V<::bevy_color::Color> = ::bevy_color::Color::srgb_u32( + color, + ) + .into(); + output + } + }; + output + }, + " Creates a new [`Color`] object storing a [`Srgba`] color from a [`u32`] value with an alpha of 1.0.\n For example, a value of `0x000000` results in black, and a value of `0xff0000` results in red.\n # Examples\n ```\n # use bevy_color::Color;\n let black = Color::srgb_u32(0x000000);\n let red = Color::srgb_u32(0xff0000);\n ```", + &["color"], + ) .register_documented( "srgb_u8", |red: u8, green: u8, blue: u8| { @@ -437,6 +455,23 @@ pub(crate) fn register_color_functions(world: &mut World) { " Creates a new [`Color`] object storing a [`Srgba`] color.\n # Arguments\n * `red` - Red channel. [0.0, 1.0]\n * `green` - Green channel. [0.0, 1.0]\n * `blue` - Blue channel. [0.0, 1.0]\n * `alpha` - Alpha channel. [0.0, 1.0]", &["red", "green", "blue", "alpha"], ) + .register_documented( + "srgba_u32", + |color: u32| { + let output: V<::bevy_color::Color> = { + { + let output: V<::bevy_color::Color> = ::bevy_color::Color::srgba_u32( + color, + ) + .into(); + output + } + }; + output + }, + " Creates a new [`Color`] object storing a [`Srgba`] color from a [`u32`] value with the alpha value extracted from the input.\n For example, a value of `0x000000ff` results in black with full opacity, and a value of `0xff000080` results in red with half opacity.\n # Examples\n ```\n # use bevy_color::Color;\n let black = Color::srgba_u32(0x000000ff);\n let semi_transparent_red = Color::srgba_u32(0xff000080);\n ```", + &["color"], + ) .register_documented( "srgba_u8", |red: u8, green: u8, blue: u8, alpha: u8| { @@ -539,23 +574,6 @@ pub(crate) fn register_srgba_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_color::Srgba, >::new(world) - .register_documented( - "add", - |_self: V<::bevy_color::Srgba>, rhs: V<::bevy_color::Srgba>| { - let output: V<::bevy_color::Srgba> = { - { - let output: V<::bevy_color::Srgba> = <::bevy_color::Srgba as ::core::ops::Add< - ::bevy_color::Srgba, - >>::add(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "clone", |_self: R<::bevy_color::Srgba>| { @@ -573,23 +591,6 @@ pub(crate) fn register_srgba_functions(world: &mut World) { "", &["_self"], ) - .register_documented( - "div", - |_self: V<::bevy_color::Srgba>, rhs: f32| { - let output: V<::bevy_color::Srgba> = { - { - let output: V<::bevy_color::Srgba> = <::bevy_color::Srgba as ::core::ops::Div< - f32, - >>::div(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "eq", |_self: R<::bevy_color::Srgba>, other: R<::bevy_color::Srgba>| { @@ -639,40 +640,6 @@ pub(crate) fn register_srgba_functions(world: &mut World) { " Converts a linear sRGB value to a non-linear one via [gamma correction](https://en.wikipedia.org/wiki/Gamma_correction).", &["value"], ) - .register_documented( - "mul", - |_self: V<::bevy_color::Srgba>, rhs: f32| { - let output: V<::bevy_color::Srgba> = { - { - let output: V<::bevy_color::Srgba> = <::bevy_color::Srgba as ::core::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "neg", - |_self: V<::bevy_color::Srgba>| { - let output: V<::bevy_color::Srgba> = { - { - let output: V<::bevy_color::Srgba> = <::bevy_color::Srgba as ::core::ops::Neg>::neg( - _self.into_inner(), - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "new", |red: f32, green: f32, blue: f32, alpha: f32| { @@ -751,23 +718,6 @@ pub(crate) fn register_srgba_functions(world: &mut World) { " New `Srgba` from sRGB colorspace.\n # Arguments\n * `r` - Red channel. [0, 255]\n * `g` - Green channel. [0, 255]\n * `b` - Blue channel. [0, 255]\n * `a` - Alpha channel. [0, 255]\n See also [`Srgba::new`], [`Srgba::rgb_u8`], [`Srgba::hex`].", &["r", "g", "b", "a"], ) - .register_documented( - "sub", - |_self: V<::bevy_color::Srgba>, rhs: V<::bevy_color::Srgba>| { - let output: V<::bevy_color::Srgba> = { - { - let output: V<::bevy_color::Srgba> = <::bevy_color::Srgba as ::core::ops::Sub< - ::bevy_color::Srgba, - >>::sub(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "to_hex", |_self: R<::bevy_color::Srgba>| { @@ -848,23 +798,6 @@ pub(crate) fn register_linear_rgba_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_color::LinearRgba, >::new(world) - .register_documented( - "add", - |_self: V<::bevy_color::LinearRgba>, rhs: V<::bevy_color::LinearRgba>| { - let output: V<::bevy_color::LinearRgba> = { - { - let output: V<::bevy_color::LinearRgba> = <::bevy_color::LinearRgba as ::core::ops::Add< - ::bevy_color::LinearRgba, - >>::add(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "as_u32", |_self: R<::bevy_color::LinearRgba>| { @@ -897,23 +830,6 @@ pub(crate) fn register_linear_rgba_functions(world: &mut World) { "", &["_self"], ) - .register_documented( - "div", - |_self: V<::bevy_color::LinearRgba>, rhs: f32| { - let output: V<::bevy_color::LinearRgba> = { - { - let output: V<::bevy_color::LinearRgba> = <::bevy_color::LinearRgba as ::core::ops::Div< - f32, - >>::div(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "eq", |_self: R<::bevy_color::LinearRgba>, other: R<::bevy_color::LinearRgba>| { @@ -931,40 +847,6 @@ pub(crate) fn register_linear_rgba_functions(world: &mut World) { "", &["_self", "other"], ) - .register_documented( - "mul", - |_self: V<::bevy_color::LinearRgba>, rhs: f32| { - let output: V<::bevy_color::LinearRgba> = { - { - let output: V<::bevy_color::LinearRgba> = <::bevy_color::LinearRgba as ::core::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "neg", - |_self: V<::bevy_color::LinearRgba>| { - let output: V<::bevy_color::LinearRgba> = { - { - let output: V<::bevy_color::LinearRgba> = <::bevy_color::LinearRgba as ::core::ops::Neg>::neg( - _self.into_inner(), - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "new", |red: f32, green: f32, blue: f32, alpha: f32| { @@ -1004,23 +886,6 @@ pub(crate) fn register_linear_rgba_functions(world: &mut World) { " Construct a new [`LinearRgba`] color from (r, g, b) components, with the default alpha (1.0).\n # Arguments\n * `red` - Red channel. [0.0, 1.0]\n * `green` - Green channel. [0.0, 1.0]\n * `blue` - Blue channel. [0.0, 1.0]", &["red", "green", "blue"], ) - .register_documented( - "sub", - |_self: V<::bevy_color::LinearRgba>, rhs: V<::bevy_color::LinearRgba>| { - let output: V<::bevy_color::LinearRgba> = { - { - let output: V<::bevy_color::LinearRgba> = <::bevy_color::LinearRgba as ::core::ops::Sub< - ::bevy_color::LinearRgba, - >>::sub(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "with_blue", |_self: V<::bevy_color::LinearRgba>, blue: f32| { @@ -1458,23 +1323,6 @@ pub(crate) fn register_laba_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_color::Laba, >::new(world) - .register_documented( - "add", - |_self: V<::bevy_color::Laba>, rhs: V<::bevy_color::Laba>| { - let output: V<::bevy_color::Laba> = { - { - let output: V<::bevy_color::Laba> = <::bevy_color::Laba as ::core::ops::Add< - ::bevy_color::Laba, - >>::add(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "clone", |_self: R<::bevy_color::Laba>| { @@ -1492,23 +1340,6 @@ pub(crate) fn register_laba_functions(world: &mut World) { "", &["_self"], ) - .register_documented( - "div", - |_self: V<::bevy_color::Laba>, rhs: f32| { - let output: V<::bevy_color::Laba> = { - { - let output: V<::bevy_color::Laba> = <::bevy_color::Laba as ::core::ops::Div< - f32, - >>::div(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "eq", |_self: R<::bevy_color::Laba>, other: R<::bevy_color::Laba>| { @@ -1545,40 +1376,6 @@ pub(crate) fn register_laba_functions(world: &mut World) { " Construct a new [`Laba`] color from (l, a, b) components, with the default alpha (1.0).\n # Arguments\n * `lightness` - Lightness channel. [0.0, 1.5]\n * `a` - a axis. [-1.5, 1.5]\n * `b` - b axis. [-1.5, 1.5]", &["lightness", "a", "b"], ) - .register_documented( - "mul", - |_self: V<::bevy_color::Laba>, rhs: f32| { - let output: V<::bevy_color::Laba> = { - { - let output: V<::bevy_color::Laba> = <::bevy_color::Laba as ::core::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "neg", - |_self: V<::bevy_color::Laba>| { - let output: V<::bevy_color::Laba> = { - { - let output: V<::bevy_color::Laba> = <::bevy_color::Laba as ::core::ops::Neg>::neg( - _self.into_inner(), - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "new", |lightness: f32, a: f32, b: f32, alpha: f32| { @@ -1599,23 +1396,6 @@ pub(crate) fn register_laba_functions(world: &mut World) { " Construct a new [`Laba`] color from components.\n # Arguments\n * `lightness` - Lightness channel. [0.0, 1.5]\n * `a` - a axis. [-1.5, 1.5]\n * `b` - b axis. [-1.5, 1.5]\n * `alpha` - Alpha channel. [0.0, 1.0]", &["lightness", "a", "b", "alpha"], ) - .register_documented( - "sub", - |_self: V<::bevy_color::Laba>, rhs: V<::bevy_color::Laba>| { - let output: V<::bevy_color::Laba> = { - { - let output: V<::bevy_color::Laba> = <::bevy_color::Laba as ::core::ops::Sub< - ::bevy_color::Laba, - >>::sub(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "with_lightness", |_self: V<::bevy_color::Laba>, lightness: f32| { @@ -1778,23 +1558,6 @@ pub(crate) fn register_oklaba_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_color::Oklaba, >::new(world) - .register_documented( - "add", - |_self: V<::bevy_color::Oklaba>, rhs: V<::bevy_color::Oklaba>| { - let output: V<::bevy_color::Oklaba> = { - { - let output: V<::bevy_color::Oklaba> = <::bevy_color::Oklaba as ::core::ops::Add< - ::bevy_color::Oklaba, - >>::add(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "clone", |_self: R<::bevy_color::Oklaba>| { @@ -1812,23 +1575,6 @@ pub(crate) fn register_oklaba_functions(world: &mut World) { "", &["_self"], ) - .register_documented( - "div", - |_self: V<::bevy_color::Oklaba>, rhs: f32| { - let output: V<::bevy_color::Oklaba> = { - { - let output: V<::bevy_color::Oklaba> = <::bevy_color::Oklaba as ::core::ops::Div< - f32, - >>::div(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "eq", |_self: R<::bevy_color::Oklaba>, other: R<::bevy_color::Oklaba>| { @@ -1865,40 +1611,6 @@ pub(crate) fn register_oklaba_functions(world: &mut World) { " Construct a new [`Oklaba`] color from (l, a, b) components, with the default alpha (1.0).\n # Arguments\n * `lightness` - Lightness channel. [0.0, 1.0]\n * `a` - Green-red channel. [-1.0, 1.0]\n * `b` - Blue-yellow channel. [-1.0, 1.0]", &["lightness", "a", "b"], ) - .register_documented( - "mul", - |_self: V<::bevy_color::Oklaba>, rhs: f32| { - let output: V<::bevy_color::Oklaba> = { - { - let output: V<::bevy_color::Oklaba> = <::bevy_color::Oklaba as ::core::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "neg", - |_self: V<::bevy_color::Oklaba>| { - let output: V<::bevy_color::Oklaba> = { - { - let output: V<::bevy_color::Oklaba> = <::bevy_color::Oklaba as ::core::ops::Neg>::neg( - _self.into_inner(), - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "new", |lightness: f32, a: f32, b: f32, alpha: f32| { @@ -1919,23 +1631,6 @@ pub(crate) fn register_oklaba_functions(world: &mut World) { " Construct a new [`Oklaba`] color from components.\n # Arguments\n * `lightness` - Lightness channel. [0.0, 1.0]\n * `a` - Green-red channel. [-1.0, 1.0]\n * `b` - Blue-yellow channel. [-1.0, 1.0]\n * `alpha` - Alpha channel. [0.0, 1.0]", &["lightness", "a", "b", "alpha"], ) - .register_documented( - "sub", - |_self: V<::bevy_color::Oklaba>, rhs: V<::bevy_color::Oklaba>| { - let output: V<::bevy_color::Oklaba> = { - { - let output: V<::bevy_color::Oklaba> = <::bevy_color::Oklaba as ::core::ops::Sub< - ::bevy_color::Oklaba, - >>::sub(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "with_a", |_self: V<::bevy_color::Oklaba>, a: f32| { @@ -2134,23 +1829,6 @@ pub(crate) fn register_xyza_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_color::Xyza, >::new(world) - .register_documented( - "add", - |_self: V<::bevy_color::Xyza>, rhs: V<::bevy_color::Xyza>| { - let output: V<::bevy_color::Xyza> = { - { - let output: V<::bevy_color::Xyza> = <::bevy_color::Xyza as ::core::ops::Add< - ::bevy_color::Xyza, - >>::add(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "clone", |_self: R<::bevy_color::Xyza>| { @@ -2168,23 +1846,6 @@ pub(crate) fn register_xyza_functions(world: &mut World) { "", &["_self"], ) - .register_documented( - "div", - |_self: V<::bevy_color::Xyza>, rhs: f32| { - let output: V<::bevy_color::Xyza> = { - { - let output: V<::bevy_color::Xyza> = <::bevy_color::Xyza as ::core::ops::Div< - f32, - >>::div(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "eq", |_self: R<::bevy_color::Xyza>, other: R<::bevy_color::Xyza>| { @@ -2202,40 +1863,6 @@ pub(crate) fn register_xyza_functions(world: &mut World) { "", &["_self", "other"], ) - .register_documented( - "mul", - |_self: V<::bevy_color::Xyza>, rhs: f32| { - let output: V<::bevy_color::Xyza> = { - { - let output: V<::bevy_color::Xyza> = <::bevy_color::Xyza as ::core::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "neg", - |_self: V<::bevy_color::Xyza>| { - let output: V<::bevy_color::Xyza> = { - { - let output: V<::bevy_color::Xyza> = <::bevy_color::Xyza as ::core::ops::Neg>::neg( - _self.into_inner(), - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "new", |x: f32, y: f32, z: f32, alpha: f32| { @@ -2256,23 +1883,6 @@ pub(crate) fn register_xyza_functions(world: &mut World) { " Construct a new [`Xyza`] color from components.\n # Arguments\n * `x` - x-axis. [0.0, 1.0]\n * `y` - y-axis. [0.0, 1.0]\n * `z` - z-axis. [0.0, 1.0]\n * `alpha` - Alpha channel. [0.0, 1.0]", &["x", "y", "z", "alpha"], ) - .register_documented( - "sub", - |_self: V<::bevy_color::Xyza>, rhs: V<::bevy_color::Xyza>| { - let output: V<::bevy_color::Xyza> = { - { - let output: V<::bevy_color::Xyza> = <::bevy_color::Xyza as ::core::ops::Sub< - ::bevy_color::Xyza, - >>::sub(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "with_x", |_self: V<::bevy_color::Xyza>, x: f32| { diff --git a/crates/bindings/bevy_core_pipeline_bms_bindings/Cargo.toml b/crates/bindings/bevy_core_pipeline_bms_bindings/Cargo.toml index 05598cea24..cf6f5efba2 100644 --- a/crates/bindings/bevy_core_pipeline_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_core_pipeline_bms_bindings/Cargo.toml @@ -20,43 +20,47 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_core_pipeline = { version = "0.18.1", features = ["tonemapping_luts", "webgl"], default-features = true} +bevy_core_pipeline = { version = "0.19.0", features = ["tonemapping_luts", "webgl"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_camera = { version = "^0.18.0", features = [], default-features = true} +bevy_camera = { version = "^0.19.0", features = [], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_diagnostic = { version = "^0.18.0", features = ["std", "sysinfo", "sysinfo_plugin"], default-features = true} +bevy_diagnostic = { version = "^0.19.0", features = ["std", "sysinfo", "sysinfo_plugin"], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_image = { version = "^0.18.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} +bevy_image = { version = "^0.19.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_light = { version = "^0.19.0", features = ["bevy_gizmos", "webgl"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_log = { version = "^0.19.0", features = [], default-features = true} -bevy_render = { version = "^0.18.0", features = ["morph", "multi_threaded", "webgl"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_shader = { version = "^0.18.0", features = [], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_render = { version = "^0.19.0", features = ["morph", "multi_threaded", "reflect_auto_register", "webgl"], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} +bevy_shader = { version = "^0.19.0", features = [], default-features = true} -bevy_window = { version = "^0.18.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} + +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} + +bevy_window = { version = "^0.19.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} bitflags = { version = "^2.3", features = [], default-features = true} -nonmax = { version = "^0.5", features = [], default-features = true} +indexmap = { version = "^2", features = [], default-features = true} -radsort = { version = "^0.1", features = [], default-features = true} +nonmax = { version = "^0.5", features = [], default-features = true} diff --git a/crates/bindings/bevy_core_pipeline_bms_bindings/src/lib.rs b/crates/bindings/bevy_core_pipeline_bms_bindings/src/lib.rs index 08ecfcacc1..c3de8ee217 100644 --- a/crates/bindings/bevy_core_pipeline_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_core_pipeline_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -12,60 +13,16 @@ use bevy_mod_scripting_bindings::{ }; use bevy_mod_scripting_derive::script_bindings; pub struct BevyCorePipelineScriptingPlugin; -pub(crate) fn register_skybox_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_core_pipeline::Skybox, - >::new(world) - .register_documented( - "clone", - |_self: R<::bevy_core_pipeline::Skybox>| { - let output: V<::bevy_core_pipeline::Skybox> = { - { - let output: V<::bevy_core_pipeline::Skybox> = - <::bevy_core_pipeline::Skybox as ::std::clone::Clone>::clone(&_self).into(); - output - } - }; - output - }, - "", - &["_self"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_core_pipeline::Skybox, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_tonemapping_functions(world: &mut World) { +pub(crate) fn register_deband_dither_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_core_pipeline::tonemapping::Tonemapping, + ::bevy_core_pipeline::tonemapping::DebandDither, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_core_pipeline::tonemapping::Tonemapping>| { - let output: () = { - { - let output: () = <::bevy_core_pipeline::tonemapping::Tonemapping as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", - |_self: R<::bevy_core_pipeline::tonemapping::Tonemapping>| { - let output: V<::bevy_core_pipeline::tonemapping::Tonemapping> = { + |_self: R<::bevy_core_pipeline::tonemapping::DebandDither>| { + let output: V<::bevy_core_pipeline::tonemapping::DebandDither> = { { - let output: V<::bevy_core_pipeline::tonemapping::Tonemapping> = <::bevy_core_pipeline::tonemapping::Tonemapping as ::std::clone::Clone>::clone( + let output: V<::bevy_core_pipeline::tonemapping::DebandDither> = <::bevy_core_pipeline::tonemapping::DebandDither as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -80,13 +37,13 @@ pub(crate) fn register_tonemapping_functions(world: &mut World) { .register_documented( "eq", | - _self: R<::bevy_core_pipeline::tonemapping::Tonemapping>, - other: R<::bevy_core_pipeline::tonemapping::Tonemapping>| + _self: R<::bevy_core_pipeline::tonemapping::DebandDither>, + other: R<::bevy_core_pipeline::tonemapping::DebandDither>| { let output: bool = { { - let output: bool = <::bevy_core_pipeline::tonemapping::Tonemapping as ::std::cmp::PartialEq< - ::bevy_core_pipeline::tonemapping::Tonemapping, + let output: bool = <::bevy_core_pipeline::tonemapping::DebandDither as ::std::cmp::PartialEq< + ::bevy_core_pipeline::tonemapping::DebandDither, >>::eq(&_self, &other) .into(); output @@ -96,42 +53,25 @@ pub(crate) fn register_tonemapping_functions(world: &mut World) { }, "", &["_self", "other"], - ) - .register_documented( - "is_enabled", - |_self: R<::bevy_core_pipeline::tonemapping::Tonemapping>| { - let output: bool = { - { - let output: bool = ::bevy_core_pipeline::tonemapping::Tonemapping::is_enabled( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_core_pipeline::tonemapping::Tonemapping, + ::bevy_core_pipeline::tonemapping::DebandDither, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_deband_dither_functions(world: &mut World) { +pub(crate) fn register_tonemapping_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_core_pipeline::tonemapping::DebandDither, + ::bevy_core_pipeline::tonemapping::Tonemapping, >::new(world) .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_core_pipeline::tonemapping::DebandDither>| { - let output: () = { + "clone", + |_self: R<::bevy_core_pipeline::tonemapping::Tonemapping>| { + let output: V<::bevy_core_pipeline::tonemapping::Tonemapping> = { { - let output: () = <::bevy_core_pipeline::tonemapping::DebandDither as ::std::cmp::Eq>::assert_receiver_is_total_eq( + let output: V<::bevy_core_pipeline::tonemapping::Tonemapping> = <::bevy_core_pipeline::tonemapping::Tonemapping as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -144,13 +84,16 @@ pub(crate) fn register_deband_dither_functions(world: &mut World) { &["_self"], ) .register_documented( - "clone", - |_self: R<::bevy_core_pipeline::tonemapping::DebandDither>| { - let output: V<::bevy_core_pipeline::tonemapping::DebandDither> = { + "eq", + | + _self: R<::bevy_core_pipeline::tonemapping::Tonemapping>, + other: R<::bevy_core_pipeline::tonemapping::Tonemapping>| + { + let output: bool = { { - let output: V<::bevy_core_pipeline::tonemapping::DebandDither> = <::bevy_core_pipeline::tonemapping::DebandDither as ::std::clone::Clone>::clone( - &_self, - ) + let output: bool = <::bevy_core_pipeline::tonemapping::Tonemapping as ::std::cmp::PartialEq< + ::bevy_core_pipeline::tonemapping::Tonemapping, + >>::eq(&_self, &other) .into(); output } @@ -158,19 +101,16 @@ pub(crate) fn register_deband_dither_functions(world: &mut World) { output }, "", - &["_self"], + &["_self", "other"], ) .register_documented( - "eq", - | - _self: R<::bevy_core_pipeline::tonemapping::DebandDither>, - other: R<::bevy_core_pipeline::tonemapping::DebandDither>| - { + "is_enabled", + |_self: R<::bevy_core_pipeline::tonemapping::Tonemapping>| { let output: bool = { { - let output: bool = <::bevy_core_pipeline::tonemapping::DebandDither as ::std::cmp::PartialEq< - ::bevy_core_pipeline::tonemapping::DebandDither, - >>::eq(&_self, &other) + let output: bool = ::bevy_core_pipeline::tonemapping::Tonemapping::is_enabled( + &_self, + ) .into(); output } @@ -178,13 +118,13 @@ pub(crate) fn register_deband_dither_functions(world: &mut World) { output }, "", - &["_self", "other"], + &["_self"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_core_pipeline::tonemapping::DebandDither, + ::bevy_core_pipeline::tonemapping::Tonemapping, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } @@ -386,12 +326,44 @@ pub(crate) fn register_order_independent_transparency_settings_functions(world: bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_no_background_motion_vectors_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_core_pipeline::prepass::NoBackgroundMotionVectors, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_core_pipeline::prepass::NoBackgroundMotionVectors>| { + let output: V< + ::bevy_core_pipeline::prepass::NoBackgroundMotionVectors, + > = { + { + let output: V< + ::bevy_core_pipeline::prepass::NoBackgroundMotionVectors, + > = <::bevy_core_pipeline::prepass::NoBackgroundMotionVectors as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_core_pipeline::prepass::NoBackgroundMotionVectors, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} impl Plugin for BevyCorePipelineScriptingPlugin { fn build(&self, app: &mut App) { let mut world = app.world_mut(); - register_skybox_functions(&mut world); - register_tonemapping_functions(&mut world); register_deband_dither_functions(&mut world); + register_tonemapping_functions(&mut world); register_deferred_prepass_functions(&mut world); register_deferred_prepass_double_buffer_functions(&mut world); register_depth_prepass_functions(&mut world); @@ -399,5 +371,6 @@ impl Plugin for BevyCorePipelineScriptingPlugin { register_motion_vector_prepass_functions(&mut world); register_normal_prepass_functions(&mut world); register_order_independent_transparency_settings_functions(&mut world); + register_no_background_motion_vectors_functions(&mut world); } } diff --git a/crates/bindings/bevy_ecs_bms_bindings/Cargo.toml b/crates/bindings/bevy_ecs_bms_bindings/Cargo.toml index caf0cfeb97..63dffc477b 100644 --- a/crates/bindings/bevy_ecs_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_ecs_bms_bindings/Cargo.toml @@ -20,22 +20,22 @@ bevy_app = { workspace = true, features = ["std"] } bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_ecs = { version = "0.18.1", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} arrayvec = { version = "^0.7.4", features = ["std"], default-features = false} -bevy_ecs_macros = { version = "^0.18.0", features = [], default-features = true} +bevy_ecs_macros = { version = "^0.19.0", features = [], default-features = true} -bevy_platform = { version = "^0.18.0", features = ["alloc", "serialize", "std"], default-features = true} +bevy_platform = { version = "^0.19.0", features = ["alloc", "futures-lite", "serialize", "std"], default-features = true} -bevy_ptr = { version = "^0.18.0", features = [], default-features = true} +bevy_ptr = { version = "^0.19.0", features = [], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_tasks = { version = "^0.18.0", features = ["async_executor", "futures-lite", "multi_threaded"], default-features = true} +bevy_tasks = { version = "^0.19.0", features = ["async_executor", "futures-lite", "multi_threaded"], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel", "std"], default-features = true} +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel", "std"], default-features = true} bitflags = { version = "^2.3", features = ["std"], default-features = false} diff --git a/crates/bindings/bevy_ecs_bms_bindings/src/lib.rs b/crates/bindings/bevy_ecs_bms_bindings/src/lib.rs index 189e63b240..48cad1b572 100644 --- a/crates/bindings/bevy_ecs_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_ecs_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -185,77 +186,54 @@ pub(crate) fn register_child_of_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ecs::hierarchy::ChildOf, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ecs::hierarchy::ChildOf>| { - let output: () = { - { - let output: () = <::bevy_ecs::hierarchy::ChildOf as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_ecs::hierarchy::ChildOf>| { - let output: V<::bevy_ecs::hierarchy::ChildOf> = { - { - let output: V<::bevy_ecs::hierarchy::ChildOf> = <::bevy_ecs::hierarchy::ChildOf as ::core::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_ecs::hierarchy::ChildOf>, - other: R<::bevy_ecs::hierarchy::ChildOf>| - { - let output: bool = { - { - let output: bool = <::bevy_ecs::hierarchy::ChildOf as ::core::cmp::PartialEq< - ::bevy_ecs::hierarchy::ChildOf, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "parent", - |_self: R<::bevy_ecs::hierarchy::ChildOf>| { - let output: V<::bevy_ecs::entity::Entity> = { - { - let output: V<::bevy_ecs::entity::Entity> = ::bevy_ecs::hierarchy::ChildOf::parent( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_ecs::hierarchy::ChildOf>| { + let output: V<::bevy_ecs::hierarchy::ChildOf> = { + { + let output: V<::bevy_ecs::hierarchy::ChildOf> = + <::bevy_ecs::hierarchy::ChildOf as ::core::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - " The parent entity of this child entity.", - &["_self"], - ); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ecs::hierarchy::ChildOf>, other: R<::bevy_ecs::hierarchy::ChildOf>| { + let output: bool = { + { + let output: bool = <::bevy_ecs::hierarchy::ChildOf as ::core::cmp::PartialEq< + ::bevy_ecs::hierarchy::ChildOf, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "parent", + |_self: R<::bevy_ecs::hierarchy::ChildOf>| { + let output: V<::bevy_ecs::entity::Entity> = { + { + let output: V<::bevy_ecs::entity::Entity> = + ::bevy_ecs::hierarchy::ChildOf::parent(&_self).into(); + output + } + }; + output + }, + " The parent entity of this child entity.", + &["_self"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -268,66 +246,39 @@ pub(crate) fn register_children_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ecs::hierarchy::Children, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ecs::hierarchy::Children>| { - let output: () = { - { - let output: () = <::bevy_ecs::hierarchy::Children as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_ecs::hierarchy::Children>, - other: R<::bevy_ecs::hierarchy::Children>| - { - let output: bool = { - { - let output: bool = <::bevy_ecs::hierarchy::Children as ::core::cmp::PartialEq< + .register_documented( + "eq", + |_self: R<::bevy_ecs::hierarchy::Children>, other: R<::bevy_ecs::hierarchy::Children>| { + let output: bool = { + { + let output: bool = + <::bevy_ecs::hierarchy::Children as ::core::cmp::PartialEq< ::bevy_ecs::hierarchy::Children, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "swap", - | - mut _self: M<::bevy_ecs::hierarchy::Children>, - a_index: usize, - b_index: usize| - { - let output: () = { - { - let output: () = ::bevy_ecs::hierarchy::Children::swap( - &mut _self, - a_index, - b_index, - ) - .into(); - output - } - }; - output - }, - " Swaps the child at `a_index` with the child at `b_index`.", - &["_self", "a_index", "b_index"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "swap", + |mut _self: M<::bevy_ecs::hierarchy::Children>, a_index: usize, b_index: usize| { + let output: () = { + { + let output: () = + ::bevy_ecs::hierarchy::Children::swap(&mut _self, a_index, b_index).into(); + output + } + }; + output + }, + " Swaps the child at `a_index` with the child at `b_index`.", + &["_self", "a_index", "b_index"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -393,17 +344,17 @@ pub(crate) fn register_despawn_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_insert_functions(world: &mut World) { +pub(crate) fn register_discard_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ecs::lifecycle::Insert, + ::bevy_ecs::lifecycle::Discard, >::new(world) .register_documented( "clone", - |_self: R<::bevy_ecs::lifecycle::Insert>| { - let output: V<::bevy_ecs::lifecycle::Insert> = { + |_self: R<::bevy_ecs::lifecycle::Discard>| { + let output: V<::bevy_ecs::lifecycle::Discard> = { { - let output: V<::bevy_ecs::lifecycle::Insert> = - <::bevy_ecs::lifecycle::Insert as ::core::clone::Clone>::clone(&_self) + let output: V<::bevy_ecs::lifecycle::Discard> = + <::bevy_ecs::lifecycle::Discard as ::core::clone::Clone>::clone(&_self) .into(); output } @@ -417,21 +368,21 @@ pub(crate) fn register_insert_functions(world: &mut World) { let mut registry = registry.write(); registry .register_type_data::< - ::bevy_ecs::lifecycle::Insert, + ::bevy_ecs::lifecycle::Discard, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_remove_functions(world: &mut World) { +pub(crate) fn register_insert_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ecs::lifecycle::Remove, + ::bevy_ecs::lifecycle::Insert, >::new(world) .register_documented( "clone", - |_self: R<::bevy_ecs::lifecycle::Remove>| { - let output: V<::bevy_ecs::lifecycle::Remove> = { + |_self: R<::bevy_ecs::lifecycle::Insert>| { + let output: V<::bevy_ecs::lifecycle::Insert> = { { - let output: V<::bevy_ecs::lifecycle::Remove> = - <::bevy_ecs::lifecycle::Remove as ::core::clone::Clone>::clone(&_self) + let output: V<::bevy_ecs::lifecycle::Insert> = + <::bevy_ecs::lifecycle::Insert as ::core::clone::Clone>::clone(&_self) .into(); output } @@ -445,21 +396,21 @@ pub(crate) fn register_remove_functions(world: &mut World) { let mut registry = registry.write(); registry .register_type_data::< - ::bevy_ecs::lifecycle::Remove, + ::bevy_ecs::lifecycle::Insert, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_replace_functions(world: &mut World) { +pub(crate) fn register_remove_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ecs::lifecycle::Replace, + ::bevy_ecs::lifecycle::Remove, >::new(world) .register_documented( "clone", - |_self: R<::bevy_ecs::lifecycle::Replace>| { - let output: V<::bevy_ecs::lifecycle::Replace> = { + |_self: R<::bevy_ecs::lifecycle::Remove>| { + let output: V<::bevy_ecs::lifecycle::Remove> = { { - let output: V<::bevy_ecs::lifecycle::Replace> = - <::bevy_ecs::lifecycle::Replace as ::core::clone::Clone>::clone(&_self) + let output: V<::bevy_ecs::lifecycle::Remove> = + <::bevy_ecs::lifecycle::Remove as ::core::clone::Clone>::clone(&_self) .into(); output } @@ -473,7 +424,7 @@ pub(crate) fn register_replace_functions(world: &mut World) { let mut registry = registry.write(); registry .register_type_data::< - ::bevy_ecs::lifecycle::Replace, + ::bevy_ecs::lifecycle::Remove, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } @@ -514,6 +465,21 @@ pub(crate) fn register_name_functions(world: &mut World) { }, "", &["_self", "other"], + ) + .register_documented( + "pre_hash", + |_self: R<::bevy_ecs::name::Name>| { + let output: u64 = { + { + let output: u64 = ::bevy_ecs::name::Name::pre_hash(&_self) + .into(); + output + } + }; + output + }, + " Get the precomputed hash of this names string, useful for raw entry operations on [`PreHashMap`](bevy_utils::PreHashMap)", + &["_self"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); @@ -521,6 +487,104 @@ pub(crate) fn register_name_functions(world: &mut World) { .register_type_data::<::bevy_ecs::name::Name, bevy_mod_scripting_bindings::MarkAsGenerated>( ); } +pub(crate) fn register_entity_hash_set_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ecs::entity::EntityHashSet, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ecs::entity::EntityHashSet>| { + let output: V<::bevy_ecs::entity::EntityHashSet> = { + { + let output: V<::bevy_ecs::entity::EntityHashSet> = <::bevy_ecs::entity::EntityHashSet as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_ecs::entity::EntityHashSet>, + other: R<::bevy_ecs::entity::EntityHashSet>| + { + let output: bool = { + { + let output: bool = <::bevy_ecs::entity::EntityHashSet as ::core::cmp::PartialEq< + ::bevy_ecs::entity::EntityHashSet, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "is_empty", + |_self: R<::bevy_ecs::entity::EntityHashSet>| { + let output: bool = { + { + let output: bool = ::bevy_ecs::entity::EntityHashSet::is_empty( + &_self, + ) + .into(); + output + } + }; + output + }, + " Returns `true` if the set contains no elements.", + &["_self"], + ) + .register_documented( + "new", + || { + let output: V<::bevy_ecs::entity::EntityHashSet> = { + { + let output: V<::bevy_ecs::entity::EntityHashSet> = ::bevy_ecs::entity::EntityHashSet::new() + .into(); + output + } + }; + output + }, + " Creates an empty `EntityHashSet`.\n Equivalent to [`HashSet::with_hasher(EntityHash)`].\n [`HashSet::with_hasher(EntityHash)`]: HashSet::with_hasher", + &[], + ) + .register_documented( + "with_capacity", + |n: usize| { + let output: V<::bevy_ecs::entity::EntityHashSet> = { + { + let output: V<::bevy_ecs::entity::EntityHashSet> = ::bevy_ecs::entity::EntityHashSet::with_capacity( + n, + ) + .into(); + output + } + }; + output + }, + " Creates an empty `EntityHashSet` with the specified capacity.\n Equivalent to [`HashSet::with_capacity_and_hasher(n, EntityHash)`].\n [`HashSet::with_capacity_and_hasher(n, EntityHash)`]: HashSet::with_capacity_and_hasher", + &["n"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ecs::entity::EntityHashSet, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_default_query_filters_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ecs::entity_disabling::DefaultQueryFilters, @@ -575,23 +639,6 @@ pub(crate) fn register_component_id_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ecs::component::ComponentId, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ecs::component::ComponentId>| { - let output: () = { - { - let output: () = <::bevy_ecs::component::ComponentId as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ecs::component::ComponentId>| { @@ -675,23 +722,6 @@ pub(crate) fn register_tick_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ecs::change_detection::Tick, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ecs::change_detection::Tick>| { - let output: () = { - { - let output: () = <::bevy_ecs::change_detection::Tick as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ecs::change_detection::Tick>| { @@ -804,154 +834,24 @@ pub(crate) fn register_tick_functions(world: &mut World) { " Sets the value of this change tick.", &["_self", "tick"], ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_ecs::change_detection::Tick, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_component_ticks_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ecs::change_detection::ComponentTicks, - >::new(world) - .register_documented( - "clone", - |_self: R<::bevy_ecs::change_detection::ComponentTicks>| { - let output: V<::bevy_ecs::change_detection::ComponentTicks> = { - { - let output: V<::bevy_ecs::change_detection::ComponentTicks> = <::bevy_ecs::change_detection::ComponentTicks as ::core::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "is_added", - | - _self: R<::bevy_ecs::change_detection::ComponentTicks>, - last_run: V<::bevy_ecs::change_detection::Tick>, - this_run: V<::bevy_ecs::change_detection::Tick>| - { - let output: bool = { - { - let output: bool = ::bevy_ecs::change_detection::ComponentTicks::is_added( - &_self, - last_run.into_inner(), - this_run.into_inner(), - ) - .into(); - output - } - }; - output - }, - " Returns `true` if the component or resource was added after the system last ran\n (or the system is running for the first time).", - &["_self", "last_run", "this_run"], - ) - .register_documented( - "is_changed", - | - _self: R<::bevy_ecs::change_detection::ComponentTicks>, - last_run: V<::bevy_ecs::change_detection::Tick>, - this_run: V<::bevy_ecs::change_detection::Tick>| - { - let output: bool = { - { - let output: bool = ::bevy_ecs::change_detection::ComponentTicks::is_changed( - &_self, - last_run.into_inner(), - this_run.into_inner(), - ) - .into(); - output - } - }; - output - }, - " Returns `true` if the component or resource was added or mutably dereferenced after the system last ran\n (or the system is running for the first time).", - &["_self", "last_run", "this_run"], - ) - .register_documented( - "new", - |change_tick: V<::bevy_ecs::change_detection::Tick>| { - let output: V<::bevy_ecs::change_detection::ComponentTicks> = { - { - let output: V<::bevy_ecs::change_detection::ComponentTicks> = ::bevy_ecs::change_detection::ComponentTicks::new( - change_tick.into_inner(), - ) - .into(); - output - } - }; - output - }, - " Creates a new instance with the same change tick for `added` and `changed`.", - &["change_tick"], - ) - .register_documented( - "set_changed", - | - mut _self: M<::bevy_ecs::change_detection::ComponentTicks>, - change_tick: V<::bevy_ecs::change_detection::Tick>| - { - let output: () = { - { - let output: () = ::bevy_ecs::change_detection::ComponentTicks::set_changed( - &mut _self, - change_tick.into_inner(), - ) - .into(); - output - } - }; - output - }, - " Manually sets the change tick.\n This is normally done automatically via the [`DerefMut`](core::ops::DerefMut) implementation\n on [`Mut`](crate::change_detection::Mut), [`ResMut`](crate::change_detection::ResMut), etc.\n However, components and resources that make use of interior mutability might require manual updates.\n # Example\n ```no_run\n # use bevy_ecs::{world::World, change_detection::ComponentTicks};\n let world: World = unimplemented!();\n let component_ticks: ComponentTicks = unimplemented!();\n component_ticks.set_changed(world.read_change_tick());\n ```", - &["_self", "change_tick"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_ecs::change_detection::ComponentTicks, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_entity_hash_set_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ecs::entity::EntityHashSet, - >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ecs::entity::EntityHashSet>| { - let output: () = { - { - let output: () = <::bevy_ecs::entity::EntityHashSet as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ecs::change_detection::Tick, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_component_ticks_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ecs::change_detection::ComponentTicks, + >::new(world) .register_documented( "clone", - |_self: R<::bevy_ecs::entity::EntityHashSet>| { - let output: V<::bevy_ecs::entity::EntityHashSet> = { + |_self: R<::bevy_ecs::change_detection::ComponentTicks>| { + let output: V<::bevy_ecs::change_detection::ComponentTicks> = { { - let output: V<::bevy_ecs::entity::EntityHashSet> = <::bevy_ecs::entity::EntityHashSet as ::core::clone::Clone>::clone( + let output: V<::bevy_ecs::change_detection::ComponentTicks> = <::bevy_ecs::change_detection::ComponentTicks as ::core::clone::Clone>::clone( &_self, ) .into(); @@ -964,32 +864,18 @@ pub(crate) fn register_entity_hash_set_functions(world: &mut World) { &["_self"], ) .register_documented( - "eq", + "is_added", | - _self: R<::bevy_ecs::entity::EntityHashSet>, - other: R<::bevy_ecs::entity::EntityHashSet>| + _self: R<::bevy_ecs::change_detection::ComponentTicks>, + last_run: V<::bevy_ecs::change_detection::Tick>, + this_run: V<::bevy_ecs::change_detection::Tick>| { let output: bool = { { - let output: bool = <::bevy_ecs::entity::EntityHashSet as ::core::cmp::PartialEq< - ::bevy_ecs::entity::EntityHashSet, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "is_empty", - |_self: R<::bevy_ecs::entity::EntityHashSet>| { - let output: bool = { - { - let output: bool = ::bevy_ecs::entity::EntityHashSet::is_empty( + let output: bool = ::bevy_ecs::change_detection::ComponentTicks::is_added( &_self, + last_run.into_inner(), + this_run.into_inner(), ) .into(); output @@ -997,16 +883,22 @@ pub(crate) fn register_entity_hash_set_functions(world: &mut World) { }; output }, - " Returns `true` if the set contains no elements.", - &["_self"], + " Returns `true` if the component or resource was added after the system last ran\n (or the system is running for the first time).", + &["_self", "last_run", "this_run"], ) .register_documented( - "len", - |_self: R<::bevy_ecs::entity::EntityHashSet>| { - let output: usize = { + "is_changed", + | + _self: R<::bevy_ecs::change_detection::ComponentTicks>, + last_run: V<::bevy_ecs::change_detection::Tick>, + this_run: V<::bevy_ecs::change_detection::Tick>| + { + let output: bool = { { - let output: usize = ::bevy_ecs::entity::EntityHashSet::len( + let output: bool = ::bevy_ecs::change_detection::ComponentTicks::is_changed( &_self, + last_run.into_inner(), + this_run.into_inner(), ) .into(); output @@ -1014,31 +906,37 @@ pub(crate) fn register_entity_hash_set_functions(world: &mut World) { }; output }, - " Returns the number of elements in the set.", - &["_self"], + " Returns `true` if the component or resource was added or mutably dereferenced after the system last ran\n (or the system is running for the first time).", + &["_self", "last_run", "this_run"], ) .register_documented( "new", - || { - let output: V<::bevy_ecs::entity::EntityHashSet> = { + |change_tick: V<::bevy_ecs::change_detection::Tick>| { + let output: V<::bevy_ecs::change_detection::ComponentTicks> = { { - let output: V<::bevy_ecs::entity::EntityHashSet> = ::bevy_ecs::entity::EntityHashSet::new() + let output: V<::bevy_ecs::change_detection::ComponentTicks> = ::bevy_ecs::change_detection::ComponentTicks::new( + change_tick.into_inner(), + ) .into(); output } }; output }, - " Creates an empty `EntityHashSet`.\n Equivalent to [`HashSet::with_hasher(EntityHash)`].\n [`HashSet::with_hasher(EntityHash)`]: HashSet::with_hasher", - &[], + " Creates a new instance with the same change tick for `added` and `changed`.", + &["change_tick"], ) .register_documented( - "with_capacity", - |n: usize| { - let output: V<::bevy_ecs::entity::EntityHashSet> = { + "set_changed", + | + mut _self: M<::bevy_ecs::change_detection::ComponentTicks>, + change_tick: V<::bevy_ecs::change_detection::Tick>| + { + let output: () = { { - let output: V<::bevy_ecs::entity::EntityHashSet> = ::bevy_ecs::entity::EntityHashSet::with_capacity( - n, + let output: () = ::bevy_ecs::change_detection::ComponentTicks::set_changed( + &mut _self, + change_tick.into_inner(), ) .into(); output @@ -1046,14 +944,14 @@ pub(crate) fn register_entity_hash_set_functions(world: &mut World) { }; output }, - " Creates an empty `EntityHashSet` with the specified capacity.\n Equivalent to [`HashSet::with_capacity_and_hasher(n, EntityHash)`].\n [`HashSet::with_capacity_and_hasher(n, EntityHash)`]: HashSet::with_capacity_and_hasher", - &["n"], + " Manually sets the change tick.\n This is normally done automatically via the [`DerefMut`](core::ops::DerefMut) implementation\n on [`Mut`](crate::change_detection::Mut), [`ResMut`](crate::change_detection::ResMut), etc.\n However, components and resources that make use of interior mutability might require manual updates.\n # Example\n ```no_run\n # use bevy_ecs::{world::World, change_detection::ComponentTicks};\n let world: World = unimplemented!();\n let component_ticks: ComponentTicks = unimplemented!();\n component_ticks.set_changed(world.read_change_tick());\n ```", + &["_self", "change_tick"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_ecs::entity::EntityHashSet, + ::bevy_ecs::change_detection::ComponentTicks, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } @@ -1142,77 +1040,55 @@ pub(crate) fn register_entity_index_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ecs::entity::EntityIndex, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ecs::entity::EntityIndex>| { - let output: () = { - { - let output: () = <::bevy_ecs::entity::EntityIndex as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_ecs::entity::EntityIndex>| { - let output: V<::bevy_ecs::entity::EntityIndex> = { - { - let output: V<::bevy_ecs::entity::EntityIndex> = <::bevy_ecs::entity::EntityIndex as ::core::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_ecs::entity::EntityIndex>| { + let output: V<::bevy_ecs::entity::EntityIndex> = { + { + let output: V<::bevy_ecs::entity::EntityIndex> = + <::bevy_ecs::entity::EntityIndex as ::core::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_ecs::entity::EntityIndex>, - other: R<::bevy_ecs::entity::EntityIndex>| - { - let output: bool = { - { - let output: bool = <::bevy_ecs::entity::EntityIndex as ::core::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ecs::entity::EntityIndex>, other: R<::bevy_ecs::entity::EntityIndex>| { + let output: bool = { + { + let output: bool = + <::bevy_ecs::entity::EntityIndex as ::core::cmp::PartialEq< ::bevy_ecs::entity::EntityIndex, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "index", - |_self: V<::bevy_ecs::entity::EntityIndex>| { - let output: u32 = { - { - let output: u32 = ::bevy_ecs::entity::EntityIndex::index( - _self.into_inner(), - ) - .into(); - output - } - }; - output - }, - " Gets the index of the entity.", - &["_self"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "index", + |_self: V<::bevy_ecs::entity::EntityIndex>| { + let output: u32 = { + { + let output: u32 = + ::bevy_ecs::entity::EntityIndex::index(_self.into_inner()).into(); + output + } + }; + output + }, + " Gets the index of the entity.", + &["_self"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -1243,23 +1119,6 @@ pub(crate) fn register_entity_generation_functions(world: &mut World) { " Returns the [`EntityGeneration`] that would result from this many more `versions` of the corresponding [`EntityIndex`] from passing.", &["_self", "versions"], ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ecs::entity::EntityGeneration>| { - let output: () = { - { - let output: () = <::bevy_ecs::entity::EntityGeneration as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ecs::entity::EntityGeneration>| { @@ -1426,6 +1285,35 @@ pub(crate) fn register_removed_component_entity_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_hashed_str_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ecs::name::HashedStr, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ecs::name::HashedStr>| { + let output: V<::bevy_ecs::name::HashedStr> = { + { + let output: V<::bevy_ecs::name::HashedStr> = <::bevy_ecs::name::HashedStr as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ecs::name::HashedStr, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_observed_by_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ecs::observer::ObservedBy, @@ -1438,6 +1326,52 @@ pub(crate) fn register_observed_by_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_is_resource_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ecs::resource::IsResource, + >::new(world) + .register_documented( + "new", + |component_id: V<::bevy_ecs::component::ComponentId>| { + let output: V<::bevy_ecs::resource::IsResource> = { + { + let output: V<::bevy_ecs::resource::IsResource> = ::bevy_ecs::resource::IsResource::new( + component_id.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Creates a new instance with the given `component_id`", + &["component_id"], + ) + .register_documented( + "resource_component_id", + |_self: R<::bevy_ecs::resource::IsResource>| { + let output: V<::bevy_ecs::component::ComponentId> = { + { + let output: V<::bevy_ecs::component::ComponentId> = ::bevy_ecs::resource::IsResource::resource_component_id( + &_self, + ) + .into(); + output + } + }; + output + }, + " The [`ComponentId`] of the resource component (the _actual_ resource value component, not the [`IsResource`] component).", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ecs::resource::IsResource, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} impl Plugin for BevyEcsScriptingPlugin { fn build(&self, app: &mut App) { let mut world = app.world_mut(); @@ -1446,21 +1380,23 @@ impl Plugin for BevyEcsScriptingPlugin { register_children_functions(&mut world); register_add_functions(&mut world); register_despawn_functions(&mut world); + register_discard_functions(&mut world); register_insert_functions(&mut world); register_remove_functions(&mut world); - register_replace_functions(&mut world); register_name_functions(&mut world); + register_entity_hash_set_functions(&mut world); register_default_query_filters_functions(&mut world); register_component_id_functions(&mut world); register_tick_functions(&mut world); register_component_ticks_functions(&mut world); - register_entity_hash_set_functions(&mut world); register_entity_index_set_functions(&mut world); register_entity_index_functions(&mut world); register_entity_generation_functions(&mut world); register_entity_hash_functions(&mut world); register_disabled_functions(&mut world); register_removed_component_entity_functions(&mut world); + register_hashed_str_functions(&mut world); register_observed_by_functions(&mut world); + register_is_resource_functions(&mut world); } } diff --git a/crates/bindings/bevy_gizmos_bms_bindings/Cargo.toml b/crates/bindings/bevy_gizmos_bms_bindings/Cargo.toml index 32d9d0d9c7..68a1fc230a 100644 --- a/crates/bindings/bevy_gizmos_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_gizmos_bms_bindings/Cargo.toml @@ -20,31 +20,37 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_gizmos = { version = "0.18.1", features = ["bevy_light"], default-features = true} +bevy_gizmos = { version = "0.19.0", features = ["bevy_mesh"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_camera = { version = "^0.18.0", features = [], default-features = true} +bevy_camera = { version = "^0.19.0", features = [], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_gizmos_macros = { version = "^0.18.0", features = [], default-features = true} +bevy_gizmos_macros = { version = "^0.19.0", features = [], default-features = true} -bevy_light = { version = "^0.18.0", features = ["webgl"], default-features = true} +bevy_input = { version = "^0.19.0", features = ["bevy_reflect", "gamepad", "gestures", "keyboard", "mouse", "smol_str", "std", "touch"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_log = { version = "^0.19.0", features = [], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_time = { version = "^0.18.0", features = ["bevy_reflect", "std"], default-features = true} +bevy_mesh = { version = "^0.19.0", features = ["bevy_mikktspace", "morph"], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} +bevy_time = { version = "^0.19.0", features = ["bevy_reflect", "std"], default-features = true} + +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} + +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} + +bevy_window = { version = "^0.19.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} diff --git a/crates/bindings/bevy_gizmos_bms_bindings/src/lib.rs b/crates/bindings/bevy_gizmos_bms_bindings/src/lib.rs index 6f8fd601d6..f5e0f632ce 100644 --- a/crates/bindings/bevy_gizmos_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_gizmos_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -54,6 +55,96 @@ pub(crate) fn register_show_aabb_gizmo_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_frustum_gizmo_config_group_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_gizmos::frustum::FrustumGizmoConfigGroup, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_gizmos::frustum::FrustumGizmoConfigGroup>| { + let output: V<::bevy_gizmos::frustum::FrustumGizmoConfigGroup> = { + { + let output: V<::bevy_gizmos::frustum::FrustumGizmoConfigGroup> = <::bevy_gizmos::frustum::FrustumGizmoConfigGroup as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_gizmos::frustum::FrustumGizmoConfigGroup, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_show_frustum_gizmo_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_gizmos::frustum::ShowFrustumGizmo, + >::new(world); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_gizmos::frustum::ShowFrustumGizmo, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_show_skinned_mesh_bounds_gizmo_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_gizmos::skinned_mesh_bounds::ShowSkinnedMeshBoundsGizmo, + >::new(world); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_gizmos::skinned_mesh_bounds::ShowSkinnedMeshBoundsGizmo, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_skinned_mesh_bounds_gizmo_config_group_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_gizmos::skinned_mesh_bounds::SkinnedMeshBoundsGizmoConfigGroup, + >::new(world) + .register_documented( + "clone", + | + _self: R< + ::bevy_gizmos::skinned_mesh_bounds::SkinnedMeshBoundsGizmoConfigGroup, + >| + { + let output: V< + ::bevy_gizmos::skinned_mesh_bounds::SkinnedMeshBoundsGizmoConfigGroup, + > = { + { + let output: V< + ::bevy_gizmos::skinned_mesh_bounds::SkinnedMeshBoundsGizmoConfigGroup, + > = <::bevy_gizmos::skinned_mesh_bounds::SkinnedMeshBoundsGizmoConfigGroup as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_gizmos::skinned_mesh_bounds::SkinnedMeshBoundsGizmoConfigGroup, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_default_gizmo_config_group_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_gizmos::config::DefaultGizmoConfigGroup, @@ -140,60 +231,43 @@ pub(crate) fn register_gizmo_line_joint_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_gizmos::config::GizmoLineJoint, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_gizmos::config::GizmoLineJoint>| { - let output: () = { - { - let output: () = <::bevy_gizmos::config::GizmoLineJoint as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_gizmos::config::GizmoLineJoint>| { - let output: V<::bevy_gizmos::config::GizmoLineJoint> = { - { - let output: V<::bevy_gizmos::config::GizmoLineJoint> = <::bevy_gizmos::config::GizmoLineJoint as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_gizmos::config::GizmoLineJoint>, - other: R<::bevy_gizmos::config::GizmoLineJoint>| - { - let output: bool = { - { - let output: bool = <::bevy_gizmos::config::GizmoLineJoint as ::std::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_gizmos::config::GizmoLineJoint>| { + let output: V<::bevy_gizmos::config::GizmoLineJoint> = { + { + let output: V<::bevy_gizmos::config::GizmoLineJoint> = + <::bevy_gizmos::config::GizmoLineJoint as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_gizmos::config::GizmoLineJoint>, + other: R<::bevy_gizmos::config::GizmoLineJoint>| { + let output: bool = { + { + let output: bool = + <::bevy_gizmos::config::GizmoLineJoint as ::std::cmp::PartialEq< ::bevy_gizmos::config::GizmoLineJoint, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -279,46 +353,69 @@ pub(crate) fn register_gizmo_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_light_gizmo_color_functions(world: &mut World) { +pub(crate) fn register_transform_gizmo_axis_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_gizmos::light::LightGizmoColor, + ::bevy_gizmos::transform_gizmo::TransformGizmoAxis, >::new(world) - .register_documented( - "clone", - |_self: R<::bevy_gizmos::light::LightGizmoColor>| { - let output: V<::bevy_gizmos::light::LightGizmoColor> = { - { - let output: V<::bevy_gizmos::light::LightGizmoColor> = - <::bevy_gizmos::light::LightGizmoColor as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ); + .register_documented( + "clone", + |_self: R<::bevy_gizmos::transform_gizmo::TransformGizmoAxis>| { + let output: V<::bevy_gizmos::transform_gizmo::TransformGizmoAxis> = { + { + let output: V< + ::bevy_gizmos::transform_gizmo::TransformGizmoAxis, + > = <::bevy_gizmos::transform_gizmo::TransformGizmoAxis as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_gizmos::transform_gizmo::TransformGizmoAxis>, + other: R<::bevy_gizmos::transform_gizmo::TransformGizmoAxis>| + { + let output: bool = { + { + let output: bool = <::bevy_gizmos::transform_gizmo::TransformGizmoAxis as ::std::cmp::PartialEq< + ::bevy_gizmos::transform_gizmo::TransformGizmoAxis, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_gizmos::light::LightGizmoColor, + ::bevy_gizmos::transform_gizmo::TransformGizmoAxis, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_light_gizmo_config_group_functions(world: &mut World) { +pub(crate) fn register_transform_gizmo_camera_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_gizmos::light::LightGizmoConfigGroup, + ::bevy_gizmos::transform_gizmo::TransformGizmoCamera, >::new(world) .register_documented( "clone", - |_self: R<::bevy_gizmos::light::LightGizmoConfigGroup>| { - let output: V<::bevy_gizmos::light::LightGizmoConfigGroup> = { + |_self: R<::bevy_gizmos::transform_gizmo::TransformGizmoCamera>| { + let output: V<::bevy_gizmos::transform_gizmo::TransformGizmoCamera> = { { - let output: V<::bevy_gizmos::light::LightGizmoConfigGroup> = <::bevy_gizmos::light::LightGizmoConfigGroup as ::std::clone::Clone>::clone( + let output: V< + ::bevy_gizmos::transform_gizmo::TransformGizmoCamera, + > = <::bevy_gizmos::transform_gizmo::TransformGizmoCamera as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -334,19 +431,164 @@ pub(crate) fn register_light_gizmo_config_group_functions(world: &mut World) { let mut registry = registry.write(); registry .register_type_data::< - ::bevy_gizmos::light::LightGizmoConfigGroup, + ::bevy_gizmos::transform_gizmo::TransformGizmoCamera, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_transform_gizmo_focus_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_gizmos::transform_gizmo::TransformGizmoFocus, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_gizmos::transform_gizmo::TransformGizmoFocus>| { + let output: V<::bevy_gizmos::transform_gizmo::TransformGizmoFocus> = { + { + let output: V< + ::bevy_gizmos::transform_gizmo::TransformGizmoFocus, + > = <::bevy_gizmos::transform_gizmo::TransformGizmoFocus as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_gizmos::transform_gizmo::TransformGizmoFocus, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_transform_gizmo_mode_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_gizmos::transform_gizmo::TransformGizmoMode, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_gizmos::transform_gizmo::TransformGizmoMode>| { + let output: V<::bevy_gizmos::transform_gizmo::TransformGizmoMode> = { + { + let output: V< + ::bevy_gizmos::transform_gizmo::TransformGizmoMode, + > = <::bevy_gizmos::transform_gizmo::TransformGizmoMode as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_gizmos::transform_gizmo::TransformGizmoMode>, + other: R<::bevy_gizmos::transform_gizmo::TransformGizmoMode>| + { + let output: bool = { + { + let output: bool = <::bevy_gizmos::transform_gizmo::TransformGizmoMode as ::std::cmp::PartialEq< + ::bevy_gizmos::transform_gizmo::TransformGizmoMode, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_gizmos::transform_gizmo::TransformGizmoMode, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_transform_gizmo_settings_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_gizmos::transform_gizmo::TransformGizmoSettings, + >::new(world); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_gizmos::transform_gizmo::TransformGizmoSettings, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_transform_gizmo_space_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_gizmos::transform_gizmo::TransformGizmoSpace, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_gizmos::transform_gizmo::TransformGizmoSpace>| { + let output: V<::bevy_gizmos::transform_gizmo::TransformGizmoSpace> = { + { + let output: V< + ::bevy_gizmos::transform_gizmo::TransformGizmoSpace, + > = <::bevy_gizmos::transform_gizmo::TransformGizmoSpace as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_gizmos::transform_gizmo::TransformGizmoSpace>, + other: R<::bevy_gizmos::transform_gizmo::TransformGizmoSpace>| + { + let output: bool = { + { + let output: bool = <::bevy_gizmos::transform_gizmo::TransformGizmoSpace as ::std::cmp::PartialEq< + ::bevy_gizmos::transform_gizmo::TransformGizmoSpace, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_gizmos::transform_gizmo::TransformGizmoSpace, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_show_light_gizmo_functions(world: &mut World) { +pub(crate) fn register_transform_gizmo_state_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_gizmos::light::ShowLightGizmo, + ::bevy_gizmos::transform_gizmo::TransformGizmoState, >::new(world); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_gizmos::light::ShowLightGizmo, + ::bevy_gizmos::transform_gizmo::TransformGizmoState, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } @@ -384,6 +626,10 @@ impl Plugin for BevyGizmosScriptingPlugin { let mut world = app.world_mut(); register_aabb_gizmo_config_group_functions(&mut world); register_show_aabb_gizmo_functions(&mut world); + register_frustum_gizmo_config_group_functions(&mut world); + register_show_frustum_gizmo_functions(&mut world); + register_show_skinned_mesh_bounds_gizmo_functions(&mut world); + register_skinned_mesh_bounds_gizmo_config_group_functions(&mut world); register_default_gizmo_config_group_functions(&mut world); register_gizmo_config_functions(&mut world); register_gizmo_config_store_functions(&mut world); @@ -391,9 +637,13 @@ impl Plugin for BevyGizmosScriptingPlugin { register_gizmo_line_joint_functions(&mut world); register_gizmo_line_style_functions(&mut world); register_gizmo_functions(&mut world); - register_light_gizmo_color_functions(&mut world); - register_light_gizmo_config_group_functions(&mut world); - register_show_light_gizmo_functions(&mut world); + register_transform_gizmo_axis_functions(&mut world); + register_transform_gizmo_camera_functions(&mut world); + register_transform_gizmo_focus_functions(&mut world); + register_transform_gizmo_mode_functions(&mut world); + register_transform_gizmo_settings_functions(&mut world); + register_transform_gizmo_space_functions(&mut world); + register_transform_gizmo_state_functions(&mut world); register_erased_gizmo_config_group_functions(&mut world); } } diff --git a/crates/bindings/bevy_gizmos_render_bms_bindings/Cargo.toml b/crates/bindings/bevy_gizmos_render_bms_bindings/Cargo.toml new file mode 100644 index 0000000000..7b8c84fbb4 --- /dev/null +++ b/crates/bindings/bevy_gizmos_render_bms_bindings/Cargo.toml @@ -0,0 +1,66 @@ +[package] +name = "bevy_gizmos_render_bms_bindings" +description = "Automatically generated bindings for bevy_gizmos_render crate" +readme = "README.md" +version.workspace = true +edition.workspace = true +authors.workspace = true +license.workspace = true +homepage.workspace = true +repository.workspace = true +keywords.workspace = true +categories.workspace = true + +[lib] +test = false + +[dependencies] + + +bevy_mod_scripting_core = { workspace = true } +bevy_mod_scripting_bindings = { workspace = true } +bevy_mod_scripting_derive = { workspace = true } +bevy_gizmos_render = { version = "0.19.0", features = ["bevy_pbr", "bevy_sprite_render", "webgl"], default-features = false} + + +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} + +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} + +bevy_camera = { version = "^0.19.0", features = [], default-features = true} + +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} + +bevy_core_pipeline = { version = "^0.19.0", features = ["tonemapping_luts", "webgl"], default-features = true} + +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} + +bevy_gizmos = { version = "^0.19.0", features = ["bevy_mesh"], default-features = true} + +bevy_image = { version = "^0.19.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} + +bevy_log = { version = "^0.19.0", features = [], default-features = true} + +bevy_material = { version = "^0.19.0", features = [], default-features = true} + +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} + +bevy_mesh = { version = "^0.19.0", features = ["bevy_mikktspace", "morph"], default-features = true} + +bevy_pbr = { version = "^0.19.0", features = ["bevy_gltf", "webgl"], default-features = true} + +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} + +bevy_render = { version = "^0.19.0", features = ["morph", "multi_threaded", "reflect_auto_register", "webgl"], default-features = true} + +bevy_shader = { version = "^0.19.0", features = [], default-features = true} + +bevy_sprite_render = { version = "^0.19.0", features = ["bevy_text", "webgl"], default-features = true} + +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} + +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} + +bytemuck = { version = "^1.0", features = [], default-features = true} + + diff --git a/crates/bindings/bevy_gizmos_render_bms_bindings/README.md b/crates/bindings/bevy_gizmos_render_bms_bindings/README.md new file mode 100644 index 0000000000..c3a53b9bcd --- /dev/null +++ b/crates/bindings/bevy_gizmos_render_bms_bindings/README.md @@ -0,0 +1,4 @@ +# bevy_gizmos_render bindings +This crate is part of the [bevy_mod_scripting](http://github.com/makspll/bevy_mod_scripting) project. + +The code inside is fully generated via a custom rustc plugin. \ No newline at end of file diff --git a/crates/bindings/bevy_gizmos_render_bms_bindings/src/lib.rs b/crates/bindings/bevy_gizmos_render_bms_bindings/src/lib.rs new file mode 100644 index 0000000000..34fea30308 --- /dev/null +++ b/crates/bindings/bevy_gizmos_render_bms_bindings/src/lib.rs @@ -0,0 +1,51 @@ +#![allow(clippy::all)] +#![allow(unused, deprecated, dead_code)] +extern crate std; + +use bevy_app::{App, Plugin}; +use bevy_ecs::prelude::*; +use bevy_mod_scripting_bindings::{ + ReflectReference, + function::{ + from::{M, R, V}, + namespace::NamespaceBuilder, + }, +}; +use bevy_mod_scripting_derive::script_bindings; +pub struct BevyGizmosRenderScriptingPlugin; +pub(crate) fn register_line_gizmo_entities_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_gizmos_render::LineGizmoEntities, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_gizmos_render::LineGizmoEntities>| { + let output: V<::bevy_gizmos_render::LineGizmoEntities> = { + { + let output: V<::bevy_gizmos_render::LineGizmoEntities> = + <::bevy_gizmos_render::LineGizmoEntities as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_gizmos_render::LineGizmoEntities, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +impl Plugin for BevyGizmosRenderScriptingPlugin { + fn build(&self, app: &mut App) { + let mut world = app.world_mut(); + register_line_gizmo_entities_functions(&mut world); + } +} diff --git a/crates/bindings/bevy_gltf_bms_bindings/Cargo.toml b/crates/bindings/bevy_gltf_bms_bindings/Cargo.toml index 960575be8f..b12ee26a32 100644 --- a/crates/bindings/bevy_gltf_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_gltf_bms_bindings/Cargo.toml @@ -20,42 +20,40 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_gltf = { version = "0.18.1", features = ["bevy_animation"], default-features = true} +bevy_gltf = { version = "0.19.0", features = ["bevy_animation"], default-features = true} base64 = { version = "^0.22.0", features = [], default-features = true} -bevy_animation = { version = "^0.18.0", features = ["bevy_mesh"], default-features = true} +bevy_animation = { version = "^0.19.0", features = ["bevy_mesh"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_camera = { version = "^0.18.0", features = [], default-features = true} +bevy_camera = { version = "^0.19.0", features = [], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_image = { version = "^0.18.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} +bevy_image = { version = "^0.19.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} -bevy_light = { version = "^0.18.0", features = ["webgl"], default-features = true} +bevy_light = { version = "^0.19.0", features = ["bevy_gizmos", "webgl"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_material = { version = "^0.19.0", features = [], default-features = true} -bevy_mesh = { version = "^0.18.0", features = ["bevy_mikktspace", "morph"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_pbr = { version = "^0.18.0", features = ["webgl"], default-features = true} +bevy_mesh = { version = "^0.19.0", features = ["bevy_mikktspace", "morph"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_render = { version = "^0.18.0", features = ["morph", "multi_threaded", "webgl"], default-features = true} +bevy_tasks = { version = "^0.19.0", features = ["async_executor", "futures-lite", "multi_threaded"], default-features = true} -bevy_scene = { version = "^0.18.0", features = ["serialize"], default-features = true} +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} -bevy_tasks = { version = "^0.18.0", features = ["async_executor", "futures-lite", "multi_threaded"], default-features = true} - -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_world_serialization = { version = "^0.19.0", features = ["serialize"], default-features = true} fixedbitset = { version = "^0.5", features = [], default-features = true} diff --git a/crates/bindings/bevy_gltf_bms_bindings/src/lib.rs b/crates/bindings/bevy_gltf_bms_bindings/src/lib.rs index 1ea9f8e38b..e505ddff35 100644 --- a/crates/bindings/bevy_gltf_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_gltf_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -68,6 +69,35 @@ pub(crate) fn register_gltf_scene_extras_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_gltf_scene_name_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_gltf::GltfSceneName, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_gltf::GltfSceneName>| { + let output: V<::bevy_gltf::GltfSceneName> = { + { + let output: V<::bevy_gltf::GltfSceneName> = <::bevy_gltf::GltfSceneName as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_gltf::GltfSceneName, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_gltf_mesh_extras_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_gltf::GltfMeshExtras, @@ -187,6 +217,7 @@ impl Plugin for BevyGltfScriptingPlugin { let mut world = app.world_mut(); register_gltf_extras_functions(&mut world); register_gltf_scene_extras_functions(&mut world); + register_gltf_scene_name_functions(&mut world); register_gltf_mesh_extras_functions(&mut world); register_gltf_mesh_name_functions(&mut world); register_gltf_material_extras_functions(&mut world); diff --git a/crates/bindings/bevy_image_bms_bindings/Cargo.toml b/crates/bindings/bevy_image_bms_bindings/Cargo.toml index a2c64c62a2..223864edd8 100644 --- a/crates/bindings/bevy_image_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_image_bms_bindings/Cargo.toml @@ -20,20 +20,20 @@ bevy_ecs = { workspace = true, features = ["std", "bevy_reflect"] } bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_image = { version = "0.18.1", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} +bevy_image = { version = "0.19.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} bitflags = { version = "^2.3", features = [], default-features = true} @@ -47,7 +47,7 @@ half = { version = "^2.4.1", features = [], default-features = true} image = { version = "^0.25.2", features = ["hdr", "png"], default-features = false} -ktx2 = { version = "^0.4.0", features = [], default-features = true} +ktx2 = { version = "^0.5.0", features = [], default-features = true} rectangle-pack = { version = "^0.4", features = [], default-features = true} diff --git a/crates/bindings/bevy_image_bms_bindings/src/lib.rs b/crates/bindings/bevy_image_bms_bindings/src/lib.rs index 16750dc04e..a809620824 100644 --- a/crates/bindings/bevy_image_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_image_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -16,23 +17,6 @@ pub(crate) fn register_texture_atlas_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_image::TextureAtlas, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_image::TextureAtlas>| { - let output: () = { - { - let output: () = <::bevy_image::TextureAtlas as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_image::TextureAtlas>| { @@ -118,23 +102,6 @@ pub(crate) fn register_texture_atlas_layout_functions(world: &mut World) { " Add a *section* to the list in the layout and returns its index\n which can be used with [`TextureAtlas`]\n # Arguments\n * `rect` - The section of the texture to be added\n [`TextureAtlas`]: crate::TextureAtlas", &["_self", "rect"], ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_image::TextureAtlasLayout>| { - let output: () = { - { - let output: () = <::bevy_image::TextureAtlasLayout as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_image::TextureAtlasLayout>| { @@ -186,7 +153,7 @@ pub(crate) fn register_texture_atlas_layout_functions(world: &mut World) { }; output }, - "", + " Returns `true` if the atlas contains no textures.", &["_self"], ) .register_documented( @@ -230,32 +197,170 @@ pub(crate) fn register_texture_atlas_layout_functions(world: &mut World) { >(); } pub(crate) fn register_image_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::bevy_image::Image>::new( + world, + ) + .register_documented( + "aspect_ratio", + |_self: R<::bevy_image::Image>| { + let output: V<::bevy_math::AspectRatio> = { + { + let output: V<::bevy_math::AspectRatio> = + ::bevy_image::Image::aspect_ratio(&_self).into(); + output + } + }; + output + }, + " Returns the aspect ratio (width / height) of a 2D image.", + &["_self"], + ) + .register_documented( + "clone", + |_self: R<::bevy_image::Image>| { + let output: V<::bevy_image::Image> = { + { + let output: V<::bevy_image::Image> = + <::bevy_image::Image as ::std::clone::Clone>::clone(&_self).into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "default_uninit", + || { + let output: V<::bevy_image::Image> = { + { + let output: V<::bevy_image::Image> = + ::bevy_image::Image::default_uninit().into(); + output + } + }; + output + }, + " Creates a new uninitialized 1x1x1 image", + &[], + ) + .register_documented( + "eq", + |_self: R<::bevy_image::Image>, other: R<::bevy_image::Image>| { + let output: bool = { + { + let output: bool = <::bevy_image::Image as ::std::cmp::PartialEq< + ::bevy_image::Image, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "height", + |_self: R<::bevy_image::Image>| { + let output: u32 = { + { + let output: u32 = ::bevy_image::Image::height(&_self).into(); + output + } + }; + output + }, + " Returns the height of a 2D image.", + &["_self"], + ) + .register_documented( + "is_compressed", + |_self: R<::bevy_image::Image>| { + let output: bool = { + { + let output: bool = ::bevy_image::Image::is_compressed(&_self).into(); + output + } + }; + output + }, + " Whether the texture format is compressed or uncompressed", + &["_self"], + ) + .register_documented( + "size", + |_self: R<::bevy_image::Image>| { + let output: V<::bevy_math::UVec2> = { + { + let output: V<::bevy_math::UVec2> = ::bevy_image::Image::size(&_self).into(); + output + } + }; + output + }, + " Returns the size of a 2D image.", + &["_self"], + ) + .register_documented( + "size_f32", + |_self: R<::bevy_image::Image>| { + let output: V<::bevy_math::Vec2> = { + { + let output: V<::bevy_math::Vec2> = ::bevy_image::Image::size_f32(&_self).into(); + output + } + }; + output + }, + " Returns the size of a 2D image as f32.", + &["_self"], + ) + .register_documented( + "transparent", + || { + let output: V<::bevy_image::Image> = { + { + let output: V<::bevy_image::Image> = ::bevy_image::Image::transparent().into(); + output + } + }; + output + }, + " A transparent white 1x1x1 image.\n Contrast to [`Image::default`], which is opaque.", + &[], + ) + .register_documented( + "width", + |_self: R<::bevy_image::Image>| { + let output: u32 = { + { + let output: u32 = ::bevy_image::Image::width(&_self).into(); + output + } + }; + output + }, + " Returns the width of a 2D image.", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::bevy_image::Image, bevy_mod_scripting_bindings::MarkAsGenerated>(); +} +pub(crate) fn register_image_sampler_descriptor_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_image::Image, + ::bevy_image::ImageSamplerDescriptor, >::new(world) - .register_documented( - "aspect_ratio", - |_self: R<::bevy_image::Image>| { - let output: V<::bevy_math::AspectRatio> = { - { - let output: V<::bevy_math::AspectRatio> = ::bevy_image::Image::aspect_ratio( - &_self, - ) - .into(); - output - } - }; - output - }, - " Returns the aspect ratio (width / height) of a 2D image.", - &["_self"], - ) .register_documented( "clone", - |_self: R<::bevy_image::Image>| { - let output: V<::bevy_image::Image> = { + |_self: R<::bevy_image::ImageSamplerDescriptor>| { + let output: V<::bevy_image::ImageSamplerDescriptor> = { { - let output: V<::bevy_image::Image> = <::bevy_image::Image as ::std::clone::Clone>::clone( + let output: V<::bevy_image::ImageSamplerDescriptor> = <::bevy_image::ImageSamplerDescriptor as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -267,28 +372,16 @@ pub(crate) fn register_image_functions(world: &mut World) { "", &["_self"], ) - .register_documented( - "default_uninit", - || { - let output: V<::bevy_image::Image> = { - { - let output: V<::bevy_image::Image> = ::bevy_image::Image::default_uninit() - .into(); - output - } - }; - output - }, - " Creates a new uninitialized 1x1x1 image", - &[], - ) .register_documented( "eq", - |_self: R<::bevy_image::Image>, other: R<::bevy_image::Image>| { + | + _self: R<::bevy_image::ImageSamplerDescriptor>, + other: R<::bevy_image::ImageSamplerDescriptor>| + { let output: bool = { { - let output: bool = <::bevy_image::Image as ::std::cmp::PartialEq< - ::bevy_image::Image, + let output: bool = <::bevy_image::ImageSamplerDescriptor as ::std::cmp::PartialEq< + ::bevy_image::ImageSamplerDescriptor, >>::eq(&_self, &other) .into(); output @@ -300,58 +393,53 @@ pub(crate) fn register_image_functions(world: &mut World) { &["_self", "other"], ) .register_documented( - "height", - |_self: R<::bevy_image::Image>| { - let output: u32 = { - { - let output: u32 = ::bevy_image::Image::height(&_self).into(); - output - } - }; - output - }, - " Returns the height of a 2D image.", - &["_self"], - ) - .register_documented( - "is_compressed", - |_self: R<::bevy_image::Image>| { - let output: bool = { + "linear", + || { + let output: V<::bevy_image::ImageSamplerDescriptor> = { { - let output: bool = ::bevy_image::Image::is_compressed(&_self) + let output: V<::bevy_image::ImageSamplerDescriptor> = ::bevy_image::ImageSamplerDescriptor::linear() .into(); output } }; output }, - " Whether the texture format is compressed or uncompressed", - &["_self"], + " Returns a sampler descriptor with [`Linear`](ImageFilterMode::Linear) min and mag filters", + &[], ) .register_documented( - "pixel_data_offset", - |_self: R<::bevy_image::Image>, coords: V<::bevy_math::UVec3>| { - let output: ::std::option::Option = { + "nearest", + || { + let output: V<::bevy_image::ImageSamplerDescriptor> = { { - let output: ::std::option::Option = ::bevy_image::Image::pixel_data_offset( - &_self, - coords.into_inner(), - ) + let output: V<::bevy_image::ImageSamplerDescriptor> = ::bevy_image::ImageSamplerDescriptor::nearest() .into(); output } }; output }, - " Compute the byte offset where the data of a specific pixel is stored\n Returns None if the provided coordinates are out of bounds.\n For 2D textures, Z is the layer number. For 1D textures, Y and Z are ignored.", - &["_self", "coords"], - ) + " Returns a sampler descriptor with [`Nearest`](ImageFilterMode::Nearest) min and mag filters", + &[], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_image::ImageSamplerDescriptor, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_image_sampler_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_image::ImageSampler, + >::new(world) .register_documented( - "size", - |_self: R<::bevy_image::Image>| { - let output: V<::bevy_math::UVec2> = { + "clone", + |_self: R<::bevy_image::ImageSampler>| { + let output: V<::bevy_image::ImageSampler> = { { - let output: V<::bevy_math::UVec2> = ::bevy_image::Image::size( + let output: V<::bevy_image::ImageSampler> = <::bevy_image::ImageSampler as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -360,59 +448,249 @@ pub(crate) fn register_image_functions(world: &mut World) { }; output }, - " Returns the size of a 2D image.", + "", &["_self"], ) .register_documented( - "size_f32", - |_self: R<::bevy_image::Image>| { - let output: V<::bevy_math::Vec2> = { + "eq", + |_self: R<::bevy_image::ImageSampler>, other: R<::bevy_image::ImageSampler>| { + let output: bool = { { - let output: V<::bevy_math::Vec2> = ::bevy_image::Image::size_f32( - &_self, - ) + let output: bool = <::bevy_image::ImageSampler as ::std::cmp::PartialEq< + ::bevy_image::ImageSampler, + >>::eq(&_self, &other) .into(); output } }; output }, - " Returns the size of a 2D image as f32.", - &["_self"], + "", + &["_self", "other"], ) .register_documented( - "transparent", + "linear", || { - let output: V<::bevy_image::Image> = { + let output: V<::bevy_image::ImageSampler> = { { - let output: V<::bevy_image::Image> = ::bevy_image::Image::transparent() + let output: V<::bevy_image::ImageSampler> = ::bevy_image::ImageSampler::linear() .into(); output } }; output }, - " A transparent white 1x1x1 image.\n Contrast to [`Image::default`], which is opaque.", + " Returns an image sampler with [`ImageFilterMode::Linear`] min and mag filters", &[], ) .register_documented( - "width", - |_self: R<::bevy_image::Image>| { - let output: u32 = { + "nearest", + || { + let output: V<::bevy_image::ImageSampler> = { { - let output: u32 = ::bevy_image::Image::width(&_self).into(); + let output: V<::bevy_image::ImageSampler> = ::bevy_image::ImageSampler::nearest() + .into(); output } }; output }, - " Returns the width of a 2D image.", - &["_self"], + " Returns an image sampler with [`ImageFilterMode::Nearest`] min and mag filters", + &[], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry - .register_type_data::<::bevy_image::Image, bevy_mod_scripting_bindings::MarkAsGenerated>(); + .register_type_data::< + ::bevy_image::ImageSampler, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_image_address_mode_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_image::ImageAddressMode, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_image::ImageAddressMode>| { + let output: V<::bevy_image::ImageAddressMode> = { + { + let output: V<::bevy_image::ImageAddressMode> = + <::bevy_image::ImageAddressMode as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_image::ImageAddressMode>, other: R<::bevy_image::ImageAddressMode>| { + let output: bool = { + { + let output: bool = <::bevy_image::ImageAddressMode as ::std::cmp::PartialEq< + ::bevy_image::ImageAddressMode, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_image::ImageAddressMode, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_image_filter_mode_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_image::ImageFilterMode, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_image::ImageFilterMode>| { + let output: V<::bevy_image::ImageFilterMode> = { + { + let output: V<::bevy_image::ImageFilterMode> = + <::bevy_image::ImageFilterMode as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_image::ImageFilterMode>, other: R<::bevy_image::ImageFilterMode>| { + let output: bool = { + { + let output: bool = <::bevy_image::ImageFilterMode as ::std::cmp::PartialEq< + ::bevy_image::ImageFilterMode, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_image::ImageFilterMode, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_image_compare_function_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_image::ImageCompareFunction, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_image::ImageCompareFunction>| { + let output: V<::bevy_image::ImageCompareFunction> = { + { + let output: V<::bevy_image::ImageCompareFunction> = + <::bevy_image::ImageCompareFunction as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_image::ImageCompareFunction>, + other: R<::bevy_image::ImageCompareFunction>| { + let output: bool = { + { + let output: bool = + <::bevy_image::ImageCompareFunction as ::std::cmp::PartialEq< + ::bevy_image::ImageCompareFunction, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_image::ImageCompareFunction, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_image_sampler_border_color_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_image::ImageSamplerBorderColor, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_image::ImageSamplerBorderColor>| { + let output: V<::bevy_image::ImageSamplerBorderColor> = { + { + let output: V<::bevy_image::ImageSamplerBorderColor> = + <::bevy_image::ImageSamplerBorderColor as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_image::ImageSamplerBorderColor>, + other: R<::bevy_image::ImageSamplerBorderColor>| { + let output: bool = { + { + let output: bool = + <::bevy_image::ImageSamplerBorderColor as ::std::cmp::PartialEq< + ::bevy_image::ImageSamplerBorderColor, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_image::ImageSamplerBorderColor, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); } impl Plugin for BevyImageScriptingPlugin { fn build(&self, app: &mut App) { @@ -420,5 +698,11 @@ impl Plugin for BevyImageScriptingPlugin { register_texture_atlas_functions(&mut world); register_texture_atlas_layout_functions(&mut world); register_image_functions(&mut world); + register_image_sampler_descriptor_functions(&mut world); + register_image_sampler_functions(&mut world); + register_image_address_mode_functions(&mut world); + register_image_filter_mode_functions(&mut world); + register_image_compare_function_functions(&mut world); + register_image_sampler_border_color_functions(&mut world); } } diff --git a/crates/bindings/bevy_input_bms_bindings/Cargo.toml b/crates/bindings/bevy_input_bms_bindings/Cargo.toml index 4a81811b4b..92b483135c 100644 --- a/crates/bindings/bevy_input_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_input_bms_bindings/Cargo.toml @@ -20,17 +20,17 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_input = { version = "0.18.1", features = ["bevy_reflect", "gamepad", "gestures", "keyboard", "mouse", "smol_str", "std", "touch"], default-features = true} +bevy_input = { version = "0.19.0", features = ["bevy_reflect", "gamepad", "gestures", "keyboard", "mouse", "smol_str", "std", "touch"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_platform = { version = "^0.18.0", features = ["alloc", "serialize", "std"], default-features = true} +bevy_platform = { version = "^0.19.0", features = ["alloc", "futures-lite", "serialize", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} diff --git a/crates/bindings/bevy_input_bms_bindings/src/lib.rs b/crates/bindings/bevy_input_bms_bindings/src/lib.rs index f3c5de9721..6bc706f171 100644 --- a/crates/bindings/bevy_input_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_input_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -176,60 +177,41 @@ pub(crate) fn register_gamepad_axis_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input::gamepad::GamepadAxis, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::gamepad::GamepadAxis>| { - let output: () = { - { - let output: () = <::bevy_input::gamepad::GamepadAxis as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_input::gamepad::GamepadAxis>| { - let output: V<::bevy_input::gamepad::GamepadAxis> = { - { - let output: V<::bevy_input::gamepad::GamepadAxis> = <::bevy_input::gamepad::GamepadAxis as ::core::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_input::gamepad::GamepadAxis>| { + let output: V<::bevy_input::gamepad::GamepadAxis> = { + { + let output: V<::bevy_input::gamepad::GamepadAxis> = + <::bevy_input::gamepad::GamepadAxis as ::core::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_input::gamepad::GamepadAxis>, - other: R<::bevy_input::gamepad::GamepadAxis>| - { - let output: bool = { - { - let output: bool = <::bevy_input::gamepad::GamepadAxis as ::core::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_input::gamepad::GamepadAxis>, + other: R<::bevy_input::gamepad::GamepadAxis>| { + let output: bool = { + { + let output: bool = + <::bevy_input::gamepad::GamepadAxis as ::core::cmp::PartialEq< ::bevy_input::gamepad::GamepadAxis, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -242,60 +224,43 @@ pub(crate) fn register_gamepad_button_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input::gamepad::GamepadButton, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::gamepad::GamepadButton>| { - let output: () = { - { - let output: () = <::bevy_input::gamepad::GamepadButton as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_input::gamepad::GamepadButton>| { - let output: V<::bevy_input::gamepad::GamepadButton> = { - { - let output: V<::bevy_input::gamepad::GamepadButton> = <::bevy_input::gamepad::GamepadButton as ::core::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_input::gamepad::GamepadButton>, - other: R<::bevy_input::gamepad::GamepadButton>| - { - let output: bool = { - { - let output: bool = <::bevy_input::gamepad::GamepadButton as ::core::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_input::gamepad::GamepadButton>| { + let output: V<::bevy_input::gamepad::GamepadButton> = { + { + let output: V<::bevy_input::gamepad::GamepadButton> = + <::bevy_input::gamepad::GamepadButton as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_input::gamepad::GamepadButton>, + other: R<::bevy_input::gamepad::GamepadButton>| { + let output: bool = { + { + let output: bool = + <::bevy_input::gamepad::GamepadButton as ::core::cmp::PartialEq< ::bevy_input::gamepad::GamepadButton, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -338,60 +303,40 @@ pub(crate) fn register_key_code_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input::keyboard::KeyCode, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::keyboard::KeyCode>| { - let output: () = { - { - let output: () = <::bevy_input::keyboard::KeyCode as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_input::keyboard::KeyCode>| { - let output: V<::bevy_input::keyboard::KeyCode> = { - { - let output: V<::bevy_input::keyboard::KeyCode> = <::bevy_input::keyboard::KeyCode as ::core::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_input::keyboard::KeyCode>| { + let output: V<::bevy_input::keyboard::KeyCode> = { + { + let output: V<::bevy_input::keyboard::KeyCode> = + <::bevy_input::keyboard::KeyCode as ::core::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_input::keyboard::KeyCode>, - other: R<::bevy_input::keyboard::KeyCode>| - { - let output: bool = { - { - let output: bool = <::bevy_input::keyboard::KeyCode as ::core::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_input::keyboard::KeyCode>, other: R<::bevy_input::keyboard::KeyCode>| { + let output: bool = { + { + let output: bool = + <::bevy_input::keyboard::KeyCode as ::core::cmp::PartialEq< ::bevy_input::keyboard::KeyCode, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -404,60 +349,40 @@ pub(crate) fn register_mouse_button_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input::mouse::MouseButton, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::mouse::MouseButton>| { - let output: () = { - { - let output: () = <::bevy_input::mouse::MouseButton as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_input::mouse::MouseButton>| { - let output: V<::bevy_input::mouse::MouseButton> = { - { - let output: V<::bevy_input::mouse::MouseButton> = <::bevy_input::mouse::MouseButton as ::core::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_input::mouse::MouseButton>| { + let output: V<::bevy_input::mouse::MouseButton> = { + { + let output: V<::bevy_input::mouse::MouseButton> = + <::bevy_input::mouse::MouseButton as ::core::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_input::mouse::MouseButton>, - other: R<::bevy_input::mouse::MouseButton>| - { - let output: bool = { - { - let output: bool = <::bevy_input::mouse::MouseButton as ::core::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_input::mouse::MouseButton>, other: R<::bevy_input::mouse::MouseButton>| { + let output: bool = { + { + let output: bool = + <::bevy_input::mouse::MouseButton as ::core::cmp::PartialEq< ::bevy_input::mouse::MouseButton, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -516,23 +441,6 @@ pub(crate) fn register_key_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input::keyboard::Key, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::keyboard::Key>| { - let output: () = { - { - let output: () = <::bevy_input::keyboard::Key as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_input::keyboard::Key>| { @@ -582,60 +490,43 @@ pub(crate) fn register_keyboard_focus_lost_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input::keyboard::KeyboardFocusLost, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::keyboard::KeyboardFocusLost>| { - let output: () = { - { - let output: () = <::bevy_input::keyboard::KeyboardFocusLost as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_input::keyboard::KeyboardFocusLost>| { - let output: V<::bevy_input::keyboard::KeyboardFocusLost> = { - { - let output: V<::bevy_input::keyboard::KeyboardFocusLost> = <::bevy_input::keyboard::KeyboardFocusLost as ::core::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_input::keyboard::KeyboardFocusLost>, - other: R<::bevy_input::keyboard::KeyboardFocusLost>| - { - let output: bool = { - { - let output: bool = <::bevy_input::keyboard::KeyboardFocusLost as ::core::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_input::keyboard::KeyboardFocusLost>| { + let output: V<::bevy_input::keyboard::KeyboardFocusLost> = { + { + let output: V<::bevy_input::keyboard::KeyboardFocusLost> = + <::bevy_input::keyboard::KeyboardFocusLost as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_input::keyboard::KeyboardFocusLost>, + other: R<::bevy_input::keyboard::KeyboardFocusLost>| { + let output: bool = { + { + let output: bool = + <::bevy_input::keyboard::KeyboardFocusLost as ::core::cmp::PartialEq< ::bevy_input::keyboard::KeyboardFocusLost, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -648,60 +539,43 @@ pub(crate) fn register_keyboard_input_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input::keyboard::KeyboardInput, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::keyboard::KeyboardInput>| { - let output: () = { - { - let output: () = <::bevy_input::keyboard::KeyboardInput as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_input::keyboard::KeyboardInput>| { - let output: V<::bevy_input::keyboard::KeyboardInput> = { - { - let output: V<::bevy_input::keyboard::KeyboardInput> = <::bevy_input::keyboard::KeyboardInput as ::core::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_input::keyboard::KeyboardInput>, - other: R<::bevy_input::keyboard::KeyboardInput>| - { - let output: bool = { - { - let output: bool = <::bevy_input::keyboard::KeyboardInput as ::core::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_input::keyboard::KeyboardInput>| { + let output: V<::bevy_input::keyboard::KeyboardInput> = { + { + let output: V<::bevy_input::keyboard::KeyboardInput> = + <::bevy_input::keyboard::KeyboardInput as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_input::keyboard::KeyboardInput>, + other: R<::bevy_input::keyboard::KeyboardInput>| { + let output: bool = { + { + let output: bool = + <::bevy_input::keyboard::KeyboardInput as ::core::cmp::PartialEq< ::bevy_input::keyboard::KeyboardInput, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -812,60 +686,43 @@ pub(crate) fn register_mouse_button_input_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input::mouse::MouseButtonInput, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::mouse::MouseButtonInput>| { - let output: () = { - { - let output: () = <::bevy_input::mouse::MouseButtonInput as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_input::mouse::MouseButtonInput>| { - let output: V<::bevy_input::mouse::MouseButtonInput> = { - { - let output: V<::bevy_input::mouse::MouseButtonInput> = <::bevy_input::mouse::MouseButtonInput as ::core::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_input::mouse::MouseButtonInput>, - other: R<::bevy_input::mouse::MouseButtonInput>| - { - let output: bool = { - { - let output: bool = <::bevy_input::mouse::MouseButtonInput as ::core::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_input::mouse::MouseButtonInput>| { + let output: V<::bevy_input::mouse::MouseButtonInput> = { + { + let output: V<::bevy_input::mouse::MouseButtonInput> = + <::bevy_input::mouse::MouseButtonInput as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_input::mouse::MouseButtonInput>, + other: R<::bevy_input::mouse::MouseButtonInput>| { + let output: bool = { + { + let output: bool = + <::bevy_input::mouse::MouseButtonInput as ::core::cmp::PartialEq< ::bevy_input::mouse::MouseButtonInput, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -1120,23 +977,6 @@ pub(crate) fn register_gamepad_button_state_changed_event_functions(world: &mut bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input::gamepad::GamepadButtonStateChangedEvent, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::gamepad::GamepadButtonStateChangedEvent>| { - let output: () = { - { - let output: () = <::bevy_input::gamepad::GamepadButtonStateChangedEvent as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_input::gamepad::GamepadButtonStateChangedEvent>| { @@ -1807,23 +1647,6 @@ pub(crate) fn register_button_state_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input::ButtonState, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::ButtonState>| { - let output: () = { - { - let output: () = <::bevy_input::ButtonState as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_input::ButtonState>| { @@ -1934,60 +1757,43 @@ pub(crate) fn register_gamepad_input_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input::gamepad::GamepadInput, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::gamepad::GamepadInput>| { - let output: () = { - { - let output: () = <::bevy_input::gamepad::GamepadInput as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_input::gamepad::GamepadInput>| { - let output: V<::bevy_input::gamepad::GamepadInput> = { - { - let output: V<::bevy_input::gamepad::GamepadInput> = <::bevy_input::gamepad::GamepadInput as ::core::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_input::gamepad::GamepadInput>, - other: R<::bevy_input::gamepad::GamepadInput>| - { - let output: bool = { - { - let output: bool = <::bevy_input::gamepad::GamepadInput as ::core::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_input::gamepad::GamepadInput>| { + let output: V<::bevy_input::gamepad::GamepadInput> = { + { + let output: V<::bevy_input::gamepad::GamepadInput> = + <::bevy_input::gamepad::GamepadInput as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_input::gamepad::GamepadInput>, + other: R<::bevy_input::gamepad::GamepadInput>| { + let output: bool = { + { + let output: bool = + <::bevy_input::gamepad::GamepadInput as ::core::cmp::PartialEq< ::bevy_input::gamepad::GamepadInput, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -2423,182 +2229,16 @@ pub(crate) fn register_button_axis_settings_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_gamepad_rumble_intensity_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_input::gamepad::GamepadRumbleIntensity, - >::new(world) - .register_documented( - "clone", - |_self: R<::bevy_input::gamepad::GamepadRumbleIntensity>| { - let output: V<::bevy_input::gamepad::GamepadRumbleIntensity> = { - { - let output: V<::bevy_input::gamepad::GamepadRumbleIntensity> = <::bevy_input::gamepad::GamepadRumbleIntensity as ::core::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_input::gamepad::GamepadRumbleIntensity>, - other: R<::bevy_input::gamepad::GamepadRumbleIntensity>| - { - let output: bool = { - { - let output: bool = <::bevy_input::gamepad::GamepadRumbleIntensity as ::core::cmp::PartialEq< - ::bevy_input::gamepad::GamepadRumbleIntensity, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "strong_motor", - |intensity: f32| { - let output: V<::bevy_input::gamepad::GamepadRumbleIntensity> = { - { - let output: V<::bevy_input::gamepad::GamepadRumbleIntensity> = ::bevy_input::gamepad::GamepadRumbleIntensity::strong_motor( - intensity, - ) - .into(); - output - } - }; - output - }, - " Creates a new rumble intensity with strong motor intensity set to the given value.\n Clamped within the `0.0` to `1.0` range.", - &["intensity"], - ) - .register_documented( - "weak_motor", - |intensity: f32| { - let output: V<::bevy_input::gamepad::GamepadRumbleIntensity> = { - { - let output: V<::bevy_input::gamepad::GamepadRumbleIntensity> = ::bevy_input::gamepad::GamepadRumbleIntensity::weak_motor( - intensity, - ) - .into(); - output - } - }; - output - }, - " Creates a new rumble intensity with weak motor intensity set to the given value.\n Clamped within the `0.0` to `1.0` range.", - &["intensity"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_input::gamepad::GamepadRumbleIntensity, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_native_key_code_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_input::keyboard::NativeKeyCode, - >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::keyboard::NativeKeyCode>| { - let output: () = { - { - let output: () = <::bevy_input::keyboard::NativeKeyCode as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_input::keyboard::NativeKeyCode>| { - let output: V<::bevy_input::keyboard::NativeKeyCode> = { - { - let output: V<::bevy_input::keyboard::NativeKeyCode> = <::bevy_input::keyboard::NativeKeyCode as ::core::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_input::keyboard::NativeKeyCode>, - other: R<::bevy_input::keyboard::NativeKeyCode>| - { - let output: bool = { - { - let output: bool = <::bevy_input::keyboard::NativeKeyCode as ::core::cmp::PartialEq< - ::bevy_input::keyboard::NativeKeyCode, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_input::keyboard::NativeKeyCode, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_native_key_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_input::keyboard::NativeKey, - >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::keyboard::NativeKey>| { - let output: () = { - { - let output: () = <::bevy_input::keyboard::NativeKey as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) +pub(crate) fn register_gamepad_rumble_intensity_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_input::gamepad::GamepadRumbleIntensity, + >::new(world) .register_documented( "clone", - |_self: R<::bevy_input::keyboard::NativeKey>| { - let output: V<::bevy_input::keyboard::NativeKey> = { + |_self: R<::bevy_input::gamepad::GamepadRumbleIntensity>| { + let output: V<::bevy_input::gamepad::GamepadRumbleIntensity> = { { - let output: V<::bevy_input::keyboard::NativeKey> = <::bevy_input::keyboard::NativeKey as ::core::clone::Clone>::clone( + let output: V<::bevy_input::gamepad::GamepadRumbleIntensity> = <::bevy_input::gamepad::GamepadRumbleIntensity as ::core::clone::Clone>::clone( &_self, ) .into(); @@ -2613,13 +2253,13 @@ pub(crate) fn register_native_key_functions(world: &mut World) { .register_documented( "eq", | - _self: R<::bevy_input::keyboard::NativeKey>, - other: R<::bevy_input::keyboard::NativeKey>| + _self: R<::bevy_input::gamepad::GamepadRumbleIntensity>, + other: R<::bevy_input::gamepad::GamepadRumbleIntensity>| { let output: bool = { { - let output: bool = <::bevy_input::keyboard::NativeKey as ::core::cmp::PartialEq< - ::bevy_input::keyboard::NativeKey, + let output: bool = <::bevy_input::gamepad::GamepadRumbleIntensity as ::core::cmp::PartialEq< + ::bevy_input::gamepad::GamepadRumbleIntensity, >>::eq(&_self, &other) .into(); output @@ -2629,26 +2269,14 @@ pub(crate) fn register_native_key_functions(world: &mut World) { }, "", &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_input::keyboard::NativeKey, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_mouse_scroll_unit_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_input::mouse::MouseScrollUnit, - >::new(world) + ) .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::mouse::MouseScrollUnit>| { - let output: () = { + "strong_motor", + |intensity: f32| { + let output: V<::bevy_input::gamepad::GamepadRumbleIntensity> = { { - let output: () = <::bevy_input::mouse::MouseScrollUnit as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::bevy_input::gamepad::GamepadRumbleIntensity> = ::bevy_input::gamepad::GamepadRumbleIntensity::strong_motor( + intensity, ) .into(); output @@ -2656,16 +2284,16 @@ pub(crate) fn register_mouse_scroll_unit_functions(world: &mut World) { }; output }, - "", - &["_self"], + " Creates a new rumble intensity with strong motor intensity set to the given value.\n Clamped within the `0.0` to `1.0` range.", + &["intensity"], ) .register_documented( - "clone", - |_self: R<::bevy_input::mouse::MouseScrollUnit>| { - let output: V<::bevy_input::mouse::MouseScrollUnit> = { + "weak_motor", + |intensity: f32| { + let output: V<::bevy_input::gamepad::GamepadRumbleIntensity> = { { - let output: V<::bevy_input::mouse::MouseScrollUnit> = <::bevy_input::mouse::MouseScrollUnit as ::core::clone::Clone>::clone( - &_self, + let output: V<::bevy_input::gamepad::GamepadRumbleIntensity> = ::bevy_input::gamepad::GamepadRumbleIntensity::weak_motor( + intensity, ) .into(); output @@ -2673,34 +2301,110 @@ pub(crate) fn register_mouse_scroll_unit_functions(world: &mut World) { }; output }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_input::mouse::MouseScrollUnit>, - other: R<::bevy_input::mouse::MouseScrollUnit>| - { - let output: bool = { - { - let output: bool = <::bevy_input::mouse::MouseScrollUnit as ::core::cmp::PartialEq< - ::bevy_input::mouse::MouseScrollUnit, + " Creates a new rumble intensity with weak motor intensity set to the given value.\n Clamped within the `0.0` to `1.0` range.", + &["intensity"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_input::gamepad::GamepadRumbleIntensity, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_native_key_code_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_input::keyboard::NativeKeyCode, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_input::keyboard::NativeKeyCode>| { + let output: V<::bevy_input::keyboard::NativeKeyCode> = { + { + let output: V<::bevy_input::keyboard::NativeKeyCode> = + <::bevy_input::keyboard::NativeKeyCode as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_input::keyboard::NativeKeyCode>, + other: R<::bevy_input::keyboard::NativeKeyCode>| { + let output: bool = { + { + let output: bool = + <::bevy_input::keyboard::NativeKeyCode as ::core::cmp::PartialEq< + ::bevy_input::keyboard::NativeKeyCode, >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_input::keyboard::NativeKeyCode, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_native_key_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_input::keyboard::NativeKey, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_input::keyboard::NativeKey>| { + let output: V<::bevy_input::keyboard::NativeKey> = { + { + let output: V<::bevy_input::keyboard::NativeKey> = + <::bevy_input::keyboard::NativeKey as ::core::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_input::keyboard::NativeKey>, + other: R<::bevy_input::keyboard::NativeKey>| { + let output: bool = { + { + let output: bool = + <::bevy_input::keyboard::NativeKey as ::core::cmp::PartialEq< + ::bevy_input::keyboard::NativeKey, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_input::mouse::MouseScrollUnit, + ::bevy_input::keyboard::NativeKey, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } @@ -2708,60 +2412,40 @@ pub(crate) fn register_touch_phase_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input::touch::TouchPhase, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input::touch::TouchPhase>| { - let output: () = { - { - let output: () = <::bevy_input::touch::TouchPhase as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_input::touch::TouchPhase>| { - let output: V<::bevy_input::touch::TouchPhase> = { - { - let output: V<::bevy_input::touch::TouchPhase> = <::bevy_input::touch::TouchPhase as ::core::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_input::touch::TouchPhase>| { + let output: V<::bevy_input::touch::TouchPhase> = { + { + let output: V<::bevy_input::touch::TouchPhase> = + <::bevy_input::touch::TouchPhase as ::core::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_input::touch::TouchPhase>, - other: R<::bevy_input::touch::TouchPhase>| - { - let output: bool = { - { - let output: bool = <::bevy_input::touch::TouchPhase as ::core::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_input::touch::TouchPhase>, other: R<::bevy_input::touch::TouchPhase>| { + let output: bool = { + { + let output: bool = + <::bevy_input::touch::TouchPhase as ::core::cmp::PartialEq< ::bevy_input::touch::TouchPhase, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -2770,6 +2454,55 @@ pub(crate) fn register_touch_phase_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_mouse_scroll_unit_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_input::mouse::MouseScrollUnit, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_input::mouse::MouseScrollUnit>| { + let output: V<::bevy_input::mouse::MouseScrollUnit> = { + { + let output: V<::bevy_input::mouse::MouseScrollUnit> = + <::bevy_input::mouse::MouseScrollUnit as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_input::mouse::MouseScrollUnit>, + other: R<::bevy_input::mouse::MouseScrollUnit>| { + let output: bool = { + { + let output: bool = + <::bevy_input::mouse::MouseScrollUnit as ::core::cmp::PartialEq< + ::bevy_input::mouse::MouseScrollUnit, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_input::mouse::MouseScrollUnit, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_force_touch_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input::touch::ForceTouch, @@ -2856,8 +2589,8 @@ impl Plugin for BevyInputScriptingPlugin { register_gamepad_rumble_intensity_functions(&mut world); register_native_key_code_functions(&mut world); register_native_key_functions(&mut world); - register_mouse_scroll_unit_functions(&mut world); register_touch_phase_functions(&mut world); + register_mouse_scroll_unit_functions(&mut world); register_force_touch_functions(&mut world); } } diff --git a/crates/bindings/bevy_input_focus_bms_bindings/Cargo.toml b/crates/bindings/bevy_input_focus_bms_bindings/Cargo.toml index 97977c5805..f71e776793 100644 --- a/crates/bindings/bevy_input_focus_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_input_focus_bms_bindings/Cargo.toml @@ -20,19 +20,19 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_input_focus = { version = "0.18.1", features = ["bevy_picking", "bevy_reflect", "gamepad", "keyboard", "mouse", "std"], default-features = true} +bevy_input_focus = { version = "0.19.0", features = ["bevy_picking", "bevy_reflect", "gamepad", "keyboard", "mouse", "std"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_input = { version = "^0.18.0", features = ["bevy_reflect", "gamepad", "gestures", "keyboard", "mouse", "smol_str", "std", "touch"], default-features = true} +bevy_input = { version = "^0.19.0", features = ["bevy_reflect", "gamepad", "gestures", "keyboard", "mouse", "smol_str", "std", "touch"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_window = { version = "^0.18.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} +bevy_window = { version = "^0.19.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} diff --git a/crates/bindings/bevy_input_focus_bms_bindings/src/lib.rs b/crates/bindings/bevy_input_focus_bms_bindings/src/lib.rs index 8b7f691a69..9b578824c2 100644 --- a/crates/bindings/bevy_input_focus_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_input_focus_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -84,20 +85,22 @@ pub(crate) fn register_input_focus_functions(world: &mut World) { }; output }, - " Create a new [`InputFocus`] resource with the given entity.\n This is mostly useful for tests.", + " Create a new [`InputFocus`] resource with the given entity.\n This is mostly useful for tests.\n WARNING: this will clear any buffered focus changes,\n so it may cause missed [`FocusGained`] and [`FocusLost`] events.\n Prefer the [`set`](InputFocus::set) method for normal use, which will preserve buffered changes.", &["entity"], ) .register_documented( "set", | mut _self: M<::bevy_input_focus::InputFocus>, - entity: V<::bevy_ecs::entity::Entity>| + entity: V<::bevy_ecs::entity::Entity>, + cause: V<::bevy_input_focus::FocusCause>| { let output: () = { { let output: () = ::bevy_input_focus::InputFocus::set( &mut _self, entity.into_inner(), + cause.into_inner(), ) .into(); output @@ -105,8 +108,8 @@ pub(crate) fn register_input_focus_functions(world: &mut World) { }; output }, - " Set the entity with input focus.", - &["_self", "entity"], + " Set the entity with input focus.\n When spawning entities, you may want to use the [`AutoFocus`] component instead,\n which will automatically set focus to the entity when it is spawned.\n This is particularly useful when working with bsn! scenes, where spawning may be delayed.", + &["_self", "entity", "cause"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); @@ -116,6 +119,51 @@ pub(crate) fn register_input_focus_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_focus_cause_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_input_focus::FocusCause, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_input_focus::FocusCause>| { + let output: V<::bevy_input_focus::FocusCause> = { + { + let output: V<::bevy_input_focus::FocusCause> = + <::bevy_input_focus::FocusCause as ::core::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_input_focus::FocusCause>, other: R<::bevy_input_focus::FocusCause>| { + let output: bool = { + { + let output: bool = <::bevy_input_focus::FocusCause as ::core::cmp::PartialEq< + ::bevy_input_focus::FocusCause, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_input_focus::FocusCause, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_input_focus_visible_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input_focus::InputFocusVisible, @@ -146,6 +194,34 @@ pub(crate) fn register_input_focus_visible_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_acquire_focus_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_input_focus::AcquireFocus, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_input_focus::AcquireFocus>| { + let output: V<::bevy_input_focus::AcquireFocus> = { + { + let output: V<::bevy_input_focus::AcquireFocus> = + <::bevy_input_focus::AcquireFocus as ::core::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_input_focus::AcquireFocus, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_auto_focus_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input_focus::AutoFocus, @@ -232,6 +308,58 @@ pub(crate) fn register_directional_navigation_map_functions(world: &mut World) { " Adds a symmetrical edge between two entities in the navigation map.\n The A -> B path will use the provided direction, while B -> A will use the [`CompassOctant::opposite`] variant.\n Any existing connections between the two entities will be overwritten.", &["_self", "a", "b", "direction"], ) + .register_documented( + "block_edge", + | + mut _self: M< + ::bevy_input_focus::directional_navigation::DirectionalNavigationMap, + >, + a: V<::bevy_ecs::entity::Entity>, + direction: V<::bevy_math::CompassOctant>| + { + let output: () = { + { + let output: () = ::bevy_input_focus::directional_navigation::DirectionalNavigationMap::block_edge( + &mut _self, + a.into_inner(), + direction.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Adds an edge blocking automatic navigation from an entity in a direction.\n Any existing edge from A in the provided direction will be overwritten.\n The reverse block will not be added, so navigation will still be possible from other entities\n in the direction.\n If you want to add a symmetrical block, use [`block_symmetrical_edge`](Self::block_symmetrical_edge) instead.\n Note that blocking a primary cardinal direction will not block intermediates.\n In other words, blocking `North` will still allow navigation towards `NorthEast`.", + &["_self", "a", "direction"], + ) + .register_documented( + "block_symmetrical_edge", + | + mut _self: M< + ::bevy_input_focus::directional_navigation::DirectionalNavigationMap, + >, + a: V<::bevy_ecs::entity::Entity>, + b: V<::bevy_ecs::entity::Entity>, + direction: V<::bevy_math::CompassOctant>| + { + let output: () = { + { + let output: () = ::bevy_input_focus::directional_navigation::DirectionalNavigationMap::block_symmetrical_edge( + &mut _self, + a.into_inner(), + b.into_inner(), + direction.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Adds a symmetrical blocking edge between two entities in the navigation map.\n The blocked A -> B path will use the provided direction, while B -> A will use the [`CompassOctant::opposite`] variant.\n Any existing connections between the two entities will be overwritten.", + &["_self", "a", "b", "direction"], + ) .register_documented( "clear", | @@ -302,6 +430,33 @@ pub(crate) fn register_directional_navigation_map_functions(world: &mut World) { "", &["_self", "other"], ) + .register_documented( + "get_neighbor", + | + _self: R< + ::bevy_input_focus::directional_navigation::DirectionalNavigationMap, + >, + focus: V<::bevy_ecs::entity::Entity>, + octant: V<::bevy_math::CompassOctant>| + { + let output: V<::bevy_input_focus::directional_navigation::NavNeighbor> = { + { + let output: V< + ::bevy_input_focus::directional_navigation::NavNeighbor, + > = ::bevy_input_focus::directional_navigation::DirectionalNavigationMap::get_neighbor( + &_self, + focus.into_inner(), + octant.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Gets the entity in a given direction from the current focus, if any.", + &["_self", "focus", "octant"], + ) .register_documented( "remove", | @@ -413,10 +568,82 @@ pub(crate) fn register_auto_navigation_config_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_nav_neighbor_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_input_focus::directional_navigation::NavNeighbor, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_input_focus::directional_navigation::NavNeighbor>| { + let output: V<::bevy_input_focus::directional_navigation::NavNeighbor> = { + { + let output: V< + ::bevy_input_focus::directional_navigation::NavNeighbor, + > = <::bevy_input_focus::directional_navigation::NavNeighbor as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_input_focus::directional_navigation::NavNeighbor>, + other: R<::bevy_input_focus::directional_navigation::NavNeighbor>| + { + let output: bool = { + { + let output: bool = <::bevy_input_focus::directional_navigation::NavNeighbor as ::core::cmp::PartialEq< + ::bevy_input_focus::directional_navigation::NavNeighbor, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_input_focus::directional_navigation::NavNeighbor, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_nav_neighbors_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input_focus::directional_navigation::NavNeighbors, >::new(world) + .register_documented( + "block", + | + mut _self: M<::bevy_input_focus::directional_navigation::NavNeighbors>, + octant: V<::bevy_math::CompassOctant>| + { + let output: () = { + { + let output: () = ::bevy_input_focus::directional_navigation::NavNeighbors::block( + &mut _self, + octant.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Prevent navigation to a given [`CompassOctant`].\n Note that navigation in this direction specifically will\n be blocked. For example, blocking [`CompassOctant::North`]\n will not affect the neighbor towards [`CompassOctant::NorthWest`].", + &["_self", "octant"], + ) .register_documented( "clone", |_self: R<::bevy_input_focus::directional_navigation::NavNeighbors>| { @@ -458,6 +685,29 @@ pub(crate) fn register_nav_neighbors_functions(world: &mut World) { "", &["_self", "other"], ) + .register_documented( + "get", + | + _self: R<::bevy_input_focus::directional_navigation::NavNeighbors>, + octant: V<::bevy_math::CompassOctant>| + { + let output: V<::bevy_input_focus::directional_navigation::NavNeighbor> = { + { + let output: V< + ::bevy_input_focus::directional_navigation::NavNeighbor, + > = ::bevy_input_focus::directional_navigation::NavNeighbors::get( + &_self, + octant.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Get the neighbor for a given [`CompassOctant`].", + &["_self", "octant"], + ) .register_documented( "set", | @@ -546,23 +796,6 @@ pub(crate) fn register_tab_index_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_input_focus::tab_navigation::TabIndex, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_input_focus::tab_navigation::TabIndex>| { - let output: () = { - { - let output: () = <::bevy_input_focus::tab_navigation::TabIndex as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_input_focus::tab_navigation::TabIndex>| { @@ -669,17 +902,128 @@ pub(crate) fn register_tab_group_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_nav_action_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_input_focus::tab_navigation::NavAction, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_input_focus::tab_navigation::NavAction>| { + let output: V<::bevy_input_focus::tab_navigation::NavAction> = { + { + let output: V<::bevy_input_focus::tab_navigation::NavAction> = <::bevy_input_focus::tab_navigation::NavAction as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_input_focus::tab_navigation::NavAction>, + other: R<::bevy_input_focus::tab_navigation::NavAction>| + { + let output: bool = { + { + let output: bool = <::bevy_input_focus::tab_navigation::NavAction as ::core::cmp::PartialEq< + ::bevy_input_focus::tab_navigation::NavAction, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_input_focus::tab_navigation::NavAction, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_focus_gained_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_input_focus::FocusGained, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_input_focus::FocusGained>| { + let output: V<::bevy_input_focus::FocusGained> = { + { + let output: V<::bevy_input_focus::FocusGained> = + <::bevy_input_focus::FocusGained as ::core::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_input_focus::FocusGained, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_focus_lost_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_input_focus::FocusLost, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_input_focus::FocusLost>| { + let output: V<::bevy_input_focus::FocusLost> = { + { + let output: V<::bevy_input_focus::FocusLost> = + <::bevy_input_focus::FocusLost as ::core::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_input_focus::FocusLost, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} impl Plugin for BevyInputFocusScriptingPlugin { fn build(&self, app: &mut App) { let mut world = app.world_mut(); register_input_focus_functions(&mut world); + register_focus_cause_functions(&mut world); register_input_focus_visible_functions(&mut world); + register_acquire_focus_functions(&mut world); register_auto_focus_functions(&mut world); register_directional_navigation_map_functions(&mut world); register_auto_navigation_config_functions(&mut world); + register_nav_neighbor_functions(&mut world); register_nav_neighbors_functions(&mut world); register_focusable_area_functions(&mut world); register_tab_index_functions(&mut world); register_tab_group_functions(&mut world); + register_nav_action_functions(&mut world); + register_focus_gained_functions(&mut world); + register_focus_lost_functions(&mut world); } } diff --git a/crates/bindings/bevy_light_bms_bindings/Cargo.toml b/crates/bindings/bevy_light_bms_bindings/Cargo.toml index 1eeec824c7..24e7262337 100644 --- a/crates/bindings/bevy_light_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_light_bms_bindings/Cargo.toml @@ -20,31 +20,37 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_light = { version = "0.18.1", features = ["webgl"], default-features = true} +bevy_light = { version = "0.19.0", features = ["bevy_gizmos", "webgl"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_camera = { version = "^0.18.0", features = [], default-features = true} +bevy_camera = { version = "^0.19.0", features = [], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_image = { version = "^0.18.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} +bevy_gizmos = { version = "^0.19.0", features = ["bevy_mesh"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_image = { version = "^0.19.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} -bevy_mesh = { version = "^0.18.0", features = ["bevy_mikktspace", "morph"], default-features = true} +bevy_log = { version = "^0.19.0", features = [], default-features = true} -bevy_platform = { version = "^0.18.0", features = ["alloc", "serialize", "std"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_mesh = { version = "^0.19.0", features = ["bevy_mikktspace", "morph"], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_platform = { version = "^0.19.0", features = ["alloc", "futures-lite", "serialize", "std"], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} + +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} + +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} + +half = { version = "^2.7.1", features = [], default-features = true} diff --git a/crates/bindings/bevy_light_bms_bindings/src/lib.rs b/crates/bindings/bevy_light_bms_bindings/src/lib.rs index 633bce69ab..81861e8a85 100644 --- a/crates/bindings/bevy_light_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_light_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -226,6 +227,60 @@ pub(crate) fn register_light_probe_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_parallax_correction_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_light::ParallaxCorrection, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_light::ParallaxCorrection>| { + let output: V<::bevy_light::ParallaxCorrection> = { + { + let output: V<::bevy_light::ParallaxCorrection> = + <::bevy_light::ParallaxCorrection as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_light::ParallaxCorrection, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_skybox_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_light::Skybox, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_light::Skybox>| { + let output: V<::bevy_light::Skybox> = { + { + let output: V<::bevy_light::Skybox> = <::bevy_light::Skybox as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::bevy_light::Skybox, bevy_mod_scripting_bindings::MarkAsGenerated>(); +} pub(crate) fn register_fog_volume_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_light::FogVolume, @@ -597,6 +652,106 @@ pub(crate) fn register_directional_light_texture_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_rect_light_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_light::RectLight, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_light::RectLight>| { + let output: V<::bevy_light::RectLight> = { + { + let output: V<::bevy_light::RectLight> = <::bevy_light::RectLight as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_light::RectLight, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_light_gizmo_color_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_light::gizmos::LightGizmoColor, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_light::gizmos::LightGizmoColor>| { + let output: V<::bevy_light::gizmos::LightGizmoColor> = { + { + let output: V<::bevy_light::gizmos::LightGizmoColor> = + <::bevy_light::gizmos::LightGizmoColor as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_light::gizmos::LightGizmoColor, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_light_gizmo_config_group_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_light::gizmos::LightGizmoConfigGroup, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_light::gizmos::LightGizmoConfigGroup>| { + let output: V<::bevy_light::gizmos::LightGizmoConfigGroup> = { + { + let output: V<::bevy_light::gizmos::LightGizmoConfigGroup> = <::bevy_light::gizmos::LightGizmoConfigGroup as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_light::gizmos::LightGizmoConfigGroup, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_show_light_gizmo_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_light::gizmos::ShowLightGizmo, + >::new(world); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_light::gizmos::ShowLightGizmo, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_not_shadow_caster_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_light::NotShadowCaster, @@ -645,7 +800,23 @@ pub(crate) fn register_not_shadow_caster_functions(world: &mut World) { pub(crate) fn register_not_shadow_receiver_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_light::NotShadowReceiver, - >::new(world); + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_light::NotShadowReceiver>| { + let output: V<::bevy_light::NotShadowReceiver> = { + { + let output: V<::bevy_light::NotShadowReceiver> = + <::bevy_light::NotShadowReceiver as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -657,7 +828,25 @@ pub(crate) fn register_not_shadow_receiver_functions(world: &mut World) { pub(crate) fn register_transmitted_shadow_receiver_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_light::TransmittedShadowReceiver, - >::new(world); + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_light::TransmittedShadowReceiver>| { + let output: V<::bevy_light::TransmittedShadowReceiver> = { + { + let output: V<::bevy_light::TransmittedShadowReceiver> = + <::bevy_light::TransmittedShadowReceiver as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -670,60 +859,41 @@ pub(crate) fn register_shadow_filtering_method_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_light::ShadowFilteringMethod, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_light::ShadowFilteringMethod>| { - let output: () = { - { - let output: () = <::bevy_light::ShadowFilteringMethod as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_light::ShadowFilteringMethod>| { - let output: V<::bevy_light::ShadowFilteringMethod> = { - { - let output: V<::bevy_light::ShadowFilteringMethod> = <::bevy_light::ShadowFilteringMethod as ::std::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_light::ShadowFilteringMethod>| { + let output: V<::bevy_light::ShadowFilteringMethod> = { + { + let output: V<::bevy_light::ShadowFilteringMethod> = + <::bevy_light::ShadowFilteringMethod as ::std::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_light::ShadowFilteringMethod>, - other: R<::bevy_light::ShadowFilteringMethod>| - { - let output: bool = { - { - let output: bool = <::bevy_light::ShadowFilteringMethod as ::std::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_light::ShadowFilteringMethod>, + other: R<::bevy_light::ShadowFilteringMethod>| { + let output: bool = { + { + let output: bool = + <::bevy_light::ShadowFilteringMethod as ::std::cmp::PartialEq< ::bevy_light::ShadowFilteringMethod, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -860,6 +1030,8 @@ impl Plugin for BevyLightScriptingPlugin { register_generated_environment_map_light_functions(&mut world); register_irradiance_volume_functions(&mut world); register_light_probe_functions(&mut world); + register_parallax_correction_functions(&mut world); + register_skybox_functions(&mut world); register_fog_volume_functions(&mut world); register_volumetric_fog_functions(&mut world); register_volumetric_light_functions(&mut world); @@ -873,6 +1045,10 @@ impl Plugin for BevyLightScriptingPlugin { register_directional_light_functions(&mut world); register_directional_light_shadow_map_functions(&mut world); register_directional_light_texture_functions(&mut world); + register_rect_light_functions(&mut world); + register_light_gizmo_color_functions(&mut world); + register_light_gizmo_config_group_functions(&mut world); + register_show_light_gizmo_functions(&mut world); register_not_shadow_caster_functions(&mut world); register_not_shadow_receiver_functions(&mut world); register_transmitted_shadow_receiver_functions(&mut world); diff --git a/crates/bindings/bevy_material_bms_bindings/Cargo.toml b/crates/bindings/bevy_material_bms_bindings/Cargo.toml new file mode 100644 index 0000000000..ed4fa5f5cd --- /dev/null +++ b/crates/bindings/bevy_material_bms_bindings/Cargo.toml @@ -0,0 +1,48 @@ +[package] +name = "bevy_material_bms_bindings" +description = "Automatically generated bindings for bevy_material crate" +readme = "README.md" +version.workspace = true +edition.workspace = true +authors.workspace = true +license.workspace = true +homepage.workspace = true +repository.workspace = true +keywords.workspace = true +categories.workspace = true + +[lib] +test = false + +[dependencies] + +bevy_app = { workspace = true, features = ["std"] } +bevy_mod_scripting_core = { workspace = true } +bevy_mod_scripting_bindings = { workspace = true } +bevy_mod_scripting_derive = { workspace = true } +bevy_material = { version = "0.19.0", features = [], default-features = true} + + +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} + +bevy_derive = { version = "^0.19.0", features = [], default-features = true} + +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} + +bevy_material_macros = { version = "^0.19.0", features = [], default-features = true} + +bevy_mesh = { version = "^0.19.0", features = ["bevy_mikktspace", "morph"], default-features = true} + +bevy_platform = { version = "^0.19.0", features = ["alloc", "futures-lite", "serialize", "std"], default-features = true} + +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} + +bevy_shader = { version = "^0.19.0", features = [], default-features = true} + +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} + +encase = { version = "^0.12", features = [], default-features = true} + +variadics_please = { version = "^1.1", features = [], default-features = true} + + diff --git a/crates/bindings/bevy_material_bms_bindings/README.md b/crates/bindings/bevy_material_bms_bindings/README.md new file mode 100644 index 0000000000..148c4a2fa1 --- /dev/null +++ b/crates/bindings/bevy_material_bms_bindings/README.md @@ -0,0 +1,4 @@ +# bevy_material bindings +This crate is part of the [bevy_mod_scripting](http://github.com/makspll/bevy_mod_scripting) project. + +The code inside is fully generated via a custom rustc plugin. \ No newline at end of file diff --git a/crates/bindings/bevy_material_bms_bindings/src/lib.rs b/crates/bindings/bevy_material_bms_bindings/src/lib.rs new file mode 100644 index 0000000000..8a3e44d1ca --- /dev/null +++ b/crates/bindings/bevy_material_bms_bindings/src/lib.rs @@ -0,0 +1,117 @@ +#![allow(clippy::all)] +#![allow(unused, deprecated, dead_code)] +extern crate std; + +use bevy_app::{App, Plugin}; +use bevy_ecs::prelude::*; +use bevy_mod_scripting_bindings::{ + ReflectReference, + function::{ + from::{M, R, V}, + namespace::NamespaceBuilder, + }, +}; +use bevy_mod_scripting_derive::script_bindings; +pub struct BevyMaterialScriptingPlugin; +pub(crate) fn register_alpha_mode_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_material::AlphaMode, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_material::AlphaMode>| { + let output: V<::bevy_material::AlphaMode> = { + { + let output: V<::bevy_material::AlphaMode> = <::bevy_material::AlphaMode as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_material::AlphaMode>, other: R<::bevy_material::AlphaMode>| { + let output: bool = { + { + let output: bool = <::bevy_material::AlphaMode as ::std::cmp::PartialEq< + ::bevy_material::AlphaMode, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_material::AlphaMode, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_opaque_renderer_method_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_material::OpaqueRendererMethod, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_material::OpaqueRendererMethod>| { + let output: V<::bevy_material::OpaqueRendererMethod> = { + { + let output: V<::bevy_material::OpaqueRendererMethod> = + <::bevy_material::OpaqueRendererMethod as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_material::OpaqueRendererMethod>, + other: R<::bevy_material::OpaqueRendererMethod>| { + let output: bool = { + { + let output: bool = + <::bevy_material::OpaqueRendererMethod as ::std::cmp::PartialEq< + ::bevy_material::OpaqueRendererMethod, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_material::OpaqueRendererMethod, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +impl Plugin for BevyMaterialScriptingPlugin { + fn build(&self, app: &mut App) { + let mut world = app.world_mut(); + register_alpha_mode_functions(&mut world); + register_opaque_renderer_method_functions(&mut world); + } +} diff --git a/crates/bindings/bevy_math_bms_bindings/Cargo.toml b/crates/bindings/bevy_math_bms_bindings/Cargo.toml index a8259a46b7..d425160ff3 100644 --- a/crates/bindings/bevy_math_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_math_bms_bindings/Cargo.toml @@ -20,20 +20,20 @@ bevy_app = { workspace = true, features = ["std"] } bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_math = { version = "0.18.1", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_math = { version = "0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} derive_more = { version = "^2", features = ["std"], default-features = false} -glam = { version = "^0.30.7", features = ["rand", "std"], default-features = false} +glam = { version = "^0.32.0", features = ["rand", "std"], default-features = false} itertools = { version = "^0.14.0", features = ["use_alloc", "use_std"], default-features = false} -rand = { version = "^0.9", features = ["alloc", "std"], default-features = false} +rand = { version = "^0.10", features = ["alloc", "std"], default-features = false} -rand_distr = { version = "^0.5", features = ["alloc", "std"], default-features = false} +rand_distr = { version = "^0.6", features = ["alloc", "std"], default-features = false} variadics_please = { version = "^1.1", features = [], default-features = true} diff --git a/crates/bindings/bevy_math_bms_bindings/src/lib.rs b/crates/bindings/bevy_math_bms_bindings/src/lib.rs index e930affc41..d87be014b3 100644 --- a/crates/bindings/bevy_math_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_math_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -138,23 +139,6 @@ pub(crate) fn register_compass_octant_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_math::CompassOctant, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_math::CompassOctant>| { - let output: () = { - { - let output: () = <::bevy_math::CompassOctant as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_math::CompassOctant>| { @@ -212,23 +196,6 @@ pub(crate) fn register_compass_octant_functions(world: &mut World) { " Checks if a point is in the direction represented by this [`CompassOctant`] from an origin.\n This uses a cone-based check: the vector from origin to the candidate point\n must have a positive dot product with the direction vector.\n Uses standard mathematical coordinates where Y increases upward.\n # Arguments\n * `origin` - The starting position\n * `candidate` - The target position to check\n # Returns\n `true` if the candidate is generally in the direction of this octant from the origin.\n # Example\n ```\n use bevy_math::{CompassOctant, Vec2};\n let origin = Vec2::new(0.0, 0.0);\n let north_point = Vec2::new(0.0, 10.0); // Above origin (Y+ = up)\n let east_point = Vec2::new(10.0, 0.0); // Right of origin\n assert!(CompassOctant::North.is_in_direction(origin, north_point));\n assert!(!CompassOctant::North.is_in_direction(origin, east_point));\n ```", &["_self", "origin", "candidate"], ) - .register_documented( - "neg", - |_self: V<::bevy_math::CompassOctant>| { - let output: V<::bevy_math::CompassOctant> = { - { - let output: V<::bevy_math::CompassOctant> = <::bevy_math::CompassOctant as ::core::ops::Neg>::neg( - _self.into_inner(), - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "opposite", |_self: R<::bevy_math::CompassOctant>| { @@ -275,23 +242,6 @@ pub(crate) fn register_compass_quadrant_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_math::CompassQuadrant, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_math::CompassQuadrant>| { - let output: () = { - { - let output: () = <::bevy_math::CompassQuadrant as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_math::CompassQuadrant>| { @@ -352,23 +302,6 @@ pub(crate) fn register_compass_quadrant_functions(world: &mut World) { " Checks if a point is in the direction represented by this [`CompassQuadrant`] from an origin.\n This uses a cone-based check: the vector from origin to the candidate point\n must have a positive dot product with the direction vector.\n Uses standard mathematical coordinates where Y increases upward.\n # Arguments\n * `origin` - The starting position\n * `candidate` - The target position to check\n # Returns\n `true` if the candidate is generally in the direction of this quadrant from the origin.\n # Example\n ```\n use bevy_math::{CompassQuadrant, Vec2};\n let origin = Vec2::new(0.0, 0.0);\n let north_point = Vec2::new(0.0, 10.0); // Above origin (Y+ = up)\n let east_point = Vec2::new(10.0, 0.0); // Right of origin\n assert!(CompassQuadrant::North.is_in_direction(origin, north_point));\n assert!(!CompassQuadrant::North.is_in_direction(origin, east_point));\n ```", &["_self", "origin", "candidate"], ) - .register_documented( - "neg", - |_self: V<::bevy_math::CompassQuadrant>| { - let output: V<::bevy_math::CompassQuadrant> = { - { - let output: V<::bevy_math::CompassQuadrant> = <::bevy_math::CompassQuadrant as ::core::ops::Neg>::neg( - _self.into_inner(), - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "opposite", |_self: R<::bevy_math::CompassQuadrant>| { @@ -554,57 +487,6 @@ pub(crate) fn register_isometry_2_d_functions(world: &mut World) { " Transform a point by rotating and translating it using the inverse of this isometry.\n This is more efficient than `iso.inverse().transform_point(point)` for one-shot cases.\n If the same isometry is used multiple times, it is more efficient to instead compute\n the inverse once and use that for each transformation.", &["_self", "point"], ) - .register_documented( - "mul", - |_self: V<::bevy_math::Isometry2d>, rhs: V<::bevy_math::Dir2>| { - let output: V<::bevy_math::Dir2> = { - { - let output: V<::bevy_math::Dir2> = <::bevy_math::Isometry2d as ::core::ops::Mul< - ::bevy_math::Dir2, - >>::mul(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "mul", - |_self: V<::bevy_math::Isometry2d>, rhs: V<::bevy_math::Isometry2d>| { - let output: V<::bevy_math::Isometry2d> = { - { - let output: V<::bevy_math::Isometry2d> = <::bevy_math::Isometry2d as ::core::ops::Mul< - ::bevy_math::Isometry2d, - >>::mul(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "mul", - |_self: V<::bevy_math::Isometry2d>, rhs: V<::bevy_math::Vec2>| { - let output: V<::bevy_math::Vec2> = { - { - let output: V<::bevy_math::Vec2> = <::bevy_math::Isometry2d as ::core::ops::Mul< - ::bevy_math::Vec2, - >>::mul(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "new", |translation: V<::bevy_math::Vec2>, rotation: V<::bevy_math::Rot2>| { @@ -757,74 +639,6 @@ pub(crate) fn register_isometry_3_d_functions(world: &mut World) { }, " Compute `iso1.inverse() * iso2` in a more efficient way for one-shot cases.\n If the same isometry is used multiple times, it is more efficient to instead compute\n the inverse once and use that for each transformation.", &["_self", "rhs"], - ) - .register_documented( - "mul", - |_self: V<::bevy_math::Isometry3d>, rhs: V<::bevy_math::Dir3>| { - let output: V<::bevy_math::Dir3> = { - { - let output: V<::bevy_math::Dir3> = <::bevy_math::Isometry3d as ::core::ops::Mul< - ::bevy_math::Dir3, - >>::mul(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "mul", - |_self: V<::bevy_math::Isometry3d>, rhs: V<::bevy_math::Isometry3d>| { - let output: V<::bevy_math::Isometry3d> = { - { - let output: V<::bevy_math::Isometry3d> = <::bevy_math::Isometry3d as ::core::ops::Mul< - ::bevy_math::Isometry3d, - >>::mul(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "mul", - |_self: V<::bevy_math::Isometry3d>, rhs: V<::bevy_math::Vec3>| { - let output: V<::bevy_math::Vec3> = { - { - let output: V<::bevy_math::Vec3> = <::bevy_math::Isometry3d as ::core::ops::Mul< - ::bevy_math::Vec3, - >>::mul(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "mul", - |_self: V<::bevy_math::Isometry3d>, rhs: V<::bevy_math::Vec3A>| { - let output: V<::bevy_math::Vec3A> = { - { - let output: V<::bevy_math::Vec3A> = <::bevy_math::Isometry3d as ::core::ops::Mul< - ::bevy_math::Vec3A, - >>::mul(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); @@ -1329,57 +1143,6 @@ pub(crate) fn register_rot_2_functions(world: &mut World) { " Computes the squared length or norm of the complex number used to represent the rotation.\n This is generally faster than [`Rot2::length()`], as it avoids a square\n root operation.\n The length is typically expected to be `1.0`. Unexpectedly denormalized rotations\n can be a result of incorrect construction or floating point error caused by\n successive operations.", &["_self"], ) - .register_documented( - "mul", - |_self: V<::bevy_math::Rot2>, direction: V<::bevy_math::Dir2>| { - let output: V<::bevy_math::Dir2> = { - { - let output: V<::bevy_math::Dir2> = <::bevy_math::Rot2 as ::core::ops::Mul< - ::bevy_math::Dir2, - >>::mul(_self.into_inner(), direction.into_inner()) - .into(); - output - } - }; - output - }, - " Rotates the [`Dir2`] using a [`Rot2`].", - &["_self", "direction"], - ) - .register_documented( - "mul", - |_self: V<::bevy_math::Rot2>, rhs: V<::bevy_math::Rot2>| { - let output: V<::bevy_math::Rot2> = { - { - let output: V<::bevy_math::Rot2> = <::bevy_math::Rot2 as ::core::ops::Mul< - ::bevy_math::Rot2, - >>::mul(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "mul", - |_self: V<::bevy_math::Rot2>, rhs: V<::bevy_math::Vec2>| { - let output: V<::bevy_math::Vec2> = { - { - let output: V<::bevy_math::Vec2> = <::bevy_math::Rot2 as ::core::ops::Mul< - ::bevy_math::Vec2, - >>::mul(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - " Rotates a [`Vec2`] by a [`Rot2`].", - &["_self", "rhs"], - ) .register_documented( "nlerp", |_self: V<::bevy_math::Rot2>, end: V<::bevy_math::Rot2>, s: f32| { @@ -1564,13 +1327,12 @@ pub(crate) fn register_dir_2_functions(world: &mut World) { &["_self"], ) .register_documented( - "from_xy_unchecked", - |x: f32, y: f32| { + "from_angle", + |angle: f32| { let output: V<::bevy_math::Dir2> = { { - let output: V<::bevy_math::Dir2> = ::bevy_math::Dir2::from_xy_unchecked( - x, - y, + let output: V<::bevy_math::Dir2> = ::bevy_math::Dir2::from_angle( + angle, ) .into(); output @@ -1578,33 +1340,17 @@ pub(crate) fn register_dir_2_functions(world: &mut World) { }; output }, - " Create a direction from its `x` and `y` components, assuming the resulting vector is normalized.\n # Warning\n The vector produced from `x` and `y` must be normalized, i.e its length must be `1.0`.", - &["x", "y"], + " Creates a 2D direction containing `[angle.cos(), angle.sin()]`.", + &["angle"], ) .register_documented( - "mul", - |_self: V<::bevy_math::Dir2>, rhs: f32| { - let output: V<::bevy_math::Vec2> = { - { - let output: V<::bevy_math::Vec2> = <::bevy_math::Dir2 as ::core::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "neg", - |_self: V<::bevy_math::Dir2>| { + "from_xy_unchecked", + |x: f32, y: f32| { let output: V<::bevy_math::Dir2> = { { - let output: V<::bevy_math::Dir2> = <::bevy_math::Dir2 as ::core::ops::Neg>::neg( - _self.into_inner(), + let output: V<::bevy_math::Dir2> = ::bevy_math::Dir2::from_xy_unchecked( + x, + y, ) .into(); output @@ -1612,8 +1358,8 @@ pub(crate) fn register_dir_2_functions(world: &mut World) { }; output }, - "", - &["_self"], + " Create a direction from its `x` and `y` components, assuming the resulting vector is normalized.\n # Warning\n The vector produced from `x` and `y` must be normalized, i.e its length must be `1.0`.", + &["x", "y"], ) .register_documented( "new_unchecked", @@ -1851,40 +1597,6 @@ pub(crate) fn register_dir_3_functions(world: &mut World) { " Create a direction from its `x`, `y`, and `z` components, assuming the resulting vector is normalized.\n # Warning\n The vector produced from `x`, `y`, and `z` must be normalized, i.e its length must be `1.0`.", &["x", "y", "z"], ) - .register_documented( - "mul", - |_self: V<::bevy_math::Dir3>, rhs: f32| { - let output: V<::bevy_math::Vec3> = { - { - let output: V<::bevy_math::Vec3> = <::bevy_math::Dir3 as ::core::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "neg", - |_self: V<::bevy_math::Dir3>| { - let output: V<::bevy_math::Dir3> = { - { - let output: V<::bevy_math::Dir3> = <::bevy_math::Dir3 as ::core::ops::Neg>::neg( - _self.into_inner(), - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "new_unchecked", |value: V<::bevy_math::Vec3>| { @@ -2003,44 +1715,10 @@ pub(crate) fn register_dir_3_a_functions(world: &mut World) { |x: f32, y: f32, z: f32| { let output: V<::bevy_math::Dir3A> = { { - let output: V<::bevy_math::Dir3A> = ::bevy_math::Dir3A::from_xyz_unchecked( - x, - y, - z, - ) - .into(); - output - } - }; - output - }, - " Create a direction from its `x`, `y`, and `z` components, assuming the resulting vector is normalized.\n # Warning\n The vector produced from `x`, `y`, and `z` must be normalized, i.e its length must be `1.0`.", - &["x", "y", "z"], - ) - .register_documented( - "mul", - |_self: V<::bevy_math::Dir3A>, rhs: f32| { - let output: V<::bevy_math::Vec3A> = { - { - let output: V<::bevy_math::Vec3A> = <::bevy_math::Dir3A as ::core::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "neg", - |_self: V<::bevy_math::Dir3A>| { - let output: V<::bevy_math::Dir3A> = { - { - let output: V<::bevy_math::Dir3A> = <::bevy_math::Dir3A as ::core::ops::Neg>::neg( - _self.into_inner(), + let output: V<::bevy_math::Dir3A> = ::bevy_math::Dir3A::from_xyz_unchecked( + x, + y, + z, ) .into(); output @@ -2048,8 +1726,8 @@ pub(crate) fn register_dir_3_a_functions(world: &mut World) { }; output }, - "", - &["_self"], + " Create a direction from its `x`, `y`, and `z` components, assuming the resulting vector is normalized.\n # Warning\n The vector produced from `x`, `y`, and `z` must be normalized, i.e its length must be `1.0`.", + &["x", "y", "z"], ) .register_documented( "new_unchecked", @@ -2130,23 +1808,6 @@ pub(crate) fn register_i_rect_functions(world: &mut World) { " Returns self as [`URect`] (u32)", &["_self"], ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_math::IRect>| { - let output: () = { - { - let output: () = <::bevy_math::IRect as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "center", |_self: R<::bevy_math::IRect>| { @@ -2754,6 +2415,24 @@ pub(crate) fn register_rect_functions(world: &mut World) { " Rectangle size.\n # Examples\n ```\n # use bevy_math::{Rect, Vec2};\n let r = Rect::new(0., 0., 5., 1.); // w=5 h=1\n assert!(r.size().abs_diff_eq(Vec2::new(5., 1.), 1e-5));\n ```", &["_self"], ) + .register_documented( + "translate", + |_self: R<::bevy_math::Rect>, offset: V<::bevy_math::Vec2>| { + let output: V<::bevy_math::Rect> = { + { + let output: V<::bevy_math::Rect> = ::bevy_math::Rect::translate( + &_self, + offset.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns the rectangle translated by the given offset.\n # Examples\n ```\n # use bevy_math::{Rect, Vec2};\n let r = Rect::new(0., 0., 5., 1.); // w=5 h=1\n let r2 = r.translate(Vec2::new(2., -3.));\n assert!(r2.min.abs_diff_eq(Vec2::new(2., -3.), 1e-5));\n assert!(r2.max.abs_diff_eq(Vec2::new(7., -2.), 1e-5));\n ```", + &["_self", "offset"], + ) .register_documented( "union", |_self: R<::bevy_math::Rect>, other: V<::bevy_math::Rect>| { @@ -2847,23 +2526,6 @@ pub(crate) fn register_u_rect_functions(world: &mut World) { " Returns self as [`Rect`] (f32)", &["_self"], ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_math::URect>| { - let output: () = { - { - let output: () = <::bevy_math::URect as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "center", |_self: R<::bevy_math::URect>| { @@ -3160,15 +2822,6 @@ pub(crate) fn register_u_rect_functions(world: &mut World) { registry .register_type_data::<::bevy_math::URect, bevy_mod_scripting_bindings::MarkAsGenerated>(); } -pub(crate) fn register_affine_3_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::bevy_math::Affine3>::new( - world, - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::<::bevy_math::Affine3, bevy_mod_scripting_bindings::MarkAsGenerated>(); -} pub(crate) fn register_aabb_2_d_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_math::bounding::Aabb2d, @@ -8750,40 +8403,6 @@ pub(crate) fn register_dir_4_functions(world: &mut World) { " Create a direction from its `x`, `y`, `z`, and `w` components, assuming the resulting vector is normalized.\n # Warning\n The vector produced from `x`, `y`, `z`, and `w` must be normalized, i.e its length must be `1.0`.", &["x", "y", "z", "w"], ) - .register_documented( - "mul", - |_self: V<::bevy_math::Dir4>, rhs: f32| { - let output: V<::bevy_math::Vec4> = { - { - let output: V<::bevy_math::Vec4> = <::bevy_math::Dir4 as ::core::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "neg", - |_self: V<::bevy_math::Dir4>| { - let output: V<::bevy_math::Dir4> = { - { - let output: V<::bevy_math::Dir4> = <::bevy_math::Dir4 as ::core::ops::Neg>::neg( - _self.into_inner(), - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "new_unchecked", |value: V<::bevy_math::Vec4>| { @@ -8911,23 +8530,6 @@ pub(crate) fn register_float_ord_functions(world: &mut World) { }, "", &["_self", "other"], - ) - .register_documented( - "neg", - |_self: V<::bevy_math::FloatOrd>| { - let output: V<::bevy_math::FloatOrd> = { - { - let output: V<::bevy_math::FloatOrd> = <::bevy_math::FloatOrd as ::core::ops::Neg>::neg( - _self.into_inner(), - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); @@ -9110,6 +8712,217 @@ pub(crate) fn register_tetrahedron_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_half_space_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_math::primitives::HalfSpace, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_math::primitives::HalfSpace>| { + let output: V<::bevy_math::primitives::HalfSpace> = { + { + let output: V<::bevy_math::primitives::HalfSpace> = <::bevy_math::primitives::HalfSpace as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "d", + |_self: R<::bevy_math::primitives::HalfSpace>| { + let output: f32 = { + { + let output: f32 = ::bevy_math::primitives::HalfSpace::d(&_self) + .into(); + output + } + }; + output + }, + " Returns the signed distance from the bisecting plane to the origin along\n the plane's unit normal vector.", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_math::primitives::HalfSpace>, + other: R<::bevy_math::primitives::HalfSpace>| + { + let output: bool = { + { + let output: bool = <::bevy_math::primitives::HalfSpace as ::core::cmp::PartialEq< + ::bevy_math::primitives::HalfSpace, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "new", + |normal_d: V<::bevy_math::Vec4>| { + let output: V<::bevy_math::primitives::HalfSpace> = { + { + let output: V<::bevy_math::primitives::HalfSpace> = ::bevy_math::primitives::HalfSpace::new( + normal_d.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Constructs a `HalfSpace` from a 4D vector whose first 3 components\n represent the bisecting plane's unit normal, and the last component is\n the signed distance along the normal from the plane to the origin.\n The constructor ensures the normal vector is normalized and the distance is appropriately scaled.", + &["normal_d"], + ) + .register_documented( + "normal", + |_self: R<::bevy_math::primitives::HalfSpace>| { + let output: V<::bevy_math::Vec3A> = { + { + let output: V<::bevy_math::Vec3A> = ::bevy_math::primitives::HalfSpace::normal( + &_self, + ) + .into(); + output + } + }; + output + }, + " Returns the unit normal vector of the bisecting plane that characterizes the `HalfSpace`.", + &["_self"], + ) + .register_documented( + "normal_d", + |_self: R<::bevy_math::primitives::HalfSpace>| { + let output: V<::bevy_math::Vec4> = { + { + let output: V<::bevy_math::Vec4> = ::bevy_math::primitives::HalfSpace::normal_d( + &_self, + ) + .into(); + output + } + }; + output + }, + " Returns the bisecting plane's unit normal vector and the signed distance\n from the plane to the origin.", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_math::primitives::HalfSpace, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_view_frustum_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_math::primitives::ViewFrustum, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_math::primitives::ViewFrustum>| { + let output: V<::bevy_math::primitives::ViewFrustum> = { + { + let output: V<::bevy_math::primitives::ViewFrustum> = + <::bevy_math::primitives::ViewFrustum as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_math::primitives::ViewFrustum>, + other: R<::bevy_math::primitives::ViewFrustum>| { + let output: bool = { + { + let output: bool = + <::bevy_math::primitives::ViewFrustum as ::core::cmp::PartialEq< + ::bevy_math::primitives::ViewFrustum, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "from_clip_from_world", + |clip_from_world: R<::bevy_math::Mat4>| { + let output: V<::bevy_math::primitives::ViewFrustum> = { + { + let output: V<::bevy_math::primitives::ViewFrustum> = + ::bevy_math::primitives::ViewFrustum::from_clip_from_world( + &clip_from_world, + ) + .into(); + output + } + }; + output + }, + " Returns a view frustum derived from `clip_from_world`.", + &["clip_from_world"], + ) + .register_documented( + "from_clip_from_world_custom_far", + |clip_from_world: R<::bevy_math::Mat4>, + view_translation: R<::bevy_math::Vec3>, + view_backward: R<::bevy_math::Vec3>, + far: f32| { + let output: V<::bevy_math::primitives::ViewFrustum> = { + { + let output: V<::bevy_math::primitives::ViewFrustum> = + ::bevy_math::primitives::ViewFrustum::from_clip_from_world_custom_far( + &clip_from_world, + &view_translation, + &view_backward, + far, + ) + .into(); + output + } + }; + output + }, + " Returns a view frustum derived from `clip_from_world`,\n but with a custom far plane.", + &[ + "clip_from_world", + "view_translation", + "view_backward", + "far", + ], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_math::primitives::ViewFrustum, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_ease_function_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_math::curve::EaseFunction, @@ -9160,23 +8973,6 @@ pub(crate) fn register_jump_at_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_math::curve::JumpAt, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_math::curve::JumpAt>| { - let output: () = { - { - let output: () = <::bevy_math::curve::JumpAt as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_math::curve::JumpAt>| { @@ -9236,7 +9032,6 @@ impl Plugin for BevyMathScriptingPlugin { register_i_rect_functions(&mut world); register_rect_functions(&mut world); register_u_rect_functions(&mut world); - register_affine_3_functions(&mut world); register_aabb_2_d_functions(&mut world); register_bounding_circle_functions(&mut world); register_circle_functions(&mut world); @@ -9281,6 +9076,8 @@ impl Plugin for BevyMathScriptingPlugin { register_float_ord_functions(&mut world); register_plane_3_d_functions(&mut world); register_tetrahedron_functions(&mut world); + register_half_space_functions(&mut world); + register_view_frustum_functions(&mut world); register_ease_function_functions(&mut world); register_jump_at_functions(&mut world); } diff --git a/crates/bindings/bevy_mesh_bms_bindings/Cargo.toml b/crates/bindings/bevy_mesh_bms_bindings/Cargo.toml index e56a5ad391..c54bab9a45 100644 --- a/crates/bindings/bevy_mesh_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_mesh_bms_bindings/Cargo.toml @@ -20,31 +20,37 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_mesh = { version = "0.18.1", features = ["bevy_mikktspace", "morph"], default-features = true} +bevy_mesh = { version = "0.19.0", features = ["bevy_mikktspace", "morph"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_image = { version = "^0.18.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} +bevy_encase_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_mikktspace = { version = "^0.17.0-dev", features = [], default-features = true} +bevy_mikktspace = { version = "^1", features = [], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} bitflags = { version = "^2.3", features = [], default-features = true} bytemuck = { version = "^1.5", features = [], default-features = true} -hexasphere = { version = "^16.0", features = [], default-features = true} +encase = { version = "^0.12", features = [], default-features = true} + +glam = { version = "^0.32.0", features = ["encase"], default-features = false} + +half = { version = "^2.4.1", features = [], default-features = true} + +hexasphere = { version = "^18.0", features = [], default-features = true} diff --git a/crates/bindings/bevy_mesh_bms_bindings/src/lib.rs b/crates/bindings/bevy_mesh_bms_bindings/src/lib.rs index 864d9f873a..af256c35db 100644 --- a/crates/bindings/bevy_mesh_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_mesh_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -593,24 +594,6 @@ pub(crate) fn register_mesh_2_d_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::bevy_mesh::Mesh2d>::new( world, ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_mesh::Mesh2d>| { - let output: () = { - { - let output: () = - <::bevy_mesh::Mesh2d as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_mesh::Mesh2d>| { @@ -652,24 +635,6 @@ pub(crate) fn register_mesh_3_d_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::bevy_mesh::Mesh3d>::new( world, ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_mesh::Mesh3d>| { - let output: () = { - { - let output: () = - <::bevy_mesh::Mesh3d as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_mesh::Mesh3d>| { @@ -711,23 +676,6 @@ pub(crate) fn register_mesh_tag_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_mesh::MeshTag, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_mesh::MeshTag>| { - let output: () = { - { - let output: () = <::bevy_mesh::MeshTag as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_mesh::MeshTag>| { @@ -853,17 +801,67 @@ pub(crate) fn register_indices_functions(world: &mut World) { registry .register_type_data::<::bevy_mesh::Indices, bevy_mod_scripting_bindings::MarkAsGenerated>(); } -pub(crate) fn register_mesh_morph_weights_functions(world: &mut World) { +pub(crate) fn register_skinned_mesh_bounds_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_mesh::morph::MeshMorphWeights, + ::bevy_mesh::skinning::SkinnedMeshBounds, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_mesh::skinning::SkinnedMeshBounds>| { + let output: V<::bevy_mesh::skinning::SkinnedMeshBounds> = { + { + let output: V<::bevy_mesh::skinning::SkinnedMeshBounds> = + <::bevy_mesh::skinning::SkinnedMeshBounds as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_mesh::skinning::SkinnedMeshBounds>, + other: R<::bevy_mesh::skinning::SkinnedMeshBounds>| { + let output: bool = { + { + let output: bool = + <::bevy_mesh::skinning::SkinnedMeshBounds as ::std::cmp::PartialEq< + ::bevy_mesh::skinning::SkinnedMeshBounds, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_mesh::skinning::SkinnedMeshBounds, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_morph_attributes_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_mesh::morph::MorphAttributes, >::new(world) .register_documented( - "clear_weights", - |mut _self: M<::bevy_mesh::morph::MeshMorphWeights>| { - let output: () = { + "clone", + |_self: R<::bevy_mesh::morph::MorphAttributes>| { + let output: V<::bevy_mesh::morph::MorphAttributes> = { { - let output: () = - ::bevy_mesh::morph::MeshMorphWeights::clear_weights(&mut _self).into(); + let output: V<::bevy_mesh::morph::MorphAttributes> = + <::bevy_mesh::morph::MorphAttributes as ::std::clone::Clone>::clone(&_self) + .into(); output } }; @@ -872,6 +870,103 @@ pub(crate) fn register_mesh_morph_weights_functions(world: &mut World) { "", &["_self"], ) + .register_documented( + "eq", + |_self: R<::bevy_mesh::morph::MorphAttributes>, + other: R<::bevy_mesh::morph::MorphAttributes>| { + let output: bool = { + { + let output: bool = + <::bevy_mesh::morph::MorphAttributes as ::std::cmp::PartialEq< + ::bevy_mesh::morph::MorphAttributes, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "new", + |position: V<::bevy_math::Vec3>, + normal: V<::bevy_math::Vec3>, + tangent: V<::bevy_math::Vec3>| { + let output: V<::bevy_mesh::morph::MorphAttributes> = { + { + let output: V<::bevy_mesh::morph::MorphAttributes> = + ::bevy_mesh::morph::MorphAttributes::new( + position.into_inner(), + normal.into_inner(), + tangent.into_inner(), + ) + .into(); + output + } + }; + output + }, + "", + &["position", "normal", "tangent"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_mesh::morph::MorphAttributes, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_uv_channel_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_mesh::UvChannel, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_mesh::UvChannel>| { + let output: V<::bevy_mesh::UvChannel> = { + { + let output: V<::bevy_mesh::UvChannel> = <::bevy_mesh::UvChannel as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_mesh::UvChannel>, other: R<::bevy_mesh::UvChannel>| { + let output: bool = { + { + let output: bool = <::bevy_mesh::UvChannel as ::std::cmp::PartialEq< + ::bevy_mesh::UvChannel, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::bevy_mesh::UvChannel, bevy_mod_scripting_bindings::MarkAsGenerated>( + ); +} +pub(crate) fn register_mesh_morph_weights_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_mesh::morph::MeshMorphWeights, + >::new(world) .register_documented( "clone", |_self: R<::bevy_mesh::morph::MeshMorphWeights>| { @@ -2271,6 +2366,42 @@ pub(crate) fn register_plane_mesh_builder_functions(world: &mut World) { }, " Sets the subdivisions of the plane mesh.\n 0 - is the original plane geometry, the 4 points in the XZ plane.\n 1 - is split by 1 line in the middle of the plane on both the X axis and the Z axis,\n resulting in a plane with 4 quads / 8 triangles.\n 2 - is a plane split by 2 lines on both the X and Z axes, subdividing the plane into 3\n equal sections along each axis, resulting in a plane with 9 quads / 18 triangles.", &["_self", "subdivisions"], + ) + .register_documented( + "subdivisions_x", + |_self: V<::bevy_mesh::PlaneMeshBuilder>, subdivisions: u32| { + let output: V<::bevy_mesh::PlaneMeshBuilder> = { + { + let output: V<::bevy_mesh::PlaneMeshBuilder> = ::bevy_mesh::PlaneMeshBuilder::subdivisions_x( + _self.into_inner(), + subdivisions, + ) + .into(); + output + } + }; + output + }, + " The number of subdivisions along the X axis.\n 0 - is the original plane geometry, the 4 points in the XZ plane.\n 1 - adds a vertex in the middle of the X axis, resulting in a plane with 2 quads / 4 triangles, and a new edge along the Z axis.\n 2 - adds 2 vertices along the X axis, resulting in a plane with 3 quads / 6 triangles.\n and so on...", + &["_self", "subdivisions"], + ) + .register_documented( + "subdivisions_z", + |_self: V<::bevy_mesh::PlaneMeshBuilder>, subdivisions: u32| { + let output: V<::bevy_mesh::PlaneMeshBuilder> = { + { + let output: V<::bevy_mesh::PlaneMeshBuilder> = ::bevy_mesh::PlaneMeshBuilder::subdivisions_z( + _self.into_inner(), + subdivisions, + ) + .into(); + output + } + }; + output + }, + " The number of subdivisions along the Z axis.\n 0 - is the original plane geometry, the 4 points in the XZ plane.\n 1 - adds a vertex in the middle of the Z axis, resulting in a plane with 2 quads / 4 triangles, and a new edge along the X axis.\n 2 - adds 2 vertices along the Z axis, resulting in a plane with 3 quads / 6 triangles.\n and so on...", + &["_self", "subdivisions"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); @@ -2560,6 +2691,99 @@ pub(crate) fn register_skinned_mesh_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_joint_aabb_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_mesh::skinning::JointAabb, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_mesh::skinning::JointAabb>| { + let output: V<::bevy_mesh::skinning::JointAabb> = { + { + let output: V<::bevy_mesh::skinning::JointAabb> = + <::bevy_mesh::skinning::JointAabb as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_mesh::skinning::JointAabb>, other: R<::bevy_mesh::skinning::JointAabb>| { + let output: bool = { + { + let output: bool = + <::bevy_mesh::skinning::JointAabb as ::std::cmp::PartialEq< + ::bevy_mesh::skinning::JointAabb, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_mesh::skinning::JointAabb, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_joint_index_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_mesh::skinning::JointIndex, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_mesh::skinning::JointIndex>| { + let output: V<::bevy_mesh::skinning::JointIndex> = { + { + let output: V<::bevy_mesh::skinning::JointIndex> = + <::bevy_mesh::skinning::JointIndex as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_mesh::skinning::JointIndex>, + other: R<::bevy_mesh::skinning::JointIndex>| { + let output: bool = { + { + let output: bool = + <::bevy_mesh::skinning::JointIndex as ::std::cmp::PartialEq< + ::bevy_mesh::skinning::JointIndex, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_mesh::skinning::JointIndex, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} impl Plugin for BevyMeshScriptingPlugin { fn build(&self, app: &mut App) { let mut world = app.world_mut(); @@ -2569,6 +2793,9 @@ impl Plugin for BevyMeshScriptingPlugin { register_mesh_3_d_functions(&mut world); register_mesh_tag_functions(&mut world); register_indices_functions(&mut world); + register_skinned_mesh_bounds_functions(&mut world); + register_morph_attributes_functions(&mut world); + register_uv_channel_functions(&mut world); register_mesh_morph_weights_functions(&mut world); register_circle_mesh_builder_functions(&mut world); register_circular_mesh_uv_mode_functions(&mut world); @@ -2598,5 +2825,7 @@ impl Plugin for BevyMeshScriptingPlugin { register_torus_mesh_builder_functions(&mut world); register_triangle_3_d_mesh_builder_functions(&mut world); register_skinned_mesh_functions(&mut world); + register_joint_aabb_functions(&mut world); + register_joint_index_functions(&mut world); } } diff --git a/crates/bindings/bevy_pbr_bms_bindings/Cargo.toml b/crates/bindings/bevy_pbr_bms_bindings/Cargo.toml index 3dc0272b36..c7d14c5b08 100644 --- a/crates/bindings/bevy_pbr_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_pbr_bms_bindings/Cargo.toml @@ -20,44 +20,50 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_pbr = { version = "0.18.1", features = ["webgl"], default-features = true} +bevy_pbr = { version = "0.19.0", features = ["bevy_gltf", "webgl"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_camera = { version = "^0.18.0", features = [], default-features = true} +bevy_camera = { version = "^0.19.0", features = [], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_core_pipeline = { version = "^0.18.0", features = ["tonemapping_luts", "webgl"], default-features = true} +bevy_core_pipeline = { version = "^0.19.0", features = ["tonemapping_luts", "webgl"], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_diagnostic = { version = "^0.18.0", features = ["std", "sysinfo", "sysinfo_plugin"], default-features = true} +bevy_diagnostic = { version = "^0.19.0", features = ["std", "sysinfo", "sysinfo_plugin"], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_image = { version = "^0.18.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} +bevy_gltf = { version = "^0.19.0", features = ["bevy_animation"], default-features = true} -bevy_light = { version = "^0.18.0", features = ["webgl"], default-features = true} +bevy_image = { version = "^0.19.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} -bevy_log = { version = "^0.18.0", features = [], default-features = true} +bevy_light = { version = "^0.19.0", features = ["bevy_gizmos", "webgl"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_log = { version = "^0.19.0", features = [], default-features = true} -bevy_mesh = { version = "^0.18.0", features = ["bevy_mikktspace", "morph"], default-features = true} +bevy_material = { version = "^0.19.0", features = [], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_render = { version = "^0.18.0", features = ["morph", "multi_threaded", "webgl"], default-features = true} +bevy_mesh = { version = "^0.19.0", features = ["bevy_mikktspace", "morph"], default-features = true} -bevy_shader = { version = "^0.18.0", features = [], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_render = { version = "^0.19.0", features = ["morph", "multi_threaded", "reflect_auto_register", "webgl"], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} +bevy_shader = { version = "^0.19.0", features = [], default-features = true} + +bevy_tasks = { version = "^0.19.0", features = ["async_executor", "futures-lite", "multi_threaded"], default-features = true} + +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} + +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} bitflags = { version = "^2.3", features = [], default-features = true} @@ -65,10 +71,14 @@ bytemuck = { version = "^1", features = [], default-features = true} fixedbitset = { version = "^0.5", features = [], default-features = true} +indexmap = { version = "^2", features = [], default-features = true} + nonmax = { version = "^0.5", features = [], default-features = true} offset-allocator = { version = "^0.2", features = [], default-features = true} static_assertions = { version = "^1", features = [], default-features = true} +wgpu-types = { version = "^29.0.3", features = [], default-features = true} + diff --git a/crates/bindings/bevy_pbr_bms_bindings/src/lib.rs b/crates/bindings/bevy_pbr_bms_bindings/src/lib.rs index 78c3c0b91e..03cf8c08f3 100644 --- a/crates/bindings/bevy_pbr_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_pbr_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -12,6 +13,35 @@ use bevy_mod_scripting_bindings::{ }; use bevy_mod_scripting_derive::script_bindings; pub struct BevyPbrScriptingPlugin; +pub(crate) fn register_contact_shadows_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_pbr::ContactShadows, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_pbr::ContactShadows>| { + let output: V<::bevy_pbr::ContactShadows> = { + { + let output: V<::bevy_pbr::ContactShadows> = <::bevy_pbr::ContactShadows as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_pbr::ContactShadows, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_distance_fog_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_pbr::DistanceFog, @@ -251,60 +281,41 @@ pub(crate) fn register_parallax_mapping_method_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_pbr::ParallaxMappingMethod, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_pbr::ParallaxMappingMethod>| { - let output: () = { - { - let output: () = <::bevy_pbr::ParallaxMappingMethod as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_pbr::ParallaxMappingMethod>| { - let output: V<::bevy_pbr::ParallaxMappingMethod> = { - { - let output: V<::bevy_pbr::ParallaxMappingMethod> = <::bevy_pbr::ParallaxMappingMethod as ::std::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_pbr::ParallaxMappingMethod>| { + let output: V<::bevy_pbr::ParallaxMappingMethod> = { + { + let output: V<::bevy_pbr::ParallaxMappingMethod> = + <::bevy_pbr::ParallaxMappingMethod as ::std::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_pbr::ParallaxMappingMethod>, - other: R<::bevy_pbr::ParallaxMappingMethod>| - { - let output: bool = { - { - let output: bool = <::bevy_pbr::ParallaxMappingMethod as ::std::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_pbr::ParallaxMappingMethod>, + other: R<::bevy_pbr::ParallaxMappingMethod>| { + let output: bool = { + { + let output: bool = + <::bevy_pbr::ParallaxMappingMethod as ::std::cmp::PartialEq< ::bevy_pbr::ParallaxMappingMethod, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -375,83 +386,6 @@ pub(crate) fn register_standard_material_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_screen_space_ambient_occlusion_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_pbr::ScreenSpaceAmbientOcclusion, - >::new(world) - .register_documented( - "clone", - |_self: R<::bevy_pbr::ScreenSpaceAmbientOcclusion>| { - let output: V<::bevy_pbr::ScreenSpaceAmbientOcclusion> = { - { - let output: V<::bevy_pbr::ScreenSpaceAmbientOcclusion> = - <::bevy_pbr::ScreenSpaceAmbientOcclusion as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - |_self: R<::bevy_pbr::ScreenSpaceAmbientOcclusion>, - other: R<::bevy_pbr::ScreenSpaceAmbientOcclusion>| { - let output: bool = { - { - let output: bool = - <::bevy_pbr::ScreenSpaceAmbientOcclusion as ::std::cmp::PartialEq< - ::bevy_pbr::ScreenSpaceAmbientOcclusion, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_pbr::ScreenSpaceAmbientOcclusion, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_screen_space_reflections_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_pbr::ScreenSpaceReflections, - >::new(world) - .register_documented( - "clone", - |_self: R<::bevy_pbr::ScreenSpaceReflections>| { - let output: V<::bevy_pbr::ScreenSpaceReflections> = { - { - let output: V<::bevy_pbr::ScreenSpaceReflections> = - <::bevy_pbr::ScreenSpaceReflections as ::std::clone::Clone>::clone(&_self) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_pbr::ScreenSpaceReflections, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} pub(crate) fn register_default_opaque_renderer_method_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_pbr::DefaultOpaqueRendererMethod, @@ -602,83 +536,47 @@ pub(crate) fn register_wireframe_config_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_wireframe_functions(world: &mut World) { +pub(crate) fn register_wireframe_line_width_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_pbr::wireframe::Wireframe, + ::bevy_pbr::wireframe::WireframeLineWidth, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_pbr::wireframe::Wireframe>| { - let output: () = { - { - let output: () = <::bevy_pbr::wireframe::Wireframe as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_pbr::wireframe::Wireframe>| { - let output: V<::bevy_pbr::wireframe::Wireframe> = { - { - let output: V<::bevy_pbr::wireframe::Wireframe> = <::bevy_pbr::wireframe::Wireframe as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_pbr::wireframe::Wireframe>, - other: R<::bevy_pbr::wireframe::Wireframe>| - { - let output: bool = { - { - let output: bool = <::bevy_pbr::wireframe::Wireframe as ::std::cmp::PartialEq< - ::bevy_pbr::wireframe::Wireframe, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .register_documented( + "clone", + |_self: R<::bevy_pbr::wireframe::WireframeLineWidth>| { + let output: V<::bevy_pbr::wireframe::WireframeLineWidth> = { + { + let output: V<::bevy_pbr::wireframe::WireframeLineWidth> = + <::bevy_pbr::wireframe::WireframeLineWidth as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_pbr::wireframe::Wireframe, + ::bevy_pbr::wireframe::WireframeLineWidth, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_wireframe_color_functions(world: &mut World) { +pub(crate) fn register_wireframe_topology_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_pbr::wireframe::WireframeColor, + ::bevy_pbr::wireframe::WireframeTopology, >::new(world) .register_documented( "clone", - |_self: R<::bevy_pbr::wireframe::WireframeColor>| { - let output: V<::bevy_pbr::wireframe::WireframeColor> = { + |_self: R<::bevy_pbr::wireframe::WireframeTopology>| { + let output: V<::bevy_pbr::wireframe::WireframeTopology> = { { - let output: V<::bevy_pbr::wireframe::WireframeColor> = - <::bevy_pbr::wireframe::WireframeColor as ::std::clone::Clone>::clone( + let output: V<::bevy_pbr::wireframe::WireframeTopology> = + <::bevy_pbr::wireframe::WireframeTopology as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -689,159 +587,94 @@ pub(crate) fn register_wireframe_color_functions(world: &mut World) { }, "", &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_pbr::wireframe::WireframeTopology>, + other: R<::bevy_pbr::wireframe::WireframeTopology>| { + let output: bool = { + { + let output: bool = + <::bevy_pbr::wireframe::WireframeTopology as ::std::cmp::PartialEq< + ::bevy_pbr::wireframe::WireframeTopology, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_pbr::wireframe::WireframeColor, + ::bevy_pbr::wireframe::WireframeTopology, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_no_wireframe_functions(world: &mut World) { +pub(crate) fn register_wireframe_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_pbr::wireframe::NoWireframe, + ::bevy_pbr::wireframe::Wireframe, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_pbr::wireframe::NoWireframe>| { - let output: () = { - { - let output: () = <::bevy_pbr::wireframe::NoWireframe as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_pbr::wireframe::NoWireframe>| { - let output: V<::bevy_pbr::wireframe::NoWireframe> = { - { - let output: V<::bevy_pbr::wireframe::NoWireframe> = <::bevy_pbr::wireframe::NoWireframe as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_pbr::wireframe::NoWireframe>, - other: R<::bevy_pbr::wireframe::NoWireframe>| - { - let output: bool = { - { - let output: bool = <::bevy_pbr::wireframe::NoWireframe as ::std::cmp::PartialEq< - ::bevy_pbr::wireframe::NoWireframe, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_pbr::wireframe::NoWireframe, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_mesh_3_d_wireframe_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_pbr::wireframe::Mesh3dWireframe, - >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_pbr::wireframe::Mesh3dWireframe>| { - let output: () = { - { - let output: () = <::bevy_pbr::wireframe::Mesh3dWireframe as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_pbr::wireframe::Mesh3dWireframe>| { - let output: V<::bevy_pbr::wireframe::Mesh3dWireframe> = { - { - let output: V<::bevy_pbr::wireframe::Mesh3dWireframe> = <::bevy_pbr::wireframe::Mesh3dWireframe as ::std::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_pbr::wireframe::Wireframe>| { + let output: V<::bevy_pbr::wireframe::Wireframe> = { + { + let output: V<::bevy_pbr::wireframe::Wireframe> = + <::bevy_pbr::wireframe::Wireframe as ::std::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_pbr::wireframe::Mesh3dWireframe>, - other: R<::bevy_pbr::wireframe::Mesh3dWireframe>| - { - let output: bool = { - { - let output: bool = <::bevy_pbr::wireframe::Mesh3dWireframe as ::std::cmp::PartialEq< - ::bevy_pbr::wireframe::Mesh3dWireframe, + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_pbr::wireframe::Wireframe>, other: R<::bevy_pbr::wireframe::Wireframe>| { + let output: bool = { + { + let output: bool = + <::bevy_pbr::wireframe::Wireframe as ::std::cmp::PartialEq< + ::bevy_pbr::wireframe::Wireframe, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_pbr::wireframe::Mesh3dWireframe, + ::bevy_pbr::wireframe::Wireframe, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_gpu_atmosphere_settings_functions(world: &mut World) { +pub(crate) fn register_wireframe_color_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_pbr::GpuAtmosphereSettings, + ::bevy_pbr::wireframe::WireframeColor, >::new(world) .register_documented( "clone", - |_self: R<::bevy_pbr::GpuAtmosphereSettings>| { - let output: V<::bevy_pbr::GpuAtmosphereSettings> = { + |_self: R<::bevy_pbr::wireframe::WireframeColor>| { + let output: V<::bevy_pbr::wireframe::WireframeColor> = { { - let output: V<::bevy_pbr::GpuAtmosphereSettings> = - <::bevy_pbr::GpuAtmosphereSettings as ::std::clone::Clone>::clone(&_self) - .into(); + let output: V<::bevy_pbr::wireframe::WireframeColor> = + <::bevy_pbr::wireframe::WireframeColor as ::std::clone::Clone>::clone( + &_self, + ) + .into(); output } }; @@ -854,21 +687,21 @@ pub(crate) fn register_gpu_atmosphere_settings_functions(world: &mut World) { let mut registry = registry.write(); registry .register_type_data::< - ::bevy_pbr::GpuAtmosphereSettings, + ::bevy_pbr::wireframe::WireframeColor, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_atmosphere_settings_functions(world: &mut World) { +pub(crate) fn register_no_wireframe_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_pbr::AtmosphereSettings, + ::bevy_pbr::wireframe::NoWireframe, >::new(world) .register_documented( "clone", - |_self: R<::bevy_pbr::AtmosphereSettings>| { - let output: V<::bevy_pbr::AtmosphereSettings> = { + |_self: R<::bevy_pbr::wireframe::NoWireframe>| { + let output: V<::bevy_pbr::wireframe::NoWireframe> = { { - let output: V<::bevy_pbr::AtmosphereSettings> = - <::bevy_pbr::AtmosphereSettings as ::std::clone::Clone>::clone(&_self) + let output: V<::bevy_pbr::wireframe::NoWireframe> = + <::bevy_pbr::wireframe::NoWireframe as ::std::clone::Clone>::clone(&_self) .into(); output } @@ -877,55 +710,45 @@ pub(crate) fn register_atmosphere_settings_functions(world: &mut World) { }, "", &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_pbr::wireframe::NoWireframe>, + other: R<::bevy_pbr::wireframe::NoWireframe>| { + let output: bool = { + { + let output: bool = + <::bevy_pbr::wireframe::NoWireframe as ::std::cmp::PartialEq< + ::bevy_pbr::wireframe::NoWireframe, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_pbr::AtmosphereSettings, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_atmosphere_mode_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_pbr::AtmosphereMode, - >::new(world) - .register_documented( - "clone", - |_self: R<::bevy_pbr::AtmosphereMode>| { - let output: V<::bevy_pbr::AtmosphereMode> = { - { - let output: V<::bevy_pbr::AtmosphereMode> = <::bevy_pbr::AtmosphereMode as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_pbr::AtmosphereMode, + ::bevy_pbr::wireframe::NoWireframe, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_render_visible_mesh_entities_functions(world: &mut World) { +pub(crate) fn register_mesh_3_d_wireframe_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_pbr::RenderVisibleMeshEntities, + ::bevy_pbr::wireframe::Mesh3dWireframe, >::new(world) .register_documented( "clone", - |_self: R<::bevy_pbr::RenderVisibleMeshEntities>| { - let output: V<::bevy_pbr::RenderVisibleMeshEntities> = { + |_self: R<::bevy_pbr::wireframe::Mesh3dWireframe>| { + let output: V<::bevy_pbr::wireframe::Mesh3dWireframe> = { { - let output: V<::bevy_pbr::RenderVisibleMeshEntities> = - <::bevy_pbr::RenderVisibleMeshEntities as ::std::clone::Clone>::clone( + let output: V<::bevy_pbr::wireframe::Mesh3dWireframe> = + <::bevy_pbr::wireframe::Mesh3dWireframe as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -936,29 +759,46 @@ pub(crate) fn register_render_visible_mesh_entities_functions(world: &mut World) }, "", &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_pbr::wireframe::Mesh3dWireframe>, + other: R<::bevy_pbr::wireframe::Mesh3dWireframe>| { + let output: bool = { + { + let output: bool = + <::bevy_pbr::wireframe::Mesh3dWireframe as ::std::cmp::PartialEq< + ::bevy_pbr::wireframe::Mesh3dWireframe, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_pbr::RenderVisibleMeshEntities, + ::bevy_pbr::wireframe::Mesh3dWireframe, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_render_cubemap_visible_entities_functions(world: &mut World) { +pub(crate) fn register_atmosphere_settings_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_pbr::RenderCubemapVisibleEntities, + ::bevy_pbr::AtmosphereSettings, >::new(world) .register_documented( "clone", - |_self: R<::bevy_pbr::RenderCubemapVisibleEntities>| { - let output: V<::bevy_pbr::RenderCubemapVisibleEntities> = { + |_self: R<::bevy_pbr::AtmosphereSettings>| { + let output: V<::bevy_pbr::AtmosphereSettings> = { { - let output: V<::bevy_pbr::RenderCubemapVisibleEntities> = - <::bevy_pbr::RenderCubemapVisibleEntities as ::std::clone::Clone>::clone( - &_self, - ) - .into(); + let output: V<::bevy_pbr::AtmosphereSettings> = + <::bevy_pbr::AtmosphereSettings as ::std::clone::Clone>::clone(&_self) + .into(); output } }; @@ -971,24 +811,22 @@ pub(crate) fn register_render_cubemap_visible_entities_functions(world: &mut Wor let mut registry = registry.write(); registry .register_type_data::< - ::bevy_pbr::RenderCubemapVisibleEntities, + ::bevy_pbr::AtmosphereSettings, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_render_cascades_visible_entities_functions(world: &mut World) { +pub(crate) fn register_gpu_atmosphere_settings_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_pbr::RenderCascadesVisibleEntities, + ::bevy_pbr::GpuAtmosphereSettings, >::new(world) .register_documented( "clone", - |_self: R<::bevy_pbr::RenderCascadesVisibleEntities>| { - let output: V<::bevy_pbr::RenderCascadesVisibleEntities> = { + |_self: R<::bevy_pbr::GpuAtmosphereSettings>| { + let output: V<::bevy_pbr::GpuAtmosphereSettings> = { { - let output: V<::bevy_pbr::RenderCascadesVisibleEntities> = - <::bevy_pbr::RenderCascadesVisibleEntities as ::std::clone::Clone>::clone( - &_self, - ) - .into(); + let output: V<::bevy_pbr::GpuAtmosphereSettings> = + <::bevy_pbr::GpuAtmosphereSettings as ::std::clone::Clone>::clone(&_self) + .into(); output } }; @@ -1001,7 +839,36 @@ pub(crate) fn register_render_cascades_visible_entities_functions(world: &mut Wo let mut registry = registry.write(); registry .register_type_data::< - ::bevy_pbr::RenderCascadesVisibleEntities, + ::bevy_pbr::GpuAtmosphereSettings, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_atmosphere_mode_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_pbr::AtmosphereMode, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_pbr::AtmosphereMode>| { + let output: V<::bevy_pbr::AtmosphereMode> = { + { + let output: V<::bevy_pbr::AtmosphereMode> = <::bevy_pbr::AtmosphereMode as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_pbr::AtmosphereMode, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } @@ -1017,18 +884,20 @@ pub(crate) fn register_forward_decal_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_opaque_renderer_method_functions(world: &mut World) { +pub(crate) fn register_screen_space_ambient_occlusion_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_pbr::OpaqueRendererMethod, + ::bevy_pbr::ScreenSpaceAmbientOcclusion, >::new(world) .register_documented( "clone", - |_self: R<::bevy_pbr::OpaqueRendererMethod>| { - let output: V<::bevy_pbr::OpaqueRendererMethod> = { + |_self: R<::bevy_pbr::ScreenSpaceAmbientOcclusion>| { + let output: V<::bevy_pbr::ScreenSpaceAmbientOcclusion> = { { - let output: V<::bevy_pbr::OpaqueRendererMethod> = - <::bevy_pbr::OpaqueRendererMethod as ::std::clone::Clone>::clone(&_self) - .into(); + let output: V<::bevy_pbr::ScreenSpaceAmbientOcclusion> = + <::bevy_pbr::ScreenSpaceAmbientOcclusion as ::std::clone::Clone>::clone( + &_self, + ) + .into(); output } }; @@ -1039,12 +908,13 @@ pub(crate) fn register_opaque_renderer_method_functions(world: &mut World) { ) .register_documented( "eq", - |_self: R<::bevy_pbr::OpaqueRendererMethod>, other: R<::bevy_pbr::OpaqueRendererMethod>| { + |_self: R<::bevy_pbr::ScreenSpaceAmbientOcclusion>, + other: R<::bevy_pbr::ScreenSpaceAmbientOcclusion>| { let output: bool = { { let output: bool = - <::bevy_pbr::OpaqueRendererMethod as ::std::cmp::PartialEq< - ::bevy_pbr::OpaqueRendererMethod, + <::bevy_pbr::ScreenSpaceAmbientOcclusion as ::std::cmp::PartialEq< + ::bevy_pbr::ScreenSpaceAmbientOcclusion, >>::eq(&_self, &other) .into(); output @@ -1059,7 +929,35 @@ pub(crate) fn register_opaque_renderer_method_functions(world: &mut World) { let mut registry = registry.write(); registry .register_type_data::< - ::bevy_pbr::OpaqueRendererMethod, + ::bevy_pbr::ScreenSpaceAmbientOcclusion, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_screen_space_transmission_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_pbr::ScreenSpaceTransmission, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_pbr::ScreenSpaceTransmission>| { + let output: V<::bevy_pbr::ScreenSpaceTransmission> = { + { + let output: V<::bevy_pbr::ScreenSpaceTransmission> = + <::bevy_pbr::ScreenSpaceTransmission as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_pbr::ScreenSpaceTransmission, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } @@ -1168,60 +1066,41 @@ pub(crate) fn register_material_bind_group_index_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_pbr::MaterialBindGroupIndex, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_pbr::MaterialBindGroupIndex>| { - let output: () = { - { - let output: () = <::bevy_pbr::MaterialBindGroupIndex as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_pbr::MaterialBindGroupIndex>| { - let output: V<::bevy_pbr::MaterialBindGroupIndex> = { - { - let output: V<::bevy_pbr::MaterialBindGroupIndex> = <::bevy_pbr::MaterialBindGroupIndex as ::std::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_pbr::MaterialBindGroupIndex>| { + let output: V<::bevy_pbr::MaterialBindGroupIndex> = { + { + let output: V<::bevy_pbr::MaterialBindGroupIndex> = + <::bevy_pbr::MaterialBindGroupIndex as ::std::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_pbr::MaterialBindGroupIndex>, - other: R<::bevy_pbr::MaterialBindGroupIndex>| - { - let output: bool = { - { - let output: bool = <::bevy_pbr::MaterialBindGroupIndex as ::std::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_pbr::MaterialBindGroupIndex>, + other: R<::bevy_pbr::MaterialBindGroupIndex>| { + let output: bool = { + { + let output: bool = + <::bevy_pbr::MaterialBindGroupIndex as ::std::cmp::PartialEq< ::bevy_pbr::MaterialBindGroupIndex, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -1230,88 +1109,10 @@ pub(crate) fn register_material_bind_group_index_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_uv_channel_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_pbr::UvChannel, - >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_pbr::UvChannel>| { - let output: () = { - { - let output: () = <::bevy_pbr::UvChannel as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_pbr::UvChannel>| { - let output: V<::bevy_pbr::UvChannel> = { - { - let output: V<::bevy_pbr::UvChannel> = <::bevy_pbr::UvChannel as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - |_self: R<::bevy_pbr::UvChannel>, other: R<::bevy_pbr::UvChannel>| { - let output: bool = { - { - let output: bool = <::bevy_pbr::UvChannel as ::std::cmp::PartialEq< - ::bevy_pbr::UvChannel, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::<::bevy_pbr::UvChannel, bevy_mod_scripting_bindings::MarkAsGenerated>( - ); -} pub(crate) fn register_screen_space_ambient_occlusion_quality_level_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_pbr::ScreenSpaceAmbientOcclusionQualityLevel, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_pbr::ScreenSpaceAmbientOcclusionQualityLevel>| { - let output: () = { - { - let output: () = <::bevy_pbr::ScreenSpaceAmbientOcclusionQualityLevel as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_pbr::ScreenSpaceAmbientOcclusionQualityLevel>| { @@ -1359,35 +1160,112 @@ pub(crate) fn register_screen_space_ambient_occlusion_quality_level_functions(wo bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_screen_space_reflections_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_pbr::ScreenSpaceReflections, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_pbr::ScreenSpaceReflections>| { + let output: V<::bevy_pbr::ScreenSpaceReflections> = { + { + let output: V<::bevy_pbr::ScreenSpaceReflections> = + <::bevy_pbr::ScreenSpaceReflections as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_pbr::ScreenSpaceReflections, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_screen_space_transmission_quality_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_pbr::ScreenSpaceTransmissionQuality, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_pbr::ScreenSpaceTransmissionQuality>| { + let output: V<::bevy_pbr::ScreenSpaceTransmissionQuality> = { + { + let output: V<::bevy_pbr::ScreenSpaceTransmissionQuality> = + <::bevy_pbr::ScreenSpaceTransmissionQuality as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_pbr::ScreenSpaceTransmissionQuality>, + other: R<::bevy_pbr::ScreenSpaceTransmissionQuality>| { + let output: bool = { + { + let output: bool = + <::bevy_pbr::ScreenSpaceTransmissionQuality as ::std::cmp::PartialEq< + ::bevy_pbr::ScreenSpaceTransmissionQuality, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_pbr::ScreenSpaceTransmissionQuality, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} impl Plugin for BevyPbrScriptingPlugin { fn build(&self, app: &mut App) { let mut world = app.world_mut(); + register_contact_shadows_functions(&mut world); register_distance_fog_functions(&mut world); register_fog_falloff_functions(&mut world); register_parallax_mapping_method_functions(&mut world); register_standard_material_functions(&mut world); - register_screen_space_ambient_occlusion_functions(&mut world); - register_screen_space_reflections_functions(&mut world); register_default_opaque_renderer_method_functions(&mut world); register_wireframe_material_functions(&mut world); register_wireframe_config_functions(&mut world); + register_wireframe_line_width_functions(&mut world); + register_wireframe_topology_functions(&mut world); register_wireframe_functions(&mut world); register_wireframe_color_functions(&mut world); register_no_wireframe_functions(&mut world); register_mesh_3_d_wireframe_functions(&mut world); - register_gpu_atmosphere_settings_functions(&mut world); register_atmosphere_settings_functions(&mut world); + register_gpu_atmosphere_settings_functions(&mut world); register_atmosphere_mode_functions(&mut world); - register_render_visible_mesh_entities_functions(&mut world); - register_render_cubemap_visible_entities_functions(&mut world); - register_render_cascades_visible_entities_functions(&mut world); register_forward_decal_functions(&mut world); - register_opaque_renderer_method_functions(&mut world); + register_screen_space_ambient_occlusion_functions(&mut world); + register_screen_space_transmission_functions(&mut world); register_lightmap_functions(&mut world); register_material_binding_id_functions(&mut world); register_material_bind_group_slot_functions(&mut world); register_material_bind_group_index_functions(&mut world); - register_uv_channel_functions(&mut world); register_screen_space_ambient_occlusion_quality_level_functions(&mut world); + register_screen_space_reflections_functions(&mut world); + register_screen_space_transmission_quality_functions(&mut world); } } diff --git a/crates/bindings/bevy_picking_bms_bindings/Cargo.toml b/crates/bindings/bevy_picking_bms_bindings/Cargo.toml index 78880941e5..7aba1a9baa 100644 --- a/crates/bindings/bevy_picking_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_picking_bms_bindings/Cargo.toml @@ -20,35 +20,35 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_picking = { version = "0.18.1", features = ["mesh_picking"], default-features = true} +bevy_picking = { version = "0.19.0", features = ["mesh_picking"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_camera = { version = "^0.18.0", features = [], default-features = true} +bevy_camera = { version = "^0.19.0", features = [], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_input = { version = "^0.18.0", features = ["bevy_reflect", "gamepad", "gestures", "keyboard", "mouse", "smol_str", "std", "touch"], default-features = true} +bevy_input = { version = "^0.19.0", features = ["bevy_reflect", "gamepad", "gestures", "keyboard", "mouse", "smol_str", "std", "touch"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_mesh = { version = "^0.18.0", features = ["bevy_mikktspace", "morph"], default-features = true} +bevy_mesh = { version = "^0.19.0", features = ["bevy_mikktspace", "morph"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_time = { version = "^0.18.0", features = ["bevy_reflect", "std"], default-features = true} +bevy_time = { version = "^0.19.0", features = ["bevy_reflect", "std"], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} -bevy_window = { version = "^0.18.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} +bevy_window = { version = "^0.19.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} crossbeam-channel = { version = "^0.5", features = [], default-features = true} -uuid = { version = "^1.13.1", features = [], default-features = true} +uuid = { version = "^1.21.0", features = [], default-features = true} diff --git a/crates/bindings/bevy_picking_bms_bindings/src/lib.rs b/crates/bindings/bevy_picking_bms_bindings/src/lib.rs index 091a0c7d3e..1919567e90 100644 --- a/crates/bindings/bevy_picking_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_picking_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -162,60 +163,43 @@ pub(crate) fn register_pointer_button_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_picking::pointer::PointerButton, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_picking::pointer::PointerButton>| { - let output: () = { - { - let output: () = <::bevy_picking::pointer::PointerButton as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_picking::pointer::PointerButton>| { - let output: V<::bevy_picking::pointer::PointerButton> = { - { - let output: V<::bevy_picking::pointer::PointerButton> = <::bevy_picking::pointer::PointerButton as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_picking::pointer::PointerButton>, - other: R<::bevy_picking::pointer::PointerButton>| - { - let output: bool = { - { - let output: bool = <::bevy_picking::pointer::PointerButton as ::std::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_picking::pointer::PointerButton>| { + let output: V<::bevy_picking::pointer::PointerButton> = { + { + let output: V<::bevy_picking::pointer::PointerButton> = + <::bevy_picking::pointer::PointerButton as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_picking::pointer::PointerButton>, + other: R<::bevy_picking::pointer::PointerButton>| { + let output: bool = { + { + let output: bool = + <::bevy_picking::pointer::PointerButton as ::std::cmp::PartialEq< ::bevy_picking::pointer::PointerButton, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -228,23 +212,6 @@ pub(crate) fn register_pickable_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_picking::Pickable, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_picking::Pickable>| { - let output: () = { - { - let output: () = <::bevy_picking::Pickable as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_picking::Pickable>| { @@ -1033,6 +1000,96 @@ pub(crate) fn register_over_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_leave_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_picking::events::Leave, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_picking::events::Leave>| { + let output: V<::bevy_picking::events::Leave> = { + { + let output: V<::bevy_picking::events::Leave> = + <::bevy_picking::events::Leave as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_picking::events::Leave>, other: R<::bevy_picking::events::Leave>| { + let output: bool = { + { + let output: bool = <::bevy_picking::events::Leave as ::std::cmp::PartialEq< + ::bevy_picking::events::Leave, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_picking::events::Leave, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_enter_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_picking::events::Enter, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_picking::events::Enter>| { + let output: V<::bevy_picking::events::Enter> = { + { + let output: V<::bevy_picking::events::Enter> = + <::bevy_picking::events::Enter as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_picking::events::Enter>, other: R<::bevy_picking::events::Enter>| { + let output: bool = { + { + let output: bool = <::bevy_picking::events::Enter as ::std::cmp::PartialEq< + ::bevy_picking::events::Enter, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_picking::events::Enter, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_scroll_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_picking::events::Scroll, @@ -1128,128 +1185,98 @@ pub(crate) fn register_pointer_id_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_picking::pointer::PointerId, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_picking::pointer::PointerId>| { - let output: () = { - { - let output: () = <::bevy_picking::pointer::PointerId as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_picking::pointer::PointerId>| { - let output: V<::bevy_picking::pointer::PointerId> = { - { - let output: V<::bevy_picking::pointer::PointerId> = <::bevy_picking::pointer::PointerId as ::std::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_picking::pointer::PointerId>| { + let output: V<::bevy_picking::pointer::PointerId> = { + { + let output: V<::bevy_picking::pointer::PointerId> = + <::bevy_picking::pointer::PointerId as ::std::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_picking::pointer::PointerId>, - other: R<::bevy_picking::pointer::PointerId>| - { - let output: bool = { - { - let output: bool = <::bevy_picking::pointer::PointerId as ::std::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_picking::pointer::PointerId>, + other: R<::bevy_picking::pointer::PointerId>| { + let output: bool = { + { + let output: bool = + <::bevy_picking::pointer::PointerId as ::std::cmp::PartialEq< ::bevy_picking::pointer::PointerId, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "get_touch_id", - |_self: R<::bevy_picking::pointer::PointerId>| { - let output: ::std::option::Option = { - { - let output: ::std::option::Option = ::bevy_picking::pointer::PointerId::get_touch_id( - &_self, - ) - .into(); - output - } - }; - output - }, - " Returns the touch id if the pointer is a touch input.", - &["_self"], - ) - .register_documented( - "is_custom", - |_self: R<::bevy_picking::pointer::PointerId>| { - let output: bool = { - { - let output: bool = ::bevy_picking::pointer::PointerId::is_custom( - &_self, - ) - .into(); - output - } - }; - output - }, - " Returns true if the pointer is a custom input.", - &["_self"], - ) - .register_documented( - "is_mouse", - |_self: R<::bevy_picking::pointer::PointerId>| { - let output: bool = { - { - let output: bool = ::bevy_picking::pointer::PointerId::is_mouse( - &_self, - ) - .into(); - output - } - }; - output - }, - " Returns true if the pointer is the mouse.", - &["_self"], - ) - .register_documented( - "is_touch", - |_self: R<::bevy_picking::pointer::PointerId>| { - let output: bool = { - { - let output: bool = ::bevy_picking::pointer::PointerId::is_touch( - &_self, - ) - .into(); - output - } - }; - output - }, - " Returns true if the pointer is a touch input.", - &["_self"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "get_touch_id", + |_self: R<::bevy_picking::pointer::PointerId>| { + let output: ::std::option::Option = { + { + let output: ::std::option::Option = + ::bevy_picking::pointer::PointerId::get_touch_id(&_self).into(); + output + } + }; + output + }, + " Returns the touch id if the pointer is a touch input.", + &["_self"], + ) + .register_documented( + "is_custom", + |_self: R<::bevy_picking::pointer::PointerId>| { + let output: bool = { + { + let output: bool = ::bevy_picking::pointer::PointerId::is_custom(&_self).into(); + output + } + }; + output + }, + " Returns true if the pointer is a custom input.", + &["_self"], + ) + .register_documented( + "is_mouse", + |_self: R<::bevy_picking::pointer::PointerId>| { + let output: bool = { + { + let output: bool = ::bevy_picking::pointer::PointerId::is_mouse(&_self).into(); + output + } + }; + output + }, + " Returns true if the pointer is the mouse.", + &["_self"], + ) + .register_documented( + "is_touch", + |_self: R<::bevy_picking::pointer::PointerId>| { + let output: bool = { + { + let output: bool = ::bevy_picking::pointer::PointerId::is_touch(&_self).into(); + output + } + }; + output + }, + " Returns true if the pointer is a touch input.", + &["_self"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -1326,81 +1353,60 @@ pub(crate) fn register_ray_id_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_picking::backend::ray::RayId, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_picking::backend::ray::RayId>| { - let output: () = { - { - let output: () = <::bevy_picking::backend::ray::RayId as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_picking::backend::ray::RayId>| { - let output: V<::bevy_picking::backend::ray::RayId> = { - { - let output: V<::bevy_picking::backend::ray::RayId> = <::bevy_picking::backend::ray::RayId as ::std::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_picking::backend::ray::RayId>| { + let output: V<::bevy_picking::backend::ray::RayId> = { + { + let output: V<::bevy_picking::backend::ray::RayId> = + <::bevy_picking::backend::ray::RayId as ::std::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_picking::backend::ray::RayId>, - other: R<::bevy_picking::backend::ray::RayId>| - { - let output: bool = { - { - let output: bool = <::bevy_picking::backend::ray::RayId as ::std::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_picking::backend::ray::RayId>, + other: R<::bevy_picking::backend::ray::RayId>| { + let output: bool = { + { + let output: bool = + <::bevy_picking::backend::ray::RayId as ::std::cmp::PartialEq< ::bevy_picking::backend::ray::RayId, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "new", - | - camera: V<::bevy_ecs::entity::Entity>, - pointer: V<::bevy_picking::pointer::PointerId>| - { - let output: V<::bevy_picking::backend::ray::RayId> = { - { - let output: V<::bevy_picking::backend::ray::RayId> = ::bevy_picking::backend::ray::RayId::new( - camera.into_inner(), - pointer.into_inner(), - ) - .into(); - output - } - }; - output - }, - " Construct a [`RayId`].", - &["camera", "pointer"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "new", + |camera: V<::bevy_ecs::entity::Entity>, pointer: V<::bevy_picking::pointer::PointerId>| { + let output: V<::bevy_picking::backend::ray::RayId> = { + { + let output: V<::bevy_picking::backend::ray::RayId> = + ::bevy_picking::backend::ray::RayId::new( + camera.into_inner(), + pointer.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Construct a [`RayId`].", + &["camera", "pointer"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -1566,128 +1572,103 @@ pub(crate) fn register_pointer_press_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_picking::pointer::PointerPress, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_picking::pointer::PointerPress>| { - let output: () = { - { - let output: () = <::bevy_picking::pointer::PointerPress as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_picking::pointer::PointerPress>| { - let output: V<::bevy_picking::pointer::PointerPress> = { - { - let output: V<::bevy_picking::pointer::PointerPress> = <::bevy_picking::pointer::PointerPress as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_picking::pointer::PointerPress>, - other: R<::bevy_picking::pointer::PointerPress>| - { - let output: bool = { - { - let output: bool = <::bevy_picking::pointer::PointerPress as ::std::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_picking::pointer::PointerPress>| { + let output: V<::bevy_picking::pointer::PointerPress> = { + { + let output: V<::bevy_picking::pointer::PointerPress> = + <::bevy_picking::pointer::PointerPress as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_picking::pointer::PointerPress>, + other: R<::bevy_picking::pointer::PointerPress>| { + let output: bool = { + { + let output: bool = + <::bevy_picking::pointer::PointerPress as ::std::cmp::PartialEq< ::bevy_picking::pointer::PointerPress, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "is_any_pressed", - |_self: R<::bevy_picking::pointer::PointerPress>| { - let output: bool = { - { - let output: bool = ::bevy_picking::pointer::PointerPress::is_any_pressed( - &_self, - ) - .into(); - output - } - }; - output - }, - " Returns true if any pointer button is pressed.", - &["_self"], - ) - .register_documented( - "is_middle_pressed", - |_self: R<::bevy_picking::pointer::PointerPress>| { - let output: bool = { - { - let output: bool = ::bevy_picking::pointer::PointerPress::is_middle_pressed( - &_self, - ) - .into(); - output - } - }; - output - }, - " Returns true if the middle (tertiary) pointer button is pressed.", - &["_self"], - ) - .register_documented( - "is_primary_pressed", - |_self: R<::bevy_picking::pointer::PointerPress>| { - let output: bool = { - { - let output: bool = ::bevy_picking::pointer::PointerPress::is_primary_pressed( - &_self, - ) - .into(); - output - } - }; - output - }, - " Returns true if the primary pointer button is pressed.", - &["_self"], - ) - .register_documented( - "is_secondary_pressed", - |_self: R<::bevy_picking::pointer::PointerPress>| { - let output: bool = { - { - let output: bool = ::bevy_picking::pointer::PointerPress::is_secondary_pressed( - &_self, - ) - .into(); - output - } - }; - output - }, - " Returns true if the secondary pointer button is pressed.", - &["_self"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "is_any_pressed", + |_self: R<::bevy_picking::pointer::PointerPress>| { + let output: bool = { + { + let output: bool = + ::bevy_picking::pointer::PointerPress::is_any_pressed(&_self).into(); + output + } + }; + output + }, + " Returns true if any pointer button is pressed.", + &["_self"], + ) + .register_documented( + "is_middle_pressed", + |_self: R<::bevy_picking::pointer::PointerPress>| { + let output: bool = { + { + let output: bool = + ::bevy_picking::pointer::PointerPress::is_middle_pressed(&_self).into(); + output + } + }; + output + }, + " Returns true if the middle (tertiary) pointer button is pressed.", + &["_self"], + ) + .register_documented( + "is_primary_pressed", + |_self: R<::bevy_picking::pointer::PointerPress>| { + let output: bool = { + { + let output: bool = + ::bevy_picking::pointer::PointerPress::is_primary_pressed(&_self).into(); + output + } + }; + output + }, + " Returns true if the primary pointer button is pressed.", + &["_self"], + ) + .register_documented( + "is_secondary_pressed", + |_self: R<::bevy_picking::pointer::PointerPress>| { + let output: bool = { + { + let output: bool = + ::bevy_picking::pointer::PointerPress::is_secondary_pressed(&_self).into(); + output + } + }; + output + }, + " Returns true if the secondary pointer button is pressed.", + &["_self"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -1700,60 +1681,43 @@ pub(crate) fn register_picking_interaction_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_picking::hover::PickingInteraction, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_picking::hover::PickingInteraction>| { - let output: () = { - { - let output: () = <::bevy_picking::hover::PickingInteraction as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_picking::hover::PickingInteraction>| { - let output: V<::bevy_picking::hover::PickingInteraction> = { - { - let output: V<::bevy_picking::hover::PickingInteraction> = <::bevy_picking::hover::PickingInteraction as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_picking::hover::PickingInteraction>, - other: R<::bevy_picking::hover::PickingInteraction>| - { - let output: bool = { - { - let output: bool = <::bevy_picking::hover::PickingInteraction as ::std::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_picking::hover::PickingInteraction>| { + let output: V<::bevy_picking::hover::PickingInteraction> = { + { + let output: V<::bevy_picking::hover::PickingInteraction> = + <::bevy_picking::hover::PickingInteraction as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_picking::hover::PickingInteraction>, + other: R<::bevy_picking::hover::PickingInteraction>| { + let output: bool = { + { + let output: bool = + <::bevy_picking::hover::PickingInteraction as ::std::cmp::PartialEq< ::bevy_picking::hover::PickingInteraction, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -1766,75 +1730,53 @@ pub(crate) fn register_hovered_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_picking::hover::Hovered, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_picking::hover::Hovered>| { - let output: () = { - { - let output: () = <::bevy_picking::hover::Hovered as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_picking::hover::Hovered>| { - let output: V<::bevy_picking::hover::Hovered> = { - { - let output: V<::bevy_picking::hover::Hovered> = <::bevy_picking::hover::Hovered as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_picking::hover::Hovered>, - other: R<::bevy_picking::hover::Hovered>| - { - let output: bool = { - { - let output: bool = <::bevy_picking::hover::Hovered as ::std::cmp::PartialEq< - ::bevy_picking::hover::Hovered, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "get", - |_self: R<::bevy_picking::hover::Hovered>| { - let output: bool = { - { - let output: bool = ::bevy_picking::hover::Hovered::get(&_self) + .register_documented( + "clone", + |_self: R<::bevy_picking::hover::Hovered>| { + let output: V<::bevy_picking::hover::Hovered> = { + { + let output: V<::bevy_picking::hover::Hovered> = + <::bevy_picking::hover::Hovered as ::std::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - " Get whether the entity is currently hovered.", - &["_self"], - ); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_picking::hover::Hovered>, other: R<::bevy_picking::hover::Hovered>| { + let output: bool = { + { + let output: bool = <::bevy_picking::hover::Hovered as ::std::cmp::PartialEq< + ::bevy_picking::hover::Hovered, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "get", + |_self: R<::bevy_picking::hover::Hovered>| { + let output: bool = { + { + let output: bool = ::bevy_picking::hover::Hovered::get(&_self).into(); + output + } + }; + output + }, + " Get whether the entity is currently hovered.", + &["_self"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -1847,77 +1789,57 @@ pub(crate) fn register_directly_hovered_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_picking::hover::DirectlyHovered, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_picking::hover::DirectlyHovered>| { - let output: () = { - { - let output: () = <::bevy_picking::hover::DirectlyHovered as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_picking::hover::DirectlyHovered>| { - let output: V<::bevy_picking::hover::DirectlyHovered> = { - { - let output: V<::bevy_picking::hover::DirectlyHovered> = <::bevy_picking::hover::DirectlyHovered as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_picking::hover::DirectlyHovered>, - other: R<::bevy_picking::hover::DirectlyHovered>| - { - let output: bool = { - { - let output: bool = <::bevy_picking::hover::DirectlyHovered as ::std::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_picking::hover::DirectlyHovered>| { + let output: V<::bevy_picking::hover::DirectlyHovered> = { + { + let output: V<::bevy_picking::hover::DirectlyHovered> = + <::bevy_picking::hover::DirectlyHovered as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_picking::hover::DirectlyHovered>, + other: R<::bevy_picking::hover::DirectlyHovered>| { + let output: bool = { + { + let output: bool = + <::bevy_picking::hover::DirectlyHovered as ::std::cmp::PartialEq< ::bevy_picking::hover::DirectlyHovered, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "get", - |_self: R<::bevy_picking::hover::DirectlyHovered>| { - let output: bool = { - { - let output: bool = ::bevy_picking::hover::DirectlyHovered::get( - &_self, - ) - .into(); - output - } - }; - output - }, - " Get whether the entity is currently hovered.", - &["_self"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "get", + |_self: R<::bevy_picking::hover::DirectlyHovered>| { + let output: bool = { + { + let output: bool = ::bevy_picking::hover::DirectlyHovered::get(&_self).into(); + output + } + }; + output + }, + " Get whether the entity is currently hovered.", + &["_self"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -2052,60 +1974,43 @@ pub(crate) fn register_press_direction_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_picking::pointer::PressDirection, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_picking::pointer::PressDirection>| { - let output: () = { - { - let output: () = <::bevy_picking::pointer::PressDirection as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_picking::pointer::PressDirection>| { - let output: V<::bevy_picking::pointer::PressDirection> = { - { - let output: V<::bevy_picking::pointer::PressDirection> = <::bevy_picking::pointer::PressDirection as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_picking::pointer::PressDirection>, - other: R<::bevy_picking::pointer::PressDirection>| - { - let output: bool = { - { - let output: bool = <::bevy_picking::pointer::PressDirection as ::std::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_picking::pointer::PressDirection>| { + let output: V<::bevy_picking::pointer::PressDirection> = { + { + let output: V<::bevy_picking::pointer::PressDirection> = + <::bevy_picking::pointer::PressDirection as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_picking::pointer::PressDirection>, + other: R<::bevy_picking::pointer::PressDirection>| { + let output: bool = { + { + let output: bool = + <::bevy_picking::pointer::PressDirection as ::std::cmp::PartialEq< ::bevy_picking::pointer::PressDirection, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -2140,6 +2045,8 @@ impl Plugin for BevyPickingScriptingPlugin { register_move_functions(&mut world); register_out_functions(&mut world); register_over_functions(&mut world); + register_leave_functions(&mut world); + register_enter_functions(&mut world); register_scroll_functions(&mut world); register_hit_data_functions(&mut world); register_pointer_id_functions(&mut world); diff --git a/crates/bindings/bevy_post_process_bms_bindings/Cargo.toml b/crates/bindings/bevy_post_process_bms_bindings/Cargo.toml index 7e36a25114..33a35027aa 100644 --- a/crates/bindings/bevy_post_process_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_post_process_bms_bindings/Cargo.toml @@ -20,43 +20,33 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_post_process = { version = "0.18.1", features = [], default-features = true} +bevy_post_process = { version = "0.19.0", features = ["webgl"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_camera = { version = "^0.18.0", features = [], default-features = true} +bevy_camera = { version = "^0.19.0", features = [], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_core_pipeline = { version = "^0.18.0", features = ["tonemapping_luts", "webgl"], default-features = true} +bevy_core_pipeline = { version = "^0.19.0", features = ["tonemapping_luts", "webgl"], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_image = { version = "^0.18.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} +bevy_image = { version = "^0.19.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_render = { version = "^0.18.0", features = ["morph", "multi_threaded", "webgl"], default-features = true} +bevy_render = { version = "^0.19.0", features = ["morph", "multi_threaded", "reflect_auto_register", "webgl"], default-features = true} -bevy_shader = { version = "^0.18.0", features = [], default-features = true} +bevy_shader = { version = "^0.19.0", features = [], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} - -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} - -bevy_window = { version = "^0.18.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} - -bitflags = { version = "^2.3", features = [], default-features = true} - -nonmax = { version = "^0.5", features = [], default-features = true} - -radsort = { version = "^0.1", features = [], default-features = true} +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} diff --git a/crates/bindings/bevy_post_process_bms_bindings/src/lib.rs b/crates/bindings/bevy_post_process_bms_bindings/src/lib.rs index 0a1b830e5f..3488f4a758 100644 --- a/crates/bindings/bevy_post_process_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_post_process_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -112,23 +113,6 @@ pub(crate) fn register_bloom_composite_mode_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_post_process::bloom::BloomCompositeMode, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_post_process::bloom::BloomCompositeMode>| { - let output: () = { - { - let output: () = <::bevy_post_process::bloom::BloomCompositeMode as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_post_process::bloom::BloomCompositeMode>| { @@ -314,6 +298,66 @@ pub(crate) fn register_chromatic_aberration_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_lens_distortion_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_post_process::effect_stack::LensDistortion, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_post_process::effect_stack::LensDistortion>| { + let output: V<::bevy_post_process::effect_stack::LensDistortion> = { + { + let output: V< + ::bevy_post_process::effect_stack::LensDistortion, + > = <::bevy_post_process::effect_stack::LensDistortion as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_post_process::effect_stack::LensDistortion, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_vignette_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_post_process::effect_stack::Vignette, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_post_process::effect_stack::Vignette>| { + let output: V<::bevy_post_process::effect_stack::Vignette> = { + { + let output: V<::bevy_post_process::effect_stack::Vignette> = <::bevy_post_process::effect_stack::Vignette as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_post_process::effect_stack::Vignette, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_motion_blur_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_post_process::motion_blur::MotionBlur, @@ -354,6 +398,8 @@ impl Plugin for BevyPostProcessScriptingPlugin { register_depth_of_field_functions(&mut world); register_depth_of_field_mode_functions(&mut world); register_chromatic_aberration_functions(&mut world); + register_lens_distortion_functions(&mut world); + register_vignette_functions(&mut world); register_motion_blur_functions(&mut world); } } diff --git a/crates/bindings/bevy_reflect_bms_bindings/Cargo.toml b/crates/bindings/bevy_reflect_bms_bindings/Cargo.toml index 06529320c4..f637e5e63d 100644 --- a/crates/bindings/bevy_reflect_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_reflect_bms_bindings/Cargo.toml @@ -20,22 +20,22 @@ bevy_app = { workspace = true, features = ["std"] } bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_reflect = { version = "0.18.1", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} assert_type_match = { version = "^0.1.1", features = [], default-features = true} -bevy_platform = { version = "^0.18.0", features = ["alloc", "serialize", "std"], default-features = true} +bevy_platform = { version = "^0.19.0", features = ["alloc", "futures-lite", "serialize", "std"], default-features = true} -bevy_ptr = { version = "^0.18.0", features = [], default-features = true} +bevy_ptr = { version = "^0.19.0", features = [], default-features = true} -bevy_reflect_derive = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory"], default-features = true} +bevy_reflect_derive = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory"], default-features = true} downcast-rs = { version = "^2", features = ["std"], default-features = false} erased-serde = { version = "^0.4", features = ["std"], default-features = false} -glam = { version = "^0.30.7", features = ["std"], default-features = false} +glam = { version = "^0.32.0", features = ["std"], default-features = false} inventory = { version = "^0.3", features = [], default-features = true} @@ -43,10 +43,10 @@ serde = { version = "^1", features = ["std"], default-features = false} smol_str = { version = "^0.2.0", features = ["std"], default-features = false} -uuid = { version = "^1.13.1", features = ["std"], default-features = false} +uuid = { version = "^1.21.0", features = ["std"], default-features = false} variadics_please = { version = "^1.1", features = [], default-features = true} -wgpu-types = { version = "^27", features = ["std"], default-features = false} +wgpu-types = { version = "^29.0.3", features = ["std"], default-features = false} diff --git a/crates/bindings/bevy_reflect_bms_bindings/src/lib.rs b/crates/bindings/bevy_reflect_bms_bindings/src/lib.rs index 8380812c6d..164d6b148d 100644 --- a/crates/bindings/bevy_reflect_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_reflect_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -12,17 +13,17 @@ use bevy_mod_scripting_bindings::{ }; use bevy_mod_scripting_derive::script_bindings; pub struct BevyReflectScriptingPlugin; -pub(crate) fn register_atomic_bool_functions(world: &mut World) { +pub(crate) fn register_range_full_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::core::sync::atomic::AtomicBool, + ::core::ops::RangeFull, >::new(world) .register_documented( - "into_inner", - |_self: V<::core::sync::atomic::AtomicBool>| { - let output: bool = { + "clone", + |_self: R<::core::ops::RangeFull>| { + let output: V<::core::ops::RangeFull> = { { - let output: bool = ::core::sync::atomic::AtomicBool::into_inner( - _self.into_inner(), + let output: V<::core::ops::RangeFull> = <::core::ops::RangeFull as ::core::clone::Clone>::clone( + &_self, ) .into(); output @@ -30,45 +31,86 @@ pub(crate) fn register_atomic_bool_functions(world: &mut World) { }; output }, - " Consumes the atomic and returns the contained value.\n This is safe because passing `self` by value guarantees that no other threads are\n concurrently accessing the atomic data.\n # Examples\n ```\n use std::sync::atomic::AtomicBool;\n let some_bool = AtomicBool::new(true);\n assert_eq!(some_bool.into_inner(), true);\n ```", + "", &["_self"], ) .register_documented( - "new", - |v: bool| { - let output: V<::core::sync::atomic::AtomicBool> = { + "eq", + |_self: R<::core::ops::RangeFull>, other: R<::core::ops::RangeFull>| { + let output: bool = { { - let output: V<::core::sync::atomic::AtomicBool> = ::core::sync::atomic::AtomicBool::new( - v, - ) + let output: bool = <::core::ops::RangeFull as ::core::cmp::PartialEq< + ::core::ops::RangeFull, + >>::eq(&_self, &other) .into(); output } }; output }, - " Creates a new `AtomicBool`.\n # Examples\n ```\n use std::sync::atomic::AtomicBool;\n let atomic_true = AtomicBool::new(true);\n let atomic_false = AtomicBool::new(false);\n ```", - &["v"], + "", + &["_self", "other"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry - .register_type_data::< - ::core::sync::atomic::AtomicBool, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); + .register_type_data::<::core::ops::RangeFull, bevy_mod_scripting_bindings::MarkAsGenerated>( + ); +} +pub(crate) fn register_type_id_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::core::any::TypeId>::new( + world, + ) + .register_documented( + "clone", + |_self: R<::core::any::TypeId>| { + let output: V<::core::any::TypeId> = { + { + let output: V<::core::any::TypeId> = + <::core::any::TypeId as ::core::clone::Clone>::clone(&_self).into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::core::any::TypeId>, other: R<::core::any::TypeId>| { + let output: bool = { + { + let output: bool = <::core::any::TypeId as ::core::cmp::PartialEq< + ::core::any::TypeId, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::core::any::TypeId, bevy_mod_scripting_bindings::MarkAsGenerated>(); } -pub(crate) fn register_atomic_i_8_functions(world: &mut World) { +pub(crate) fn register_quat_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::core::sync::atomic::AtomicI8, + ::glam::Quat, >::new(world) .register_documented( - "into_inner", - |_self: V<::core::sync::atomic::AtomicI8>| { - let output: i8 = { + "abs_diff_eq", + |_self: V<::glam::Quat>, rhs: V<::glam::Quat>, max_abs_diff: f32| { + let output: bool = { { - let output: i8 = ::core::sync::atomic::AtomicI8::into_inner( + let output: bool = ::glam::Quat::abs_diff_eq( _self.into_inner(), + rhs.into_inner(), + max_abs_diff, ) .into(); output @@ -76,62 +118,51 @@ pub(crate) fn register_atomic_i_8_functions(world: &mut World) { }; output }, - " Consumes the atomic and returns the contained value.\n This is safe because passing `self` by value guarantees that no other threads are\n concurrently accessing the atomic data.\n # Examples\n ```\nuse std::sync::atomic::AtomicI8;\nlet some_var = AtomicI8::new(5);\n assert_eq!(some_var.into_inner(), 5);\n ```", - &["_self"], + " Returns true if the absolute difference of all elements between `self` and `rhs`\n is less than or equal to `max_abs_diff`.\n This can be used to compare if two quaternions contain similar elements. It works\n best when comparing with a known value. The `max_abs_diff` that should be used used\n depends on the values being compared against.\n For more see\n [comparing floating point numbers](https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/).", + &["_self", "rhs", "max_abs_diff"], ) .register_documented( - "new", - |v: i8| { - let output: V<::core::sync::atomic::AtomicI8> = { + "add", + |_self: V<::glam::Quat>, rhs: R<::glam::Quat>| { + let output: V<::glam::Quat> = { { - let output: V<::core::sync::atomic::AtomicI8> = ::core::sync::atomic::AtomicI8::new( - v, - ) + let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Add< + &::glam::Quat, + >>::add(_self.into_inner(), &rhs) .into(); output } }; output }, - " Creates a new atomic integer.\n # Examples\n ```\nuse std::sync::atomic::AtomicI8;\nlet atomic_forty_two = AtomicI8::new(42);\n ```", - &["v"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::core::sync::atomic::AtomicI8, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_atomic_i_16_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::core::sync::atomic::AtomicI16, - >::new(world) + "", + &["_self", "rhs"], + ) .register_documented( - "into_inner", - |_self: V<::core::sync::atomic::AtomicI16>| { - let output: i16 = { + "add", + |_self: V<::glam::Quat>, rhs: V<::glam::Quat>| { + let output: V<::glam::Quat> = { { - let output: i16 = ::core::sync::atomic::AtomicI16::into_inner( - _self.into_inner(), - ) + let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Add< + ::glam::Quat, + >>::add(_self.into_inner(), rhs.into_inner()) .into(); output } }; output }, - " Consumes the atomic and returns the contained value.\n This is safe because passing `self` by value guarantees that no other threads are\n concurrently accessing the atomic data.\n # Examples\n ```\nuse std::sync::atomic::AtomicI16;\nlet some_var = AtomicI16::new(5);\n assert_eq!(some_var.into_inner(), 5);\n ```", - &["_self"], + " Adds two quaternions.\n The sum is not guaranteed to be normalized.\n Note that addition is not the same as combining the rotations represented by the\n two quaternions! That corresponds to multiplication.", + &["_self", "rhs"], ) .register_documented( - "new", - |v: i16| { - let output: V<::core::sync::atomic::AtomicI16> = { + "angle_between", + |_self: V<::glam::Quat>, rhs: V<::glam::Quat>| { + let output: f32 = { { - let output: V<::core::sync::atomic::AtomicI16> = ::core::sync::atomic::AtomicI16::new( - v, + let output: f32 = ::glam::Quat::angle_between( + _self.into_inner(), + rhs.into_inner(), ) .into(); output @@ -139,27 +170,15 @@ pub(crate) fn register_atomic_i_16_functions(world: &mut World) { }; output }, - " Creates a new atomic integer.\n # Examples\n ```\nuse std::sync::atomic::AtomicI16;\nlet atomic_forty_two = AtomicI16::new(42);\n ```", - &["v"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::core::sync::atomic::AtomicI16, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_atomic_i_32_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::core::sync::atomic::AtomicI32, - >::new(world) + " Returns the angle (in radians) for the minimal rotation\n for transforming this quaternion into another.\n Both quaternions must be normalized.\n # Panics\n Will panic if `self` or `rhs` are not normalized when `glam_assert` is enabled.", + &["_self", "rhs"], + ) .register_documented( - "into_inner", - |_self: V<::core::sync::atomic::AtomicI32>| { - let output: i32 = { + "as_dquat", + |_self: V<::glam::Quat>| { + let output: V<::glam::DQuat> = { { - let output: i32 = ::core::sync::atomic::AtomicI32::into_inner( + let output: V<::glam::DQuat> = ::glam::Quat::as_dquat( _self.into_inner(), ) .into(); @@ -168,16 +187,16 @@ pub(crate) fn register_atomic_i_32_functions(world: &mut World) { }; output }, - " Consumes the atomic and returns the contained value.\n This is safe because passing `self` by value guarantees that no other threads are\n concurrently accessing the atomic data.\n # Examples\n ```\nuse std::sync::atomic::AtomicI32;\nlet some_var = AtomicI32::new(5);\n assert_eq!(some_var.into_inner(), 5);\n ```", + "", &["_self"], ) .register_documented( - "new", - |v: i32| { - let output: V<::core::sync::atomic::AtomicI32> = { + "clone", + |_self: R<::glam::Quat>| { + let output: V<::glam::Quat> = { { - let output: V<::core::sync::atomic::AtomicI32> = ::core::sync::atomic::AtomicI32::new( - v, + let output: V<::glam::Quat> = <::glam::Quat as ::core::clone::Clone>::clone( + &_self, ) .into(); output @@ -185,27 +204,15 @@ pub(crate) fn register_atomic_i_32_functions(world: &mut World) { }; output }, - " Creates a new atomic integer.\n # Examples\n ```\nuse std::sync::atomic::AtomicI32;\nlet atomic_forty_two = AtomicI32::new(42);\n ```", - &["v"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::core::sync::atomic::AtomicI32, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_atomic_i_64_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::core::sync::atomic::AtomicI64, - >::new(world) + "", + &["_self"], + ) .register_documented( - "into_inner", - |_self: V<::core::sync::atomic::AtomicI64>| { - let output: i64 = { + "conjugate", + |_self: V<::glam::Quat>| { + let output: V<::glam::Quat> = { { - let output: i64 = ::core::sync::atomic::AtomicI64::into_inner( + let output: V<::glam::Quat> = ::glam::Quat::conjugate( _self.into_inner(), ) .into(); @@ -214,45 +221,34 @@ pub(crate) fn register_atomic_i_64_functions(world: &mut World) { }; output }, - " Consumes the atomic and returns the contained value.\n This is safe because passing `self` by value guarantees that no other threads are\n concurrently accessing the atomic data.\n # Examples\n ```\nuse std::sync::atomic::AtomicI64;\nlet some_var = AtomicI64::new(5);\n assert_eq!(some_var.into_inner(), 5);\n ```", + " Returns the quaternion conjugate of `self`. For a unit quaternion the\n conjugate is also the inverse.", &["_self"], ) .register_documented( - "new", - |v: i64| { - let output: V<::core::sync::atomic::AtomicI64> = { + "div", + |_self: V<::glam::Quat>, rhs: f32| { + let output: V<::glam::Quat> = { { - let output: V<::core::sync::atomic::AtomicI64> = ::core::sync::atomic::AtomicI64::new( - v, - ) + let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Div< + f32, + >>::div(_self.into_inner(), rhs) .into(); output } }; output }, - " Creates a new atomic integer.\n # Examples\n ```\nuse std::sync::atomic::AtomicI64;\nlet atomic_forty_two = AtomicI64::new(42);\n ```", - &["v"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::core::sync::atomic::AtomicI64, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_atomic_isize_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::core::sync::atomic::AtomicIsize, - >::new(world) + " Divides a quaternion by a scalar value.\n The quotient is not guaranteed to be normalized.", + &["_self", "rhs"], + ) .register_documented( - "into_inner", - |_self: V<::core::sync::atomic::AtomicIsize>| { - let output: isize = { + "dot", + |_self: V<::glam::Quat>, rhs: V<::glam::Quat>| { + let output: f32 = { { - let output: isize = ::core::sync::atomic::AtomicIsize::into_inner( + let output: f32 = ::glam::Quat::dot( _self.into_inner(), + rhs.into_inner(), ) .into(); output @@ -260,108 +256,78 @@ pub(crate) fn register_atomic_isize_functions(world: &mut World) { }; output }, - " Consumes the atomic and returns the contained value.\n This is safe because passing `self` by value guarantees that no other threads are\n concurrently accessing the atomic data.\n # Examples\n ```\nuse std::sync::atomic::AtomicIsize;\nlet some_var = AtomicIsize::new(5);\n assert_eq!(some_var.into_inner(), 5);\n ```", - &["_self"], + " Computes the dot product of `self` and `rhs`. The dot product is\n equal to the cosine of the angle between two quaternion rotations.", + &["_self", "rhs"], ) .register_documented( - "new", - |v: isize| { - let output: V<::core::sync::atomic::AtomicIsize> = { + "eq", + |_self: R<::glam::Quat>, rhs: R<::glam::Quat>| { + let output: bool = { { - let output: V<::core::sync::atomic::AtomicIsize> = ::core::sync::atomic::AtomicIsize::new( - v, - ) + let output: bool = <::glam::Quat as ::core::cmp::PartialEq< + ::glam::Quat, + >>::eq(&_self, &rhs) .into(); output } }; output }, - " Creates a new atomic integer.\n # Examples\n ```\nuse std::sync::atomic::AtomicIsize;\nlet atomic_forty_two = AtomicIsize::new(42);\n ```", - &["v"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::core::sync::atomic::AtomicIsize, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_atomic_u_8_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::core::sync::atomic::AtomicU8, - >::new(world) + "", + &["_self", "rhs"], + ) .register_documented( - "into_inner", - |_self: V<::core::sync::atomic::AtomicU8>| { - let output: u8 = { + "from_affine3", + |a: R<::glam::Affine3>| { + let output: V<::glam::Quat> = { { - let output: u8 = ::core::sync::atomic::AtomicU8::into_inner( - _self.into_inner(), - ) + let output: V<::glam::Quat> = ::glam::Quat::from_affine3(&a) .into(); output } }; output }, - " Consumes the atomic and returns the contained value.\n This is safe because passing `self` by value guarantees that no other threads are\n concurrently accessing the atomic data.\n # Examples\n ```\nuse std::sync::atomic::AtomicU8;\nlet some_var = AtomicU8::new(5);\n assert_eq!(some_var.into_inner(), 5);\n ```", - &["_self"], + " Creates a quaternion from a 3x3 rotation matrix inside a 3D affine transform.\n Note if the input affine matrix contain scales, shears, or other non-rotation\n transformations then the resulting quaternion will be ill-defined.\n # Panics\n Will panic if any input affine matrix column is not normalized when `glam_assert` is\n enabled.", + &["a"], ) .register_documented( - "new", - |v: u8| { - let output: V<::core::sync::atomic::AtomicU8> = { + "from_affine3a", + |a: R<::glam::Affine3A>| { + let output: V<::glam::Quat> = { { - let output: V<::core::sync::atomic::AtomicU8> = ::core::sync::atomic::AtomicU8::new( - v, - ) + let output: V<::glam::Quat> = ::glam::Quat::from_affine3a(&a) .into(); output } }; output }, - " Creates a new atomic integer.\n # Examples\n ```\nuse std::sync::atomic::AtomicU8;\nlet atomic_forty_two = AtomicU8::new(42);\n ```", - &["v"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::core::sync::atomic::AtomicU8, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_atomic_u_16_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::core::sync::atomic::AtomicU16, - >::new(world) + " Creates a quaternion from a 3x3 rotation matrix inside a 3D affine transform.\n Note if the input affine matrix contain scales, shears, or other non-rotation\n transformations then the resulting quaternion will be ill-defined.\n # Panics\n Will panic if any input affine matrix column is not normalized when `glam_assert` is\n enabled.", + &["a"], + ) .register_documented( - "into_inner", - |_self: V<::core::sync::atomic::AtomicU16>| { - let output: u16 = { + "from_array", + |a: [f32; 4]| { + let output: V<::glam::Quat> = { { - let output: u16 = ::core::sync::atomic::AtomicU16::into_inner( - _self.into_inner(), - ) - .into(); + let output: V<::glam::Quat> = ::glam::Quat::from_array(a).into(); output } }; output }, - " Consumes the atomic and returns the contained value.\n This is safe because passing `self` by value guarantees that no other threads are\n concurrently accessing the atomic data.\n # Examples\n ```\nuse std::sync::atomic::AtomicU16;\nlet some_var = AtomicU16::new(5);\n assert_eq!(some_var.into_inner(), 5);\n ```", - &["_self"], + " Creates a rotation quaternion from an array.\n # Preconditions\n This function does not check if the input is normalized, it is up to the user to\n provide normalized input or to normalized the resulting quaternion.", + &["a"], ) .register_documented( - "new", - |v: u16| { - let output: V<::core::sync::atomic::AtomicU16> = { + "from_axis_angle", + |axis: V<::glam::Vec3>, angle: f32| { + let output: V<::glam::Quat> = { { - let output: V<::core::sync::atomic::AtomicU16> = ::core::sync::atomic::AtomicU16::new( - v, + let output: V<::glam::Quat> = ::glam::Quat::from_axis_angle( + axis.into_inner(), + angle, ) .into(); output @@ -369,28 +335,19 @@ pub(crate) fn register_atomic_u_16_functions(world: &mut World) { }; output }, - " Creates a new atomic integer.\n # Examples\n ```\nuse std::sync::atomic::AtomicU16;\nlet atomic_forty_two = AtomicU16::new(42);\n ```", - &["v"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::core::sync::atomic::AtomicU16, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_atomic_u_32_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::core::sync::atomic::AtomicU32, - >::new(world) + " Create a quaternion for a normalized rotation `axis` and `angle` (in radians).\n The axis must be a unit vector.\n # Panics\n Will panic if `axis` is not normalized when `glam_assert` is enabled.", + &["axis", "angle"], + ) .register_documented( - "into_inner", - |_self: V<::core::sync::atomic::AtomicU32>| { - let output: u32 = { + "from_euler", + |euler: V<::glam::EulerRot>, a: f32, b: f32, c: f32| { + let output: V<::glam::Quat> = { { - let output: u32 = ::core::sync::atomic::AtomicU32::into_inner( - _self.into_inner(), + let output: V<::glam::Quat> = ::glam::Quat::from_euler( + euler.into_inner(), + a, + b, + c, ) .into(); output @@ -398,91 +355,62 @@ pub(crate) fn register_atomic_u_32_functions(world: &mut World) { }; output }, - " Consumes the atomic and returns the contained value.\n This is safe because passing `self` by value guarantees that no other threads are\n concurrently accessing the atomic data.\n # Examples\n ```\nuse std::sync::atomic::AtomicU32;\nlet some_var = AtomicU32::new(5);\n assert_eq!(some_var.into_inner(), 5);\n ```", - &["_self"], + " Creates a quaternion from the given Euler rotation sequence and the angles (in radians).", + &["euler", "a", "b", "c"], ) .register_documented( - "new", - |v: u32| { - let output: V<::core::sync::atomic::AtomicU32> = { + "from_mat3", + |mat: R<::glam::Mat3>| { + let output: V<::glam::Quat> = { { - let output: V<::core::sync::atomic::AtomicU32> = ::core::sync::atomic::AtomicU32::new( - v, - ) + let output: V<::glam::Quat> = ::glam::Quat::from_mat3(&mat) .into(); output } }; output }, - " Creates a new atomic integer.\n # Examples\n ```\nuse std::sync::atomic::AtomicU32;\nlet atomic_forty_two = AtomicU32::new(42);\n ```", - &["v"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::core::sync::atomic::AtomicU32, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_atomic_u_64_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::core::sync::atomic::AtomicU64, - >::new(world) + " Creates a quaternion from a 3x3 rotation matrix.\n Note if the input matrix contain scales, shears, or other non-rotation transformations then\n the resulting quaternion will be ill-defined.\n # Panics\n Will panic if any input matrix column is not normalized when `glam_assert` is enabled.", + &["mat"], + ) .register_documented( - "into_inner", - |_self: V<::core::sync::atomic::AtomicU64>| { - let output: u64 = { + "from_mat3a", + |mat: R<::glam::Mat3A>| { + let output: V<::glam::Quat> = { { - let output: u64 = ::core::sync::atomic::AtomicU64::into_inner( - _self.into_inner(), - ) + let output: V<::glam::Quat> = ::glam::Quat::from_mat3a(&mat) .into(); output } }; output }, - " Consumes the atomic and returns the contained value.\n This is safe because passing `self` by value guarantees that no other threads are\n concurrently accessing the atomic data.\n # Examples\n ```\nuse std::sync::atomic::AtomicU64;\nlet some_var = AtomicU64::new(5);\n assert_eq!(some_var.into_inner(), 5);\n ```", - &["_self"], + " Creates a quaternion from a 3x3 SIMD aligned rotation matrix.\n Note if the input matrix contain scales, shears, or other non-rotation transformations then\n the resulting quaternion will be ill-defined.\n # Panics\n Will panic if any input matrix column is not normalized when `glam_assert` is enabled.", + &["mat"], ) .register_documented( - "new", - |v: u64| { - let output: V<::core::sync::atomic::AtomicU64> = { + "from_mat4", + |mat: R<::glam::Mat4>| { + let output: V<::glam::Quat> = { { - let output: V<::core::sync::atomic::AtomicU64> = ::core::sync::atomic::AtomicU64::new( - v, - ) + let output: V<::glam::Quat> = ::glam::Quat::from_mat4(&mat) .into(); output } }; output }, - " Creates a new atomic integer.\n # Examples\n ```\nuse std::sync::atomic::AtomicU64;\nlet atomic_forty_two = AtomicU64::new(42);\n ```", - &["v"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::core::sync::atomic::AtomicU64, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_atomic_usize_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::core::sync::atomic::AtomicUsize, - >::new(world) + " Creates a quaternion from the upper 3x3 rotation matrix inside a homogeneous 4x4 matrix.\n Note if the upper 3x3 matrix contain scales, shears, or other non-rotation transformations\n then the resulting quaternion will be ill-defined.\n # Panics\n Will panic if any column of the upper 3x3 rotation matrix is not normalized when\n `glam_assert` is enabled.", + &["mat"], + ) .register_documented( - "into_inner", - |_self: V<::core::sync::atomic::AtomicUsize>| { - let output: usize = { + "from_rotation_arc", + |from: V<::glam::Vec3>, to: V<::glam::Vec3>| { + let output: V<::glam::Quat> = { { - let output: usize = ::core::sync::atomic::AtomicUsize::into_inner( - _self.into_inner(), + let output: V<::glam::Quat> = ::glam::Quat::from_rotation_arc( + from.into_inner(), + to.into_inner(), ) .into(); output @@ -490,16 +418,17 @@ pub(crate) fn register_atomic_usize_functions(world: &mut World) { }; output }, - " Consumes the atomic and returns the contained value.\n This is safe because passing `self` by value guarantees that no other threads are\n concurrently accessing the atomic data.\n # Examples\n ```\nuse std::sync::atomic::AtomicUsize;\nlet some_var = AtomicUsize::new(5);\n assert_eq!(some_var.into_inner(), 5);\n ```", - &["_self"], + " Gets the minimal rotation for transforming `from` to `to`. The rotation is in the\n plane spanned by the two vectors. Will rotate at most 180 degrees.\n The inputs must be unit vectors.\n `from_rotation_arc(from, to) * from ≈ to`.\n For near-singular cases (from≈to and from≈-to) the current implementation\n is only accurate to about 0.001 (for `f32`).\n # Panics\n Will panic if `from` or `to` are not normalized when `glam_assert` is enabled.", + &["from", "to"], ) .register_documented( - "new", - |v: usize| { - let output: V<::core::sync::atomic::AtomicUsize> = { + "from_rotation_arc_2d", + |from: V<::glam::Vec2>, to: V<::glam::Vec2>| { + let output: V<::glam::Quat> = { { - let output: V<::core::sync::atomic::AtomicUsize> = ::core::sync::atomic::AtomicUsize::new( - v, + let output: V<::glam::Quat> = ::glam::Quat::from_rotation_arc_2d( + from.into_inner(), + to.into_inner(), ) .into(); output @@ -507,29 +436,17 @@ pub(crate) fn register_atomic_usize_functions(world: &mut World) { }; output }, - " Creates a new atomic integer.\n # Examples\n ```\nuse std::sync::atomic::AtomicUsize;\nlet atomic_forty_two = AtomicUsize::new(42);\n ```", - &["v"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::core::sync::atomic::AtomicUsize, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_duration_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::core::time::Duration, - >::new(world) + " Gets the minimal rotation for transforming `from` to `to`. The resulting rotation is\n around the z axis. Will rotate at most 180 degrees.\n The inputs must be unit vectors.\n `from_rotation_arc_2d(from, to) * from ≈ to`.\n For near-singular cases (from≈to and from≈-to) the current implementation\n is only accurate to about 0.001 (for `f32`).\n # Panics\n Will panic if `from` or `to` are not normalized when `glam_assert` is enabled.", + &["from", "to"], + ) .register_documented( - "abs_diff", - |_self: V<::core::time::Duration>, other: V<::core::time::Duration>| { - let output: V<::core::time::Duration> = { + "from_rotation_arc_colinear", + |from: V<::glam::Vec3>, to: V<::glam::Vec3>| { + let output: V<::glam::Quat> = { { - let output: V<::core::time::Duration> = ::core::time::Duration::abs_diff( - _self.into_inner(), - other.into_inner(), + let output: V<::glam::Quat> = ::glam::Quat::from_rotation_arc_colinear( + from.into_inner(), + to.into_inner(), ) .into(); output @@ -537,122 +454,135 @@ pub(crate) fn register_duration_functions(world: &mut World) { }; output }, - " Computes the absolute difference between `self` and `other`.\n # Examples\n ```\n use std::time::Duration;\n assert_eq!(Duration::new(100, 0).abs_diff(Duration::new(80, 0)), Duration::new(20, 0));\n assert_eq!(Duration::new(100, 400_000_000).abs_diff(Duration::new(110, 0)), Duration::new(9, 600_000_000));\n ```", - &["_self", "other"], + " Gets the minimal rotation for transforming `from` to either `to` or `-to`. This means\n that the resulting quaternion will rotate `from` so that it is colinear with `to`.\n The rotation is in the plane spanned by the two vectors. Will rotate at most 90\n degrees.\n The inputs must be unit vectors.\n `to.dot(from_rotation_arc_colinear(from, to) * from).abs() ≈ 1`.\n # Panics\n Will panic if `from` or `to` are not normalized when `glam_assert` is enabled.", + &["from", "to"], ) .register_documented( - "add", - |_self: V<::core::time::Duration>, rhs: V<::core::time::Duration>| { - let output: V<::core::time::Duration> = { + "from_rotation_axes", + |x_axis: V<::glam::Vec3>, y_axis: V<::glam::Vec3>, z_axis: V<::glam::Vec3>| { + let output: V<::glam::Quat> = { { - let output: V<::core::time::Duration> = <::core::time::Duration as ::core::ops::Add< - ::core::time::Duration, - >>::add(_self.into_inner(), rhs.into_inner()) + let output: V<::glam::Quat> = ::glam::Quat::from_rotation_axes( + x_axis.into_inner(), + y_axis.into_inner(), + z_axis.into_inner(), + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " From the columns of a 3x3 rotation matrix.\n Note if the input axes contain scales, shears, or other non-rotation transformations then\n the output of this function is ill-defined.\n # Panics\n Will panic if any axis is not normalized when `glam_assert` is enabled.", + &["x_axis", "y_axis", "z_axis"], ) .register_documented( - "as_micros", - |_self: R<::core::time::Duration>| { - let output: u128 = { + "from_rotation_x", + |angle: f32| { + let output: V<::glam::Quat> = { { - let output: u128 = ::core::time::Duration::as_micros(&_self) + let output: V<::glam::Quat> = ::glam::Quat::from_rotation_x( + angle, + ) .into(); output } }; output }, - " Returns the total number of whole microseconds contained by this `Duration`.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::new(5, 730_023_852);\n assert_eq!(duration.as_micros(), 5_730_023);\n ```", - &["_self"], + " Creates a quaternion from the `angle` (in radians) around the x axis.", + &["angle"], ) .register_documented( - "as_millis", - |_self: R<::core::time::Duration>| { - let output: u128 = { + "from_rotation_y", + |angle: f32| { + let output: V<::glam::Quat> = { { - let output: u128 = ::core::time::Duration::as_millis(&_self) + let output: V<::glam::Quat> = ::glam::Quat::from_rotation_y( + angle, + ) .into(); output } }; output }, - " Returns the total number of whole milliseconds contained by this `Duration`.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::new(5, 730_023_852);\n assert_eq!(duration.as_millis(), 5_730);\n ```", - &["_self"], + " Creates a quaternion from the `angle` (in radians) around the y axis.", + &["angle"], ) .register_documented( - "as_nanos", - |_self: R<::core::time::Duration>| { - let output: u128 = { + "from_rotation_z", + |angle: f32| { + let output: V<::glam::Quat> = { { - let output: u128 = ::core::time::Duration::as_nanos(&_self) + let output: V<::glam::Quat> = ::glam::Quat::from_rotation_z( + angle, + ) .into(); output } }; output }, - " Returns the total number of nanoseconds contained by this `Duration`.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::new(5, 730_023_852);\n assert_eq!(duration.as_nanos(), 5_730_023_852);\n ```", - &["_self"], + " Creates a quaternion from the `angle` (in radians) around the z axis.", + &["angle"], ) .register_documented( - "as_secs", - |_self: R<::core::time::Duration>| { - let output: u64 = { + "from_scaled_axis", + |v: V<::glam::Vec3>| { + let output: V<::glam::Quat> = { { - let output: u64 = ::core::time::Duration::as_secs(&_self).into(); + let output: V<::glam::Quat> = ::glam::Quat::from_scaled_axis( + v.into_inner(), + ) + .into(); output } }; output }, - " Returns the number of _whole_ seconds contained by this `Duration`.\n The returned value does not include the fractional (nanosecond) part of the\n duration, which can be obtained using [`subsec_nanos`].\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::new(5, 730_023_852);\n assert_eq!(duration.as_secs(), 5);\n ```\n To determine the total number of seconds represented by the `Duration`\n including the fractional part, use [`as_secs_f64`] or [`as_secs_f32`]\n [`as_secs_f64`]: Duration::as_secs_f64\n [`as_secs_f32`]: Duration::as_secs_f32\n [`subsec_nanos`]: Duration::subsec_nanos", - &["_self"], + " Create a quaternion that rotates `v.length()` radians around `v.normalize()`.\n `from_scaled_axis(Vec3::ZERO)` results in the identity quaternion.", + &["v"], ) .register_documented( - "as_secs_f32", - |_self: R<::core::time::Duration>| { - let output: f32 = { + "from_vec4", + |v: V<::glam::Vec4>| { + let output: V<::glam::Quat> = { { - let output: f32 = ::core::time::Duration::as_secs_f32(&_self) + let output: V<::glam::Quat> = ::glam::Quat::from_vec4( + v.into_inner(), + ) .into(); output } }; output }, - " Returns the number of seconds contained by this `Duration` as `f32`.\n The returned value includes the fractional (nanosecond) part of the duration.\n # Examples\n ```\n use std::time::Duration;\n let dur = Duration::new(2, 700_000_000);\n assert_eq!(dur.as_secs_f32(), 2.7);\n ```", - &["_self"], + " Creates a new rotation quaternion from a 4D vector.\n # Preconditions\n This function does not check if the input is normalized, it is up to the user to\n provide normalized input or to normalized the resulting quaternion.", + &["v"], ) .register_documented( - "as_secs_f64", - |_self: R<::core::time::Duration>| { - let output: f64 = { + "from_xyzw", + |x: f32, y: f32, z: f32, w: f32| { + let output: V<::glam::Quat> = { { - let output: f64 = ::core::time::Duration::as_secs_f64(&_self) + let output: V<::glam::Quat> = ::glam::Quat::from_xyzw(x, y, z, w) .into(); output } }; output }, - " Returns the number of seconds contained by this `Duration` as `f64`.\n The returned value includes the fractional (nanosecond) part of the duration.\n # Examples\n ```\n use std::time::Duration;\n let dur = Duration::new(2, 700_000_000);\n assert_eq!(dur.as_secs_f64(), 2.7);\n ```", - &["_self"], + " Creates a new rotation quaternion.\n This should generally not be called manually unless you know what you are doing.\n Use one of the other constructors instead such as `identity` or `from_axis_angle`.\n `from_xyzw` is mostly used by unit tests and `serde` deserialization.\n # Preconditions\n This function does not check if the input is normalized, it is up to the user to\n provide normalized input or to normalized the resulting quaternion.", + &["x", "y", "z", "w"], ) .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::core::time::Duration>| { - let output: () = { + "inverse", + |_self: V<::glam::Quat>| { + let output: V<::glam::Quat> = { { - let output: () = <::core::time::Duration as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Quat> = ::glam::Quat::inverse( + _self.into_inner(), ) .into(); output @@ -660,69 +590,46 @@ pub(crate) fn register_duration_functions(world: &mut World) { }; output }, - "", + " Returns the inverse of a normalized quaternion.\n Typically quaternion inverse returns the conjugate of a normalized quaternion.\n Because `self` is assumed to already be unit length this method *does not* normalize\n before returning the conjugate.\n # Panics\n Will panic if `self` is not normalized when `glam_assert` is enabled.", &["_self"], ) .register_documented( - "clone", - |_self: R<::core::time::Duration>| { - let output: V<::core::time::Duration> = { - { - let output: V<::core::time::Duration> = <::core::time::Duration as ::core::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "div", - |_self: V<::core::time::Duration>, rhs: u32| { - let output: V<::core::time::Duration> = { + "is_finite", + |_self: V<::glam::Quat>| { + let output: bool = { { - let output: V<::core::time::Duration> = <::core::time::Duration as ::core::ops::Div< - u32, - >>::div(_self.into_inner(), rhs) + let output: bool = ::glam::Quat::is_finite(_self.into_inner()) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Returns `true` if, and only if, all elements are finite.\n If any element is either `NaN`, positive or negative infinity, this will return `false`.", + &["_self"], ) .register_documented( - "div_duration_f32", - |_self: V<::core::time::Duration>, rhs: V<::core::time::Duration>| { - let output: f32 = { + "is_nan", + |_self: V<::glam::Quat>| { + let output: bool = { { - let output: f32 = ::core::time::Duration::div_duration_f32( - _self.into_inner(), - rhs.into_inner(), - ) + let output: bool = ::glam::Quat::is_nan(_self.into_inner()) .into(); output } }; output }, - " Divides `Duration` by `Duration` and returns `f32`.\n # Examples\n ```\n use std::time::Duration;\n let dur1 = Duration::new(2, 700_000_000);\n let dur2 = Duration::new(5, 400_000_000);\n assert_eq!(dur1.div_duration_f32(dur2), 0.5);\n ```", - &["_self", "rhs"], + " Returns `true` if any elements are `NAN`.", + &["_self"], ) .register_documented( - "div_duration_f64", - |_self: V<::core::time::Duration>, rhs: V<::core::time::Duration>| { - let output: f64 = { + "is_near_identity", + |_self: V<::glam::Quat>| { + let output: bool = { { - let output: f64 = ::core::time::Duration::div_duration_f64( + let output: bool = ::glam::Quat::is_near_identity( _self.into_inner(), - rhs.into_inner(), ) .into(); output @@ -730,17 +637,16 @@ pub(crate) fn register_duration_functions(world: &mut World) { }; output }, - " Divides `Duration` by `Duration` and returns `f64`.\n # Examples\n ```\n use std::time::Duration;\n let dur1 = Duration::new(2, 700_000_000);\n let dur2 = Duration::new(5, 400_000_000);\n assert_eq!(dur1.div_duration_f64(dur2), 0.5);\n ```", - &["_self", "rhs"], + "", + &["_self"], ) .register_documented( - "div_f32", - |_self: V<::core::time::Duration>, rhs: f32| { - let output: V<::core::time::Duration> = { + "is_normalized", + |_self: V<::glam::Quat>| { + let output: bool = { { - let output: V<::core::time::Duration> = ::core::time::Duration::div_f32( + let output: bool = ::glam::Quat::is_normalized( _self.into_inner(), - rhs, ) .into(); output @@ -748,51 +654,46 @@ pub(crate) fn register_duration_functions(world: &mut World) { }; output }, - " Divides `Duration` by `f32`.\n # Panics\n This method will panic if result is negative, overflows `Duration` or not finite.\n # Examples\n ```\n use std::time::Duration;\n let dur = Duration::new(2, 700_000_000);\n // note that due to rounding errors result is slightly\n // different from 0.859_872_611\n assert_eq!(dur.div_f32(3.14), Duration::new(0, 859_872_580));\n assert_eq!(dur.div_f32(3.14e5), Duration::new(0, 8_599));\n ```", - &["_self", "rhs"], + " Returns whether `self` of length `1.0` or not.\n Uses a precision threshold of `1e-6`.", + &["_self"], ) .register_documented( - "div_f64", - |_self: V<::core::time::Duration>, rhs: f64| { - let output: V<::core::time::Duration> = { + "length", + |_self: V<::glam::Quat>| { + let output: f32 = { { - let output: V<::core::time::Duration> = ::core::time::Duration::div_f64( - _self.into_inner(), - rhs, - ) + let output: f32 = ::glam::Quat::length(_self.into_inner()) .into(); output } }; output }, - " Divides `Duration` by `f64`.\n # Panics\n This method will panic if result is negative, overflows `Duration` or not finite.\n # Examples\n ```\n use std::time::Duration;\n let dur = Duration::new(2, 700_000_000);\n assert_eq!(dur.div_f64(3.14), Duration::new(0, 859_872_611));\n assert_eq!(dur.div_f64(3.14e5), Duration::new(0, 8_599));\n ```", - &["_self", "rhs"], + " Computes the length of `self`.", + &["_self"], ) .register_documented( - "eq", - |_self: R<::core::time::Duration>, other: R<::core::time::Duration>| { - let output: bool = { + "length_recip", + |_self: V<::glam::Quat>| { + let output: f32 = { { - let output: bool = <::core::time::Duration as ::core::cmp::PartialEq< - ::core::time::Duration, - >>::eq(&_self, &other) + let output: f32 = ::glam::Quat::length_recip(_self.into_inner()) .into(); output } }; output }, - "", - &["_self", "other"], + " Computes `1.0 / length()`.\n For valid results, `self` must _not_ be of length zero.", + &["_self"], ) .register_documented( - "from_micros", - |micros: u64| { - let output: V<::core::time::Duration> = { + "length_squared", + |_self: V<::glam::Quat>| { + let output: f32 = { { - let output: V<::core::time::Duration> = ::core::time::Duration::from_micros( - micros, + let output: f32 = ::glam::Quat::length_squared( + _self.into_inner(), ) .into(); output @@ -800,16 +701,18 @@ pub(crate) fn register_duration_functions(world: &mut World) { }; output }, - " Creates a new `Duration` from the specified number of microseconds.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_micros(1_000_002);\n assert_eq!(1, duration.as_secs());\n assert_eq!(2_000, duration.subsec_nanos());\n ```", - &["micros"], + " Computes the squared length of `self`.\n This is generally faster than `length()` as it avoids a square\n root operation.", + &["_self"], ) .register_documented( - "from_millis", - |millis: u64| { - let output: V<::core::time::Duration> = { + "lerp", + |_self: V<::glam::Quat>, end: V<::glam::Quat>, s: f32| { + let output: V<::glam::Quat> = { { - let output: V<::core::time::Duration> = ::core::time::Duration::from_millis( - millis, + let output: V<::glam::Quat> = ::glam::Quat::lerp( + _self.into_inner(), + end.into_inner(), + s, ) .into(); output @@ -817,16 +720,18 @@ pub(crate) fn register_duration_functions(world: &mut World) { }; output }, - " Creates a new `Duration` from the specified number of milliseconds.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_millis(2_569);\n assert_eq!(2, duration.as_secs());\n assert_eq!(569_000_000, duration.subsec_nanos());\n ```", - &["millis"], + " Performs a linear interpolation between `self` and `rhs` based on\n the value `s`.\n When `s` is `0.0`, the result will be equal to `self`. When `s`\n is `1.0`, the result will be equal to `rhs`.\n # Panics\n Will panic if `self` or `end` are not normalized when `glam_assert` is enabled.", + &["_self", "end", "s"], ) .register_documented( - "from_nanos", - |nanos: u64| { - let output: V<::core::time::Duration> = { + "look_at_lh", + |eye: V<::glam::Vec3>, center: V<::glam::Vec3>, up: V<::glam::Vec3>| { + let output: V<::glam::Quat> = { { - let output: V<::core::time::Duration> = ::core::time::Duration::from_nanos( - nanos, + let output: V<::glam::Quat> = ::glam::Quat::look_at_lh( + eye.into_inner(), + center.into_inner(), + up.into_inner(), ) .into(); output @@ -834,16 +739,18 @@ pub(crate) fn register_duration_functions(world: &mut World) { }; output }, - " Creates a new `Duration` from the specified number of nanoseconds.\n Note: Using this on the return value of `as_nanos()` might cause unexpected behavior:\n `as_nanos()` returns a u128, and can return values that do not fit in u64, e.g. 585 years.\n Instead, consider using the pattern `Duration::new(d.as_secs(), d.subsec_nanos())`\n if you cannot copy/clone the Duration directly.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_nanos(1_000_000_123);\n assert_eq!(1, duration.as_secs());\n assert_eq!(123, duration.subsec_nanos());\n ```", - &["nanos"], + " Creates a left-handed view matrix using a camera position, a focal point, and an up\n direction.\n For a left-handed view coordinate system with `+X=right`, `+Y=up` and `+Z=forward`.\n # Panics\n Will panic if `up` is not normalized when `glam_assert` is enabled.", + &["eye", "center", "up"], ) .register_documented( - "from_secs", - |secs: u64| { - let output: V<::core::time::Duration> = { + "look_at_rh", + |eye: V<::glam::Vec3>, center: V<::glam::Vec3>, up: V<::glam::Vec3>| { + let output: V<::glam::Quat> = { { - let output: V<::core::time::Duration> = ::core::time::Duration::from_secs( - secs, + let output: V<::glam::Quat> = ::glam::Quat::look_at_rh( + eye.into_inner(), + center.into_inner(), + up.into_inner(), ) .into(); output @@ -851,16 +758,17 @@ pub(crate) fn register_duration_functions(world: &mut World) { }; output }, - " Creates a new `Duration` from the specified number of whole seconds.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_secs(5);\n assert_eq!(5, duration.as_secs());\n assert_eq!(0, duration.subsec_nanos());\n ```", - &["secs"], + " Creates a right-handed view matrix using a camera position, an up direction, and a focal\n point.\n For a right-handed view coordinate system with `+X=right`, `+Y=up` and `+Z=back`.\n # Panics\n Will panic if `up` is not normalized when `glam_assert` is enabled.", + &["eye", "center", "up"], ) .register_documented( - "from_secs_f32", - |secs: f32| { - let output: V<::core::time::Duration> = { + "look_to_lh", + |dir: V<::glam::Vec3>, up: V<::glam::Vec3>| { + let output: V<::glam::Quat> = { { - let output: V<::core::time::Duration> = ::core::time::Duration::from_secs_f32( - secs, + let output: V<::glam::Quat> = ::glam::Quat::look_to_lh( + dir.into_inner(), + up.into_inner(), ) .into(); output @@ -868,16 +776,17 @@ pub(crate) fn register_duration_functions(world: &mut World) { }; output }, - " Creates a new `Duration` from the specified number of seconds represented\n as `f32`.\n # Panics\n This constructor will panic if `secs` is negative, overflows `Duration` or not finite.\n # Examples\n ```\n use std::time::Duration;\n let res = Duration::from_secs_f32(0.0);\n assert_eq!(res, Duration::new(0, 0));\n let res = Duration::from_secs_f32(1e-20);\n assert_eq!(res, Duration::new(0, 0));\n let res = Duration::from_secs_f32(4.2e-7);\n assert_eq!(res, Duration::new(0, 420));\n let res = Duration::from_secs_f32(2.7);\n assert_eq!(res, Duration::new(2, 700_000_048));\n let res = Duration::from_secs_f32(3e10);\n assert_eq!(res, Duration::new(30_000_001_024, 0));\n // subnormal float\n let res = Duration::from_secs_f32(f32::from_bits(1));\n assert_eq!(res, Duration::new(0, 0));\n // conversion uses rounding\n let res = Duration::from_secs_f32(0.999e-9);\n assert_eq!(res, Duration::new(0, 1));\n ```", - &["secs"], + " Creates a quaterion rotation from a facing direction and an up direction.\n For a left-handed view coordinate system with `+X=right`, `+Y=up` and `+Z=forward`.\n # Panics\n Will panic if `up` is not normalized when `glam_assert` is enabled.", + &["dir", "up"], ) .register_documented( - "from_secs_f64", - |secs: f64| { - let output: V<::core::time::Duration> = { + "look_to_rh", + |dir: V<::glam::Vec3>, up: V<::glam::Vec3>| { + let output: V<::glam::Quat> = { { - let output: V<::core::time::Duration> = ::core::time::Duration::from_secs_f64( - secs, + let output: V<::glam::Quat> = ::glam::Quat::look_to_rh( + dir.into_inner(), + up.into_inner(), ) .into(); output @@ -885,32 +794,34 @@ pub(crate) fn register_duration_functions(world: &mut World) { }; output }, - " Creates a new `Duration` from the specified number of seconds represented\n as `f64`.\n # Panics\n This constructor will panic if `secs` is negative, overflows `Duration` or not finite.\n # Examples\n ```\n use std::time::Duration;\n let res = Duration::from_secs_f64(0.0);\n assert_eq!(res, Duration::new(0, 0));\n let res = Duration::from_secs_f64(1e-20);\n assert_eq!(res, Duration::new(0, 0));\n let res = Duration::from_secs_f64(4.2e-7);\n assert_eq!(res, Duration::new(0, 420));\n let res = Duration::from_secs_f64(2.7);\n assert_eq!(res, Duration::new(2, 700_000_000));\n let res = Duration::from_secs_f64(3e10);\n assert_eq!(res, Duration::new(30_000_000_000, 0));\n // subnormal float\n let res = Duration::from_secs_f64(f64::from_bits(1));\n assert_eq!(res, Duration::new(0, 0));\n // conversion uses rounding\n let res = Duration::from_secs_f64(0.999e-9);\n assert_eq!(res, Duration::new(0, 1));\n ```", - &["secs"], + " Creates a quaterion rotation from facing direction and an up direction.\n For a right-handed view coordinate system with `+X=right`, `+Y=up` and `+Z=back`.\n # Panics\n Will panic if `dir` and `up` are not normalized when `glam_assert` is enabled.", + &["dir", "up"], ) .register_documented( - "is_zero", - |_self: R<::core::time::Duration>| { - let output: bool = { + "mul", + |_self: V<::glam::Quat>, rhs: R<::glam::Quat>| { + let output: V<::glam::Quat> = { { - let output: bool = ::core::time::Duration::is_zero(&_self) + let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Mul< + &::glam::Quat, + >>::mul(_self.into_inner(), &rhs) .into(); output } }; output }, - " Returns true if this `Duration` spans no time.\n # Examples\n ```\n use std::time::Duration;\n assert!(Duration::ZERO.is_zero());\n assert!(Duration::new(0, 0).is_zero());\n assert!(Duration::from_nanos(0).is_zero());\n assert!(Duration::from_secs(0).is_zero());\n assert!(!Duration::new(1, 1).is_zero());\n assert!(!Duration::from_nanos(1).is_zero());\n assert!(!Duration::from_secs(1).is_zero());\n ```", - &["_self"], + "", + &["_self", "rhs"], ) .register_documented( "mul", - |_self: V<::core::time::Duration>, rhs: u32| { - let output: V<::core::time::Duration> = { + |_self: V<::glam::Quat>, rhs: R<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::core::time::Duration> = <::core::time::Duration as ::core::ops::Mul< - u32, - >>::mul(_self.into_inner(), rhs) + let output: V<::glam::Vec3> = <::glam::Quat as ::core::ops::Mul< + &::glam::Vec3, + >>::mul(_self.into_inner(), &rhs) .into(); output } @@ -921,65 +832,62 @@ pub(crate) fn register_duration_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "mul_f32", - |_self: V<::core::time::Duration>, rhs: f32| { - let output: V<::core::time::Duration> = { + "mul", + |_self: V<::glam::Quat>, rhs: R<::glam::Vec3A>| { + let output: V<::glam::Vec3A> = { { - let output: V<::core::time::Duration> = ::core::time::Duration::mul_f32( - _self.into_inner(), - rhs, - ) + let output: V<::glam::Vec3A> = <::glam::Quat as ::core::ops::Mul< + &::glam::Vec3A, + >>::mul(_self.into_inner(), &rhs) .into(); output } }; output }, - " Multiplies `Duration` by `f32`.\n # Panics\n This method will panic if result is negative, overflows `Duration` or not finite.\n # Examples\n ```\n use std::time::Duration;\n let dur = Duration::new(2, 700_000_000);\n assert_eq!(dur.mul_f32(3.14), Duration::new(8, 478_000_641));\n assert_eq!(dur.mul_f32(3.14e5), Duration::new(847_800, 0));\n ```", + "", &["_self", "rhs"], ) .register_documented( - "mul_f64", - |_self: V<::core::time::Duration>, rhs: f64| { - let output: V<::core::time::Duration> = { + "mul", + |_self: V<::glam::Quat>, rhs: V<::glam::Quat>| { + let output: V<::glam::Quat> = { { - let output: V<::core::time::Duration> = ::core::time::Duration::mul_f64( - _self.into_inner(), - rhs, - ) + let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Mul< + ::glam::Quat, + >>::mul(_self.into_inner(), rhs.into_inner()) .into(); output } }; output }, - " Multiplies `Duration` by `f64`.\n # Panics\n This method will panic if result is negative, overflows `Duration` or not finite.\n # Examples\n ```\n use std::time::Duration;\n let dur = Duration::new(2, 700_000_000);\n assert_eq!(dur.mul_f64(3.14), Duration::new(8, 478_000_000));\n assert_eq!(dur.mul_f64(3.14e5), Duration::new(847_800, 0));\n ```", + " Multiplies two quaternions. If they each represent a rotation, the result will\n represent the combined rotation.\n Note that due to floating point rounding the result may not be perfectly\n normalized.\n # Panics\n Will panic if `self` or `rhs` are not normalized when `glam_assert` is enabled.", &["_self", "rhs"], ) .register_documented( - "new", - |secs: u64, nanos: u32| { - let output: V<::core::time::Duration> = { + "mul", + |_self: V<::glam::Quat>, rhs: f32| { + let output: V<::glam::Quat> = { { - let output: V<::core::time::Duration> = ::core::time::Duration::new( - secs, - nanos, - ) + let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Mul< + f32, + >>::mul(_self.into_inner(), rhs) .into(); output } }; output }, - " Creates a new `Duration` from the specified number of whole seconds and\n additional nanoseconds.\n If the number of nanoseconds is greater than 1 billion (the number of\n nanoseconds in a second), then it will carry over into the seconds provided.\n # Panics\n This constructor will panic if the carry from the nanoseconds overflows\n the seconds counter.\n # Examples\n ```\n use std::time::Duration;\n let five_seconds = Duration::new(5, 0);\n ```", - &["secs", "nanos"], + " Multiplies a quaternion by a scalar value.\n The product is not guaranteed to be normalized.", + &["_self", "rhs"], ) .register_documented( - "saturating_add", - |_self: V<::core::time::Duration>, rhs: V<::core::time::Duration>| { - let output: V<::core::time::Duration> = { + "mul_quat", + |_self: V<::glam::Quat>, rhs: V<::glam::Quat>| { + let output: V<::glam::Quat> = { { - let output: V<::core::time::Duration> = ::core::time::Duration::saturating_add( + let output: V<::glam::Quat> = ::glam::Quat::mul_quat( _self.into_inner(), rhs.into_inner(), ) @@ -989,17 +897,17 @@ pub(crate) fn register_duration_functions(world: &mut World) { }; output }, - " Saturating `Duration` addition. Computes `self + other`, returning [`Duration::MAX`]\n if overflow occurred.\n # Examples\n ```\n #![feature(duration_constants)]\n use std::time::Duration;\n assert_eq!(Duration::new(0, 0).saturating_add(Duration::new(0, 1)), Duration::new(0, 1));\n assert_eq!(Duration::new(1, 0).saturating_add(Duration::new(u64::MAX, 0)), Duration::MAX);\n ```", + " Multiplies two quaternions. If they each represent a rotation, the result will\n represent the combined rotation.\n Note that due to floating point rounding the result may not be perfectly normalized.\n # Panics\n Will panic if `self` or `rhs` are not normalized when `glam_assert` is enabled.", &["_self", "rhs"], ) .register_documented( - "saturating_mul", - |_self: V<::core::time::Duration>, rhs: u32| { - let output: V<::core::time::Duration> = { + "mul_vec3", + |_self: V<::glam::Quat>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::core::time::Duration> = ::core::time::Duration::saturating_mul( + let output: V<::glam::Vec3> = ::glam::Quat::mul_vec3( _self.into_inner(), - rhs, + rhs.into_inner(), ) .into(); output @@ -1007,15 +915,15 @@ pub(crate) fn register_duration_functions(world: &mut World) { }; output }, - " Saturating `Duration` multiplication. Computes `self * other`, returning\n [`Duration::MAX`] if overflow occurred.\n # Examples\n ```\n #![feature(duration_constants)]\n use std::time::Duration;\n assert_eq!(Duration::new(0, 500_000_001).saturating_mul(2), Duration::new(1, 2));\n assert_eq!(Duration::new(u64::MAX - 1, 0).saturating_mul(2), Duration::MAX);\n ```", + " Multiplies a quaternion and a 3D vector, returning the rotated vector.\n # Panics\n Will panic if `self` is not normalized when `glam_assert` is enabled.", &["_self", "rhs"], ) .register_documented( - "saturating_sub", - |_self: V<::core::time::Duration>, rhs: V<::core::time::Duration>| { - let output: V<::core::time::Duration> = { + "mul_vec3a", + |_self: V<::glam::Quat>, rhs: V<::glam::Vec3A>| { + let output: V<::glam::Vec3A> = { { - let output: V<::core::time::Duration> = ::core::time::Duration::saturating_sub( + let output: V<::glam::Vec3A> = ::glam::Quat::mul_vec3a( _self.into_inner(), rhs.into_inner(), ) @@ -1025,284 +933,16 @@ pub(crate) fn register_duration_functions(world: &mut World) { }; output }, - " Saturating `Duration` subtraction. Computes `self - other`, returning [`Duration::ZERO`]\n if the result would be negative or if overflow occurred.\n # Examples\n ```\n use std::time::Duration;\n assert_eq!(Duration::new(0, 1).saturating_sub(Duration::new(0, 0)), Duration::new(0, 1));\n assert_eq!(Duration::new(0, 0).saturating_sub(Duration::new(0, 1)), Duration::ZERO);\n ```", - &["_self", "rhs"], - ) - .register_documented( - "sub", - |_self: V<::core::time::Duration>, rhs: V<::core::time::Duration>| { - let output: V<::core::time::Duration> = { - { - let output: V<::core::time::Duration> = <::core::time::Duration as ::core::ops::Sub< - ::core::time::Duration, - >>::sub(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", + " Multiplies a quaternion and a 3D vector, returning the rotated vector.", &["_self", "rhs"], ) .register_documented( - "subsec_micros", - |_self: R<::core::time::Duration>| { - let output: u32 = { - { - let output: u32 = ::core::time::Duration::subsec_micros(&_self) - .into(); - output - } - }; - output - }, - " Returns the fractional part of this `Duration`, in whole microseconds.\n This method does **not** return the length of the duration when\n represented by microseconds. The returned number always represents a\n fractional portion of a second (i.e., it is less than one million).\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_micros(1_234_567);\n assert_eq!(duration.as_secs(), 1);\n assert_eq!(duration.subsec_micros(), 234_567);\n ```", - &["_self"], - ) - .register_documented( - "subsec_millis", - |_self: R<::core::time::Duration>| { - let output: u32 = { - { - let output: u32 = ::core::time::Duration::subsec_millis(&_self) - .into(); - output - } - }; - output - }, - " Returns the fractional part of this `Duration`, in whole milliseconds.\n This method does **not** return the length of the duration when\n represented by milliseconds. The returned number always represents a\n fractional portion of a second (i.e., it is less than one thousand).\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_millis(5_432);\n assert_eq!(duration.as_secs(), 5);\n assert_eq!(duration.subsec_millis(), 432);\n ```", - &["_self"], - ) - .register_documented( - "subsec_nanos", - |_self: R<::core::time::Duration>| { - let output: u32 = { - { - let output: u32 = ::core::time::Duration::subsec_nanos(&_self) - .into(); - output - } - }; - output - }, - " Returns the fractional part of this `Duration`, in nanoseconds.\n This method does **not** return the length of the duration when\n represented by nanoseconds. The returned number always represents a\n fractional portion of a second (i.e., it is less than one billion).\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_millis(5_010);\n assert_eq!(duration.as_secs(), 5);\n assert_eq!(duration.subsec_nanos(), 10_000_000);\n ```", - &["_self"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::<::core::time::Duration, bevy_mod_scripting_bindings::MarkAsGenerated>( - ); -} -pub(crate) fn register_instant_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::std::time::Instant, - >::new(world) - .register_documented( - "add", - |_self: V<::std::time::Instant>, other: V<::core::time::Duration>| { - let output: V<::std::time::Instant> = { - { - let output: V<::std::time::Instant> = <::std::time::Instant as ::core::ops::Add< - ::core::time::Duration, - >>::add(_self.into_inner(), other.into_inner()) - .into(); - output - } - }; - output - }, - " # Panics\n This function may panic if the resulting point in time cannot be represented by the\n underlying data structure. See [`Instant::checked_add`] for a version without panic.", - &["_self", "other"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::std::time::Instant>| { - let output: () = { - { - let output: () = <::std::time::Instant as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::std::time::Instant>| { - let output: V<::std::time::Instant> = { - { - let output: V<::std::time::Instant> = <::std::time::Instant as ::core::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "duration_since", - |_self: R<::std::time::Instant>, earlier: V<::std::time::Instant>| { - let output: V<::core::time::Duration> = { - { - let output: V<::core::time::Duration> = ::std::time::Instant::duration_since( - &_self, - earlier.into_inner(), - ) - .into(); - output - } - }; - output - }, - " Returns the amount of time elapsed from another instant to this one,\n or zero duration if that instant is later than this one.\n # Panics\n Previous Rust versions panicked when `earlier` was later than `self`. Currently this\n method saturates. Future versions may reintroduce the panic in some circumstances.\n See [Monotonicity].\n [Monotonicity]: Instant#monotonicity\n # Examples\n ```no_run\n use std::time::{Duration, Instant};\n use std::thread::sleep;\n let now = Instant::now();\n sleep(Duration::new(1, 0));\n let new_now = Instant::now();\n println!(\"{:?}\", new_now.duration_since(now));\n println!(\"{:?}\", now.duration_since(new_now)); // 0ns\n ```", - &["_self", "earlier"], - ) - .register_documented( - "elapsed", - |_self: R<::std::time::Instant>| { - let output: V<::core::time::Duration> = { - { - let output: V<::core::time::Duration> = ::std::time::Instant::elapsed( - &_self, - ) - .into(); - output - } - }; - output - }, - " Returns the amount of time elapsed since this instant.\n # Panics\n Previous Rust versions panicked when the current time was earlier than self. Currently this\n method returns a Duration of zero in that case. Future versions may reintroduce the panic.\n See [Monotonicity].\n [Monotonicity]: Instant#monotonicity\n # Examples\n ```no_run\n use std::thread::sleep;\n use std::time::{Duration, Instant};\n let instant = Instant::now();\n let three_secs = Duration::from_secs(3);\n sleep(three_secs);\n assert!(instant.elapsed() >= three_secs);\n ```", - &["_self"], - ) - .register_documented( - "eq", - |_self: R<::std::time::Instant>, other: R<::std::time::Instant>| { - let output: bool = { - { - let output: bool = <::std::time::Instant as ::core::cmp::PartialEq< - ::std::time::Instant, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "now", - || { - let output: V<::std::time::Instant> = { - { - let output: V<::std::time::Instant> = ::std::time::Instant::now() - .into(); - output - } - }; - output - }, - " Returns an instant corresponding to \"now\".\n # Examples\n ```\n use std::time::Instant;\n let now = Instant::now();\n ```", - &[], - ) - .register_documented( - "saturating_duration_since", - |_self: R<::std::time::Instant>, earlier: V<::std::time::Instant>| { - let output: V<::core::time::Duration> = { - { - let output: V<::core::time::Duration> = ::std::time::Instant::saturating_duration_since( - &_self, - earlier.into_inner(), - ) - .into(); - output - } - }; - output - }, - " Returns the amount of time elapsed from another instant to this one,\n or zero duration if that instant is later than this one.\n # Examples\n ```no_run\n use std::time::{Duration, Instant};\n use std::thread::sleep;\n let now = Instant::now();\n sleep(Duration::new(1, 0));\n let new_now = Instant::now();\n println!(\"{:?}\", new_now.saturating_duration_since(now));\n println!(\"{:?}\", now.saturating_duration_since(new_now)); // 0ns\n ```", - &["_self", "earlier"], - ) - .register_documented( - "sub", - |_self: V<::std::time::Instant>, other: V<::core::time::Duration>| { - let output: V<::std::time::Instant> = { - { - let output: V<::std::time::Instant> = <::std::time::Instant as ::core::ops::Sub< - ::core::time::Duration, - >>::sub(_self.into_inner(), other.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "sub", - |_self: V<::std::time::Instant>, other: V<::std::time::Instant>| { - let output: V<::core::time::Duration> = { - { - let output: V<::core::time::Duration> = <::std::time::Instant as ::core::ops::Sub< - ::std::time::Instant, - >>::sub(_self.into_inner(), other.into_inner()) - .into(); - output - } - }; - output - }, - " Returns the amount of time elapsed from another instant to this one,\n or zero duration if that instant is later than this one.\n # Panics\n Previous Rust versions panicked when `other` was later than `self`. Currently this\n method saturates. Future versions may reintroduce the panic in some circumstances.\n See [Monotonicity].\n [Monotonicity]: Instant#monotonicity", - &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::<::std::time::Instant, bevy_mod_scripting_bindings::MarkAsGenerated>(); -} -pub(crate) fn register_range_full_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::core::ops::RangeFull, - >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::core::ops::RangeFull>| { - let output: () = { - { - let output: () = <::core::ops::RangeFull as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::core::ops::RangeFull>| { - let output: V<::core::ops::RangeFull> = { + "neg", + |_self: V<::glam::Quat>| { + let output: V<::glam::Quat> = { { - let output: V<::core::ops::RangeFull> = <::core::ops::RangeFull as ::core::clone::Clone>::clone( - &_self, + let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Neg>::neg( + _self.into_inner(), ) .into(); output @@ -1314,100 +954,31 @@ pub(crate) fn register_range_full_functions(world: &mut World) { &["_self"], ) .register_documented( - "eq", - |_self: R<::core::ops::RangeFull>, other: R<::core::ops::RangeFull>| { - let output: bool = { + "normalize", + |_self: V<::glam::Quat>| { + let output: V<::glam::Quat> = { { - let output: bool = <::core::ops::RangeFull as ::core::cmp::PartialEq< - ::core::ops::RangeFull, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::<::core::ops::RangeFull, bevy_mod_scripting_bindings::MarkAsGenerated>( - ); -} -pub(crate) fn register_type_id_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::core::any::TypeId>::new( - world, - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::core::any::TypeId>| { - let output: () = { - { - let output: () = - <::core::any::TypeId as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::core::any::TypeId>| { - let output: V<::core::any::TypeId> = { - { - let output: V<::core::any::TypeId> = - <::core::any::TypeId as ::core::clone::Clone>::clone(&_self).into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - |_self: R<::core::any::TypeId>, other: R<::core::any::TypeId>| { - let output: bool = { - { - let output: bool = <::core::any::TypeId as ::core::cmp::PartialEq< - ::core::any::TypeId, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::<::core::any::TypeId, bevy_mod_scripting_bindings::MarkAsGenerated>(); -} -pub(crate) fn register_quat_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::glam::Quat, - >::new(world) + let output: V<::glam::Quat> = ::glam::Quat::normalize( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns `self` normalized to length 1.0.\n For valid results, `self` must _not_ be of length zero.\n Panics\n Will panic if `self` is zero length when `glam_assert` is enabled.", + &["_self"], + ) .register_documented( - "abs_diff_eq", - |_self: V<::glam::Quat>, rhs: V<::glam::Quat>, max_abs_diff: f32| { - let output: bool = { + "rotate_towards", + |_self: V<::glam::Quat>, rhs: V<::glam::Quat>, max_angle: f32| { + let output: V<::glam::Quat> = { { - let output: bool = ::glam::Quat::abs_diff_eq( + let output: V<::glam::Quat> = ::glam::Quat::rotate_towards( _self.into_inner(), rhs.into_inner(), - max_abs_diff, + max_angle, ) .into(); output @@ -1415,17 +986,36 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Returns true if the absolute difference of all elements between `self` and `rhs`\n is less than or equal to `max_abs_diff`.\n This can be used to compare if two quaternions contain similar elements. It works\n best when comparing with a known value. The `max_abs_diff` that should be used used\n depends on the values being compared against.\n For more see\n [comparing floating point numbers](https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/).", - &["_self", "rhs", "max_abs_diff"], + " Rotates towards `rhs` up to `max_angle` (in radians).\n When `max_angle` is `0.0`, the result will be equal to `self`. When `max_angle` is equal to\n `self.angle_between(rhs)`, the result will be equal to `rhs`. If `max_angle` is negative,\n rotates towards the exact opposite of `rhs`. Will not go past the target.\n Both quaternions must be normalized.\n # Panics\n Will panic if `self` or `rhs` are not normalized when `glam_assert` is enabled.", + &["_self", "rhs", "max_angle"], ) .register_documented( - "add", + "slerp", + |_self: V<::glam::Quat>, end: V<::glam::Quat>, s: f32| { + let output: V<::glam::Quat> = { + { + let output: V<::glam::Quat> = ::glam::Quat::slerp( + _self.into_inner(), + end.into_inner(), + s, + ) + .into(); + output + } + }; + output + }, + " Performs a spherical linear interpolation between `self` and `end`\n based on the value `s`.\n When `s` is `0.0`, the result will be equal to `self`. When `s`\n is `1.0`, the result will be equal to `end`.\n # Panics\n Will panic if `self` or `end` are not normalized when `glam_assert` is enabled.", + &["_self", "end", "s"], + ) + .register_documented( + "sub", |_self: V<::glam::Quat>, rhs: R<::glam::Quat>| { let output: V<::glam::Quat> = { { - let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Add< + let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Sub< &::glam::Quat, - >>::add(_self.into_inner(), &rhs) + >>::sub(_self.into_inner(), &rhs) .into(); output } @@ -1436,30 +1026,45 @@ pub(crate) fn register_quat_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "add", + "sub", |_self: V<::glam::Quat>, rhs: V<::glam::Quat>| { let output: V<::glam::Quat> = { { - let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Add< + let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Sub< ::glam::Quat, - >>::add(_self.into_inner(), rhs.into_inner()) + >>::sub(_self.into_inner(), rhs.into_inner()) .into(); output } }; output }, - " Adds two quaternions.\n The sum is not guaranteed to be normalized.\n Note that addition is not the same as combining the rotations represented by the\n two quaternions! That corresponds to multiplication.", + " Subtracts the `rhs` quaternion from `self`.\n The difference is not guaranteed to be normalized.", &["_self", "rhs"], ) .register_documented( - "angle_between", - |_self: V<::glam::Quat>, rhs: V<::glam::Quat>| { - let output: f32 = { + "to_array", + |_self: V<::glam::Quat>| { + let output: [f32; 4] = { { - let output: f32 = ::glam::Quat::angle_between( + let output: [f32; 4] = ::glam::Quat::to_array(_self.into_inner()) + .into(); + output + } + }; + output + }, + " `[x, y, z, w]`", + &["_self"], + ) + .register_documented( + "to_euler", + |_self: V<::glam::Quat>, order: V<::glam::EulerRot>| { + let output: (f32, f32, f32) = { + { + let output: (f32, f32, f32) = ::glam::Quat::to_euler( _self.into_inner(), - rhs.into_inner(), + order.into_inner(), ) .into(); output @@ -1467,15 +1072,15 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Returns the angle (in radians) for the minimal rotation\n for transforming this quaternion into another.\n Both quaternions must be normalized.\n # Panics\n Will panic if `self` or `rhs` are not normalized when `glam_assert` is enabled.", - &["_self", "rhs"], + " Returns the rotation angles for the given euler rotation sequence.", + &["_self", "order"], ) .register_documented( - "as_dquat", + "to_scaled_axis", |_self: V<::glam::Quat>| { - let output: V<::glam::DQuat> = { + let output: V<::glam::Vec3> = { { - let output: V<::glam::DQuat> = ::glam::Quat::as_dquat( + let output: V<::glam::Vec3> = ::glam::Quat::to_scaled_axis( _self.into_inner(), ) .into(); @@ -1484,16 +1089,16 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - "", + " Returns the rotation axis scaled by the rotation in radians.", &["_self"], ) .register_documented( - "clone", - |_self: R<::glam::Quat>| { - let output: V<::glam::Quat> = { + "xyz", + |_self: V<::glam::Quat>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = <::glam::Quat as ::core::clone::Clone>::clone( - &_self, + let output: V<::glam::Vec3> = ::glam::Quat::xyz( + _self.into_inner(), ) .into(); output @@ -1501,15 +1106,23 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - "", + " Returns the vector part of the quaternion.", &["_self"], - ) + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry.register_type_data::<::glam::Quat, bevy_mod_scripting_bindings::MarkAsGenerated>(); +} +pub(crate) fn register_vec_3_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::glam::Vec3, + >::new(world) .register_documented( - "conjugate", - |_self: V<::glam::Quat>| { - let output: V<::glam::Quat> = { + "abs", + |_self: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::conjugate( + let output: V<::glam::Vec3> = ::glam::Vec3::abs( _self.into_inner(), ) .into(); @@ -1518,52 +1131,70 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Returns the quaternion conjugate of `self`. For a unit quaternion the\n conjugate is also the inverse.", + " Returns a vector containing the absolute value of each element of `self`.", &["_self"], ) .register_documented( - "div", - |_self: V<::glam::Quat>, rhs: f32| { - let output: V<::glam::Quat> = { + "abs_diff_eq", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>, max_abs_diff: f32| { + let output: bool = { { - let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Div< - f32, - >>::div(_self.into_inner(), rhs) + let output: bool = ::glam::Vec3::abs_diff_eq( + _self.into_inner(), + rhs.into_inner(), + max_abs_diff, + ) .into(); output } }; output }, - " Divides a quaternion by a scalar value.\n The quotient is not guaranteed to be normalized.", + " Returns true if the absolute difference of all elements between `self` and `rhs` is\n less than or equal to `max_abs_diff`.\n This can be used to compare if two vectors contain similar elements. It works best when\n comparing with a known value. The `max_abs_diff` that should be used used depends on\n the values being compared against.\n For more see\n [comparing floating point numbers](https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/).", + &["_self", "rhs", "max_abs_diff"], + ) + .register_documented( + "add", + |_self: V<::glam::Vec3>, rhs: R<::glam::Vec3>| { + let output: V<::glam::Vec3> = { + { + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Add< + &::glam::Vec3, + >>::add(_self.into_inner(), &rhs) + .into(); + output + } + }; + output + }, + "", &["_self", "rhs"], ) .register_documented( - "dot", - |_self: V<::glam::Quat>, rhs: V<::glam::Quat>| { - let output: f32 = { + "add", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: f32 = ::glam::Quat::dot( - _self.into_inner(), - rhs.into_inner(), - ) + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Add< + ::glam::Vec3, + >>::add(_self.into_inner(), rhs.into_inner()) .into(); output } }; output }, - " Computes the dot product of `self` and `rhs`. The dot product is\n equal to the cosine of the angle between two quaternion rotations.", + "", &["_self", "rhs"], ) .register_documented( - "eq", - |_self: R<::glam::Quat>, rhs: R<::glam::Quat>| { - let output: bool = { + "add", + |_self: V<::glam::Vec3>, rhs: f32| { + let output: V<::glam::Vec3> = { { - let output: bool = <::glam::Quat as ::core::cmp::PartialEq< - ::glam::Quat, - >>::eq(&_self, &rhs) + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Add< + f32, + >>::add(_self.into_inner(), rhs) .into(); output } @@ -1574,42 +1205,47 @@ pub(crate) fn register_quat_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "from_affine3", - |a: R<::glam::Affine3A>| { - let output: V<::glam::Quat> = { + "angle_between", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: f32 = { { - let output: V<::glam::Quat> = ::glam::Quat::from_affine3(&a) + let output: f32 = ::glam::Vec3::angle_between( + _self.into_inner(), + rhs.into_inner(), + ) .into(); output } }; output }, - " Creates a quaternion from a 3x3 rotation matrix inside a 3D affine transform.\n Note if the input affine matrix contain scales, shears, or other non-rotation\n transformations then the resulting quaternion will be ill-defined.\n # Panics\n Will panic if any input affine matrix column is not normalized when `glam_assert` is\n enabled.", - &["a"], + " Returns the angle (in radians) between two vectors in the range `[0, +π]`.\n The inputs do not need to be unit vectors however they must be non-zero.", + &["_self", "rhs"], ) .register_documented( - "from_array", - |a: [f32; 4]| { - let output: V<::glam::Quat> = { + "any_orthogonal_vector", + |_self: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_array(a).into(); + let output: V<::glam::Vec3> = ::glam::Vec3::any_orthogonal_vector( + _self.into_inner(), + ) + .into(); output } }; output }, - " Creates a rotation quaternion from an array.\n # Preconditions\n This function does not check if the input is normalized, it is up to the user to\n provide normalized input or to normalized the resulting quaternion.", - &["a"], + " Returns some vector that is orthogonal to the given one.\n The input vector must be finite and non-zero.\n The output vector is not necessarily unit length. For that use\n [`Self::any_orthonormal_vector()`] instead.", + &["_self"], ) .register_documented( - "from_axis_angle", - |axis: V<::glam::Vec3>, angle: f32| { - let output: V<::glam::Quat> = { + "any_orthonormal_vector", + |_self: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_axis_angle( - axis.into_inner(), - angle, + let output: V<::glam::Vec3> = ::glam::Vec3::any_orthonormal_vector( + _self.into_inner(), ) .into(); output @@ -1617,19 +1253,16 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Create a quaternion for a normalized rotation `axis` and `angle` (in radians).\n The axis must be a unit vector.\n # Panics\n Will panic if `axis` is not normalized when `glam_assert` is enabled.", - &["axis", "angle"], + " Returns any unit vector that is orthogonal to the given one.\n The input vector must be unit length.\n # Panics\n Will panic if `self` is not normalized when `glam_assert` is enabled.", + &["_self"], ) .register_documented( - "from_euler", - |euler: V<::glam::EulerRot>, a: f32, b: f32, c: f32| { - let output: V<::glam::Quat> = { + "as_dvec3", + |_self: V<::glam::Vec3>| { + let output: V<::glam::DVec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_euler( - euler.into_inner(), - a, - b, - c, + let output: V<::glam::DVec3> = ::glam::Vec3::as_dvec3( + _self.into_inner(), ) .into(); output @@ -1637,62 +1270,67 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Creates a quaternion from the given Euler rotation sequence and the angles (in radians).", - &["euler", "a", "b", "c"], + " Casts all elements of `self` to `f64`.", + &["_self"], ) .register_documented( - "from_mat3", - |mat: R<::glam::Mat3>| { - let output: V<::glam::Quat> = { + "as_i16vec3", + |_self: V<::glam::Vec3>| { + let output: V<::glam::I16Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_mat3(&mat) + let output: V<::glam::I16Vec3> = ::glam::Vec3::as_i16vec3( + _self.into_inner(), + ) .into(); output } }; output }, - " Creates a quaternion from a 3x3 rotation matrix.\n Note if the input matrix contain scales, shears, or other non-rotation transformations then\n the resulting quaternion will be ill-defined.\n # Panics\n Will panic if any input matrix column is not normalized when `glam_assert` is enabled.", - &["mat"], + " Casts all elements of `self` to `i16`.", + &["_self"], ) .register_documented( - "from_mat3a", - |mat: R<::glam::Mat3A>| { - let output: V<::glam::Quat> = { + "as_i64vec3", + |_self: V<::glam::Vec3>| { + let output: V<::glam::I64Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_mat3a(&mat) + let output: V<::glam::I64Vec3> = ::glam::Vec3::as_i64vec3( + _self.into_inner(), + ) .into(); output } }; output }, - " Creates a quaternion from a 3x3 SIMD aligned rotation matrix.\n Note if the input matrix contain scales, shears, or other non-rotation transformations then\n the resulting quaternion will be ill-defined.\n # Panics\n Will panic if any input matrix column is not normalized when `glam_assert` is enabled.", - &["mat"], + " Casts all elements of `self` to `i64`.", + &["_self"], ) .register_documented( - "from_mat4", - |mat: R<::glam::Mat4>| { - let output: V<::glam::Quat> = { + "as_i8vec3", + |_self: V<::glam::Vec3>| { + let output: V<::glam::I8Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_mat4(&mat) + let output: V<::glam::I8Vec3> = ::glam::Vec3::as_i8vec3( + _self.into_inner(), + ) .into(); output } }; output }, - " Creates a quaternion from the upper 3x3 rotation matrix inside a homogeneous 4x4 matrix.\n Note if the upper 3x3 matrix contain scales, shears, or other non-rotation transformations\n then the resulting quaternion will be ill-defined.\n # Panics\n Will panic if any column of the upper 3x3 rotation matrix is not normalized when\n `glam_assert` is enabled.", - &["mat"], + " Casts all elements of `self` to `i8`.", + &["_self"], ) .register_documented( - "from_rotation_arc", - |from: V<::glam::Vec3>, to: V<::glam::Vec3>| { - let output: V<::glam::Quat> = { + "as_ivec3", + |_self: V<::glam::Vec3>| { + let output: V<::glam::IVec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_rotation_arc( - from.into_inner(), - to.into_inner(), + let output: V<::glam::IVec3> = ::glam::Vec3::as_ivec3( + _self.into_inner(), ) .into(); output @@ -1700,17 +1338,16 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Gets the minimal rotation for transforming `from` to `to`. The rotation is in the\n plane spanned by the two vectors. Will rotate at most 180 degrees.\n The inputs must be unit vectors.\n `from_rotation_arc(from, to) * from ≈ to`.\n For near-singular cases (from≈to and from≈-to) the current implementation\n is only accurate to about 0.001 (for `f32`).\n # Panics\n Will panic if `from` or `to` are not normalized when `glam_assert` is enabled.", - &["from", "to"], + " Casts all elements of `self` to `i32`.", + &["_self"], ) .register_documented( - "from_rotation_arc_2d", - |from: V<::glam::Vec2>, to: V<::glam::Vec2>| { - let output: V<::glam::Quat> = { + "as_u16vec3", + |_self: V<::glam::Vec3>| { + let output: V<::glam::U16Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_rotation_arc_2d( - from.into_inner(), - to.into_inner(), + let output: V<::glam::U16Vec3> = ::glam::Vec3::as_u16vec3( + _self.into_inner(), ) .into(); output @@ -1718,17 +1355,16 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Gets the minimal rotation for transforming `from` to `to`. The resulting rotation is\n around the z axis. Will rotate at most 180 degrees.\n The inputs must be unit vectors.\n `from_rotation_arc_2d(from, to) * from ≈ to`.\n For near-singular cases (from≈to and from≈-to) the current implementation\n is only accurate to about 0.001 (for `f32`).\n # Panics\n Will panic if `from` or `to` are not normalized when `glam_assert` is enabled.", - &["from", "to"], + " Casts all elements of `self` to `u16`.", + &["_self"], ) .register_documented( - "from_rotation_arc_colinear", - |from: V<::glam::Vec3>, to: V<::glam::Vec3>| { - let output: V<::glam::Quat> = { + "as_u64vec3", + |_self: V<::glam::Vec3>| { + let output: V<::glam::U64Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_rotation_arc_colinear( - from.into_inner(), - to.into_inner(), + let output: V<::glam::U64Vec3> = ::glam::Vec3::as_u64vec3( + _self.into_inner(), ) .into(); output @@ -1736,16 +1372,16 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Gets the minimal rotation for transforming `from` to either `to` or `-to`. This means\n that the resulting quaternion will rotate `from` so that it is colinear with `to`.\n The rotation is in the plane spanned by the two vectors. Will rotate at most 90\n degrees.\n The inputs must be unit vectors.\n `to.dot(from_rotation_arc_colinear(from, to) * from).abs() ≈ 1`.\n # Panics\n Will panic if `from` or `to` are not normalized when `glam_assert` is enabled.", - &["from", "to"], + " Casts all elements of `self` to `u64`.", + &["_self"], ) .register_documented( - "from_rotation_x", - |angle: f32| { - let output: V<::glam::Quat> = { + "as_u8vec3", + |_self: V<::glam::Vec3>| { + let output: V<::glam::U8Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_rotation_x( - angle, + let output: V<::glam::U8Vec3> = ::glam::Vec3::as_u8vec3( + _self.into_inner(), ) .into(); output @@ -1753,16 +1389,16 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Creates a quaternion from the `angle` (in radians) around the x axis.", - &["angle"], + " Casts all elements of `self` to `u8`.", + &["_self"], ) .register_documented( - "from_rotation_y", - |angle: f32| { - let output: V<::glam::Quat> = { + "as_uvec3", + |_self: V<::glam::Vec3>| { + let output: V<::glam::UVec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_rotation_y( - angle, + let output: V<::glam::UVec3> = ::glam::Vec3::as_uvec3( + _self.into_inner(), ) .into(); output @@ -1770,16 +1406,16 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Creates a quaternion from the `angle` (in radians) around the y axis.", - &["angle"], + " Casts all elements of `self` to `u32`.", + &["_self"], ) .register_documented( - "from_rotation_z", - |angle: f32| { - let output: V<::glam::Quat> = { + "ceil", + |_self: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_rotation_z( - angle, + let output: V<::glam::Vec3> = ::glam::Vec3::ceil( + _self.into_inner(), ) .into(); output @@ -1787,16 +1423,18 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Creates a quaternion from the `angle` (in radians) around the z axis.", - &["angle"], + " Returns a vector containing the smallest integer greater than or equal to a number for\n each element of `self`.", + &["_self"], ) .register_documented( - "from_scaled_axis", - |v: V<::glam::Vec3>| { - let output: V<::glam::Quat> = { + "clamp", + |_self: V<::glam::Vec3>, min: V<::glam::Vec3>, max: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_scaled_axis( - v.into_inner(), + let output: V<::glam::Vec3> = ::glam::Vec3::clamp( + _self.into_inner(), + min.into_inner(), + max.into_inner(), ) .into(); output @@ -1804,16 +1442,18 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Create a quaternion that rotates `v.length()` radians around `v.normalize()`.\n `from_scaled_axis(Vec3::ZERO)` results in the identity quaternion.", - &["v"], + " Component-wise clamping of values, similar to [`f32::clamp`].\n Each element in `min` must be less-or-equal to the corresponding element in `max`.\n NaN propogation does not follow IEEE 754-2008 semantics and may differ on\n different SIMD architectures.\n # Panics\n Will panic if `min` is greater than `max` when `glam_assert` is enabled.", + &["_self", "min", "max"], ) .register_documented( - "from_vec4", - |v: V<::glam::Vec4>| { - let output: V<::glam::Quat> = { + "clamp_length", + |_self: V<::glam::Vec3>, min: f32, max: f32| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_vec4( - v.into_inner(), + let output: V<::glam::Vec3> = ::glam::Vec3::clamp_length( + _self.into_inner(), + min, + max, ) .into(); output @@ -1821,31 +1461,35 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Creates a new rotation quaternion from a 4D vector.\n # Preconditions\n This function does not check if the input is normalized, it is up to the user to\n provide normalized input or to normalized the resulting quaternion.", - &["v"], + " Returns a vector with a length no less than `min` and no more than `max`.\n # Panics\n Will panic if `min` is greater than `max`, or if either `min` or `max` is negative, when `glam_assert` is enabled.", + &["_self", "min", "max"], ) .register_documented( - "from_xyzw", - |x: f32, y: f32, z: f32, w: f32| { - let output: V<::glam::Quat> = { + "clamp_length_max", + |_self: V<::glam::Vec3>, max: f32| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::from_xyzw(x, y, z, w) + let output: V<::glam::Vec3> = ::glam::Vec3::clamp_length_max( + _self.into_inner(), + max, + ) .into(); output } }; output }, - " Creates a new rotation quaternion.\n This should generally not be called manually unless you know what you are doing.\n Use one of the other constructors instead such as `identity` or `from_axis_angle`.\n `from_xyzw` is mostly used by unit tests and `serde` deserialization.\n # Preconditions\n This function does not check if the input is normalized, it is up to the user to\n provide normalized input or to normalized the resulting quaternion.", - &["x", "y", "z", "w"], + " Returns a vector with a length no more than `max`.\n # Panics\n Will panic if `max` is negative when `glam_assert` is enabled.", + &["_self", "max"], ) .register_documented( - "inverse", - |_self: V<::glam::Quat>| { - let output: V<::glam::Quat> = { + "clamp_length_min", + |_self: V<::glam::Vec3>, min: f32| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::inverse( + let output: V<::glam::Vec3> = ::glam::Vec3::clamp_length_min( _self.into_inner(), + min, ) .into(); output @@ -1853,46 +1497,52 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Returns the inverse of a normalized quaternion.\n Typically quaternion inverse returns the conjugate of a normalized quaternion.\n Because `self` is assumed to already be unit length this method *does not* normalize\n before returning the conjugate.\n # Panics\n Will panic if `self` is not normalized when `glam_assert` is enabled.", - &["_self"], + " Returns a vector with a length no less than `min`.\n # Panics\n Will panic if `min` is negative when `glam_assert` is enabled.", + &["_self", "min"], ) .register_documented( - "is_finite", - |_self: V<::glam::Quat>| { - let output: bool = { + "clone", + |_self: R<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: bool = ::glam::Quat::is_finite(_self.into_inner()) + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::clone::Clone>::clone( + &_self, + ) .into(); output } }; output }, - " Returns `true` if, and only if, all elements are finite.\n If any element is either `NaN`, positive or negative infinity, this will return `false`.", + "", &["_self"], ) .register_documented( - "is_nan", - |_self: V<::glam::Quat>| { - let output: bool = { + "cmpeq", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::BVec3> = { { - let output: bool = ::glam::Quat::is_nan(_self.into_inner()) + let output: V<::glam::BVec3> = ::glam::Vec3::cmpeq( + _self.into_inner(), + rhs.into_inner(), + ) .into(); output } }; output }, - " Returns `true` if any elements are `NAN`.", - &["_self"], + " Returns a vector mask containing the result of a `==` comparison for each element of\n `self` and `rhs`.\n In other words, this computes `[self.x == rhs.x, self.y == rhs.y, ..]` for all\n elements.", + &["_self", "rhs"], ) .register_documented( - "is_near_identity", - |_self: V<::glam::Quat>| { - let output: bool = { + "cmpge", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::BVec3> = { { - let output: bool = ::glam::Quat::is_near_identity( + let output: V<::glam::BVec3> = ::glam::Vec3::cmpge( _self.into_inner(), + rhs.into_inner(), ) .into(); output @@ -1900,16 +1550,17 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - "", - &["_self"], + " Returns a vector mask containing the result of a `>=` comparison for each element of\n `self` and `rhs`.\n In other words this computes `[self.x >= rhs.x, self.y >= rhs.y, ..]` for all\n elements.", + &["_self", "rhs"], ) .register_documented( - "is_normalized", - |_self: V<::glam::Quat>| { - let output: bool = { + "cmpgt", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::BVec3> = { { - let output: bool = ::glam::Quat::is_normalized( + let output: V<::glam::BVec3> = ::glam::Vec3::cmpgt( _self.into_inner(), + rhs.into_inner(), ) .into(); output @@ -1917,46 +1568,71 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Returns whether `self` of length `1.0` or not.\n Uses a precision threshold of `1e-6`.", - &["_self"], + " Returns a vector mask containing the result of a `>` comparison for each element of\n `self` and `rhs`.\n In other words this computes `[self.x > rhs.x, self.y > rhs.y, ..]` for all\n elements.", + &["_self", "rhs"], ) .register_documented( - "length", - |_self: V<::glam::Quat>| { - let output: f32 = { + "cmple", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::BVec3> = { { - let output: f32 = ::glam::Quat::length(_self.into_inner()) + let output: V<::glam::BVec3> = ::glam::Vec3::cmple( + _self.into_inner(), + rhs.into_inner(), + ) .into(); output } }; output }, - " Computes the length of `self`.", - &["_self"], + " Returns a vector mask containing the result of a `<=` comparison for each element of\n `self` and `rhs`.\n In other words this computes `[self.x <= rhs.x, self.y <= rhs.y, ..]` for all\n elements.", + &["_self", "rhs"], + ) + .register_documented( + "cmplt", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::BVec3> = { + { + let output: V<::glam::BVec3> = ::glam::Vec3::cmplt( + _self.into_inner(), + rhs.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector mask containing the result of a `<` comparison for each element of\n `self` and `rhs`.\n In other words this computes `[self.x < rhs.x, self.y < rhs.y, ..]` for all\n elements.", + &["_self", "rhs"], ) .register_documented( - "length_recip", - |_self: V<::glam::Quat>| { - let output: f32 = { + "cmpne", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::BVec3> = { { - let output: f32 = ::glam::Quat::length_recip(_self.into_inner()) + let output: V<::glam::BVec3> = ::glam::Vec3::cmpne( + _self.into_inner(), + rhs.into_inner(), + ) .into(); output } }; output }, - " Computes `1.0 / length()`.\n For valid results, `self` must _not_ be of length zero.", - &["_self"], + " Returns a vector mask containing the result of a `!=` comparison for each element of\n `self` and `rhs`.\n In other words this computes `[self.x != rhs.x, self.y != rhs.y, ..]` for all\n elements.", + &["_self", "rhs"], ) .register_documented( - "length_squared", - |_self: V<::glam::Quat>| { - let output: f32 = { + "copysign", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: f32 = ::glam::Quat::length_squared( + let output: V<::glam::Vec3> = ::glam::Vec3::copysign( _self.into_inner(), + rhs.into_inner(), ) .into(); output @@ -1964,18 +1640,16 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Computes the squared length of `self`.\n This is generally faster than `length()` as it avoids a square\n root operation.", - &["_self"], + " Returns a vector with signs of `rhs` and the magnitudes of `self`.", + &["_self", "rhs"], ) .register_documented( - "lerp", - |_self: V<::glam::Quat>, end: V<::glam::Quat>, s: f32| { - let output: V<::glam::Quat> = { + "cos", + |_self: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::lerp( + let output: V<::glam::Vec3> = ::glam::Vec3::cos( _self.into_inner(), - end.into_inner(), - s, ) .into(); output @@ -1983,18 +1657,17 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Performs a linear interpolation between `self` and `rhs` based on\n the value `s`.\n When `s` is `0.0`, the result will be equal to `self`. When `s`\n is `1.0`, the result will be equal to `rhs`.\n # Panics\n Will panic if `self` or `end` are not normalized when `glam_assert` is enabled.", - &["_self", "end", "s"], + " Returns a vector containing the cosine for each element of `self`.", + &["_self"], ) .register_documented( - "look_at_lh", - |eye: V<::glam::Vec3>, center: V<::glam::Vec3>, up: V<::glam::Vec3>| { - let output: V<::glam::Quat> = { + "cross", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::look_at_lh( - eye.into_inner(), - center.into_inner(), - up.into_inner(), + let output: V<::glam::Vec3> = ::glam::Vec3::cross( + _self.into_inner(), + rhs.into_inner(), ) .into(); output @@ -2002,18 +1675,17 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Creates a left-handed view matrix using a camera position, a focal point, and an up\n direction.\n For a left-handed view coordinate system with `+X=right`, `+Y=up` and `+Z=forward`.\n # Panics\n Will panic if `up` is not normalized when `glam_assert` is enabled.", - &["eye", "center", "up"], + " Computes the cross product of `self` and `rhs`.", + &["_self", "rhs"], ) .register_documented( - "look_at_rh", - |eye: V<::glam::Vec3>, center: V<::glam::Vec3>, up: V<::glam::Vec3>| { - let output: V<::glam::Quat> = { + "distance", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: f32 = { { - let output: V<::glam::Quat> = ::glam::Quat::look_at_rh( - eye.into_inner(), - center.into_inner(), - up.into_inner(), + let output: f32 = ::glam::Vec3::distance( + _self.into_inner(), + rhs.into_inner(), ) .into(); output @@ -2021,17 +1693,17 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Creates a right-handed view matrix using a camera position, an up direction, and a focal\n point.\n For a right-handed view coordinate system with `+X=right`, `+Y=up` and `+Z=back`.\n # Panics\n Will panic if `up` is not normalized when `glam_assert` is enabled.", - &["eye", "center", "up"], + " Computes the Euclidean distance between two points in space.", + &["_self", "rhs"], ) .register_documented( - "look_to_lh", - |dir: V<::glam::Vec3>, up: V<::glam::Vec3>| { - let output: V<::glam::Quat> = { + "distance_squared", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: f32 = { { - let output: V<::glam::Quat> = ::glam::Quat::look_to_lh( - dir.into_inner(), - up.into_inner(), + let output: f32 = ::glam::Vec3::distance_squared( + _self.into_inner(), + rhs.into_inner(), ) .into(); output @@ -2039,35 +1711,34 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Creates a quaterion rotation from a facing direction and an up direction.\n For a left-handed view coordinate system with `+X=right`, `+Y=up` and `+Z=forward`.\n # Panics\n Will panic if `up` is not normalized when `glam_assert` is enabled.", - &["dir", "up"], + " Compute the squared euclidean distance between two points in space.", + &["_self", "rhs"], ) .register_documented( - "look_to_rh", - |dir: V<::glam::Vec3>, up: V<::glam::Vec3>| { - let output: V<::glam::Quat> = { + "div", + |_self: V<::glam::Vec3>, rhs: R<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::look_to_rh( - dir.into_inner(), - up.into_inner(), - ) + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Div< + &::glam::Vec3, + >>::div(_self.into_inner(), &rhs) .into(); output } }; output }, - " Creates a quaterion rotation from facing direction and an up direction.\n For a right-handed view coordinate system with `+X=right`, `+Y=up` and `+Z=back`.\n # Panics\n Will panic if `dir` and `up` are not normalized when `glam_assert` is enabled.", - &["dir", "up"], + "", + &["_self", "rhs"], ) .register_documented( - "mul", - |_self: V<::glam::Quat>, rhs: R<::glam::Quat>| { - let output: V<::glam::Quat> = { + "div", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Mul< - &::glam::Quat, - >>::mul(_self.into_inner(), &rhs) + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Div< + ::glam::Vec3, + >>::div(_self.into_inner(), rhs.into_inner()) .into(); output } @@ -2078,13 +1749,13 @@ pub(crate) fn register_quat_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "mul", - |_self: V<::glam::Quat>, rhs: R<::glam::Vec3>| { + "div", + |_self: V<::glam::Vec3>, rhs: f32| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = <::glam::Quat as ::core::ops::Mul< - &::glam::Vec3, - >>::mul(_self.into_inner(), &rhs) + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Div< + f32, + >>::div(_self.into_inner(), rhs) .into(); output } @@ -2095,116 +1766,115 @@ pub(crate) fn register_quat_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "mul", - |_self: V<::glam::Quat>, rhs: R<::glam::Vec3A>| { - let output: V<::glam::Vec3A> = { + "div_euclid", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3A> = <::glam::Quat as ::core::ops::Mul< - &::glam::Vec3A, - >>::mul(_self.into_inner(), &rhs) + let output: V<::glam::Vec3> = ::glam::Vec3::div_euclid( + _self.into_inner(), + rhs.into_inner(), + ) .into(); output } }; output }, - "", + " Returns the element-wise quotient of [Euclidean division] of `self` by `rhs`.", &["_self", "rhs"], ) .register_documented( - "mul", - |_self: V<::glam::Quat>, rhs: V<::glam::Quat>| { - let output: V<::glam::Quat> = { + "dot", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: f32 = { { - let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Mul< - ::glam::Quat, - >>::mul(_self.into_inner(), rhs.into_inner()) + let output: f32 = ::glam::Vec3::dot( + _self.into_inner(), + rhs.into_inner(), + ) .into(); output } }; output }, - " Multiplies two quaternions. If they each represent a rotation, the result will\n represent the combined rotation.\n Note that due to floating point rounding the result may not be perfectly\n normalized.\n # Panics\n Will panic if `self` or `rhs` are not normalized when `glam_assert` is enabled.", + " Computes the dot product of `self` and `rhs`.", &["_self", "rhs"], ) .register_documented( - "mul", - |_self: V<::glam::Quat>, rhs: V<::glam::Vec3>| { + "dot_into_vec", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = <::glam::Quat as ::core::ops::Mul< - ::glam::Vec3, - >>::mul(_self.into_inner(), rhs.into_inner()) + let output: V<::glam::Vec3> = ::glam::Vec3::dot_into_vec( + _self.into_inner(), + rhs.into_inner(), + ) .into(); output } }; output }, - " Multiplies a quaternion and a 3D vector, returning the rotated vector.\n # Panics\n Will panic if `self` is not normalized when `glam_assert` is enabled.", + " Returns a vector where every component is the dot product of `self` and `rhs`.", &["_self", "rhs"], ) .register_documented( - "mul", - |_self: V<::glam::Quat>, rhs: V<::glam::Vec3A>| { - let output: V<::glam::Vec3A> = { + "element_product", + |_self: V<::glam::Vec3>| { + let output: f32 = { { - let output: V<::glam::Vec3A> = <::glam::Quat as ::core::ops::Mul< - ::glam::Vec3A, - >>::mul(_self.into_inner(), rhs.into_inner()) + let output: f32 = ::glam::Vec3::element_product( + _self.into_inner(), + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Returns the product of all elements of `self`.\n In other words, this computes `self.x * self.y * ..`.", + &["_self"], ) .register_documented( - "mul", - |_self: V<::glam::Quat>, rhs: f32| { - let output: V<::glam::Quat> = { + "element_sum", + |_self: V<::glam::Vec3>| { + let output: f32 = { { - let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) + let output: f32 = ::glam::Vec3::element_sum(_self.into_inner()) .into(); output } }; output }, - " Multiplies a quaternion by a scalar value.\n The product is not guaranteed to be normalized.", - &["_self", "rhs"], + " Returns the sum of all elements of `self`.\n In other words, this computes `self.x + self.y + ..`.", + &["_self"], ) .register_documented( - "mul_quat", - |_self: V<::glam::Quat>, rhs: V<::glam::Quat>| { - let output: V<::glam::Quat> = { + "eq", + |_self: R<::glam::Vec3>, other: R<::glam::Vec3>| { + let output: bool = { { - let output: V<::glam::Quat> = ::glam::Quat::mul_quat( - _self.into_inner(), - rhs.into_inner(), - ) + let output: bool = <::glam::Vec3 as ::core::cmp::PartialEq< + ::glam::Vec3, + >>::eq(&_self, &other) .into(); output } }; output }, - " Multiplies two quaternions. If they each represent a rotation, the result will\n represent the combined rotation.\n Note that due to floating point rounding the result may not be perfectly normalized.\n # Panics\n Will panic if `self` or `rhs` are not normalized when `glam_assert` is enabled.", - &["_self", "rhs"], + "", + &["_self", "other"], ) .register_documented( - "mul_vec3", - |_self: V<::glam::Quat>, rhs: V<::glam::Vec3>| { + "exp", + |_self: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Quat::mul_vec3( + let output: V<::glam::Vec3> = ::glam::Vec3::exp( _self.into_inner(), - rhs.into_inner(), ) .into(); output @@ -2212,17 +1882,16 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Multiplies a quaternion and a 3D vector, returning the rotated vector.\n # Panics\n Will panic if `self` is not normalized when `glam_assert` is enabled.", - &["_self", "rhs"], + " Returns a vector containing `e^self` (the exponential function) for each element of\n `self`.", + &["_self"], ) .register_documented( - "mul_vec3a", - |_self: V<::glam::Quat>, rhs: V<::glam::Vec3A>| { - let output: V<::glam::Vec3A> = { + "exp2", + |_self: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3A> = ::glam::Quat::mul_vec3a( + let output: V<::glam::Vec3> = ::glam::Vec3::exp2( _self.into_inner(), - rhs.into_inner(), ) .into(); output @@ -2230,16 +1899,17 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Multiplies a quaternion and a 3D vector, returning the rotated vector.", - &["_self", "rhs"], + " Returns a vector containing `2^self` for each element of `self`.", + &["_self"], ) .register_documented( - "neg", - |_self: V<::glam::Quat>| { - let output: V<::glam::Quat> = { + "extend", + |_self: V<::glam::Vec3>, w: f32| { + let output: V<::glam::Vec4> = { { - let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Neg>::neg( + let output: V<::glam::Vec4> = ::glam::Vec3::extend( _self.into_inner(), + w, ) .into(); output @@ -2247,15 +1917,15 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - "", - &["_self"], + " Creates a 4D vector from `self` and the given `w` value.", + &["_self", "w"], ) .register_documented( - "normalize", - |_self: V<::glam::Quat>| { - let output: V<::glam::Quat> = { + "floor", + |_self: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::normalize( + let output: V<::glam::Vec3> = ::glam::Vec3::floor( _self.into_inner(), ) .into(); @@ -2264,18 +1934,16 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Returns `self` normalized to length 1.0.\n For valid results, `self` must _not_ be of length zero.\n Panics\n Will panic if `self` is zero length when `glam_assert` is enabled.", + " Returns a vector containing the largest integer less than or equal to a number for each\n element of `self`.", &["_self"], ) .register_documented( - "rotate_towards", - |_self: R<::glam::Quat>, rhs: V<::glam::Quat>, max_angle: f32| { - let output: V<::glam::Quat> = { + "fract", + |_self: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::rotate_towards( - &_self, - rhs.into_inner(), - max_angle, + let output: V<::glam::Vec3> = ::glam::Vec3::fract( + _self.into_inner(), ) .into(); output @@ -2283,18 +1951,16 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Rotates towards `rhs` up to `max_angle` (in radians).\n When `max_angle` is `0.0`, the result will be equal to `self`. When `max_angle` is equal to\n `self.angle_between(rhs)`, the result will be equal to `rhs`. If `max_angle` is negative,\n rotates towards the exact opposite of `rhs`. Will not go past the target.\n Both quaternions must be normalized.\n # Panics\n Will panic if `self` or `rhs` are not normalized when `glam_assert` is enabled.", - &["_self", "rhs", "max_angle"], + " Returns a vector containing the fractional part of the vector as `self - self.trunc()`.\n Note that this differs from the GLSL implementation of `fract` which returns\n `self - self.floor()`.\n Note that this is fast but not precise for large numbers.", + &["_self"], ) .register_documented( - "slerp", - |_self: V<::glam::Quat>, end: V<::glam::Quat>, s: f32| { - let output: V<::glam::Quat> = { + "fract_gl", + |_self: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = ::glam::Quat::slerp( + let output: V<::glam::Vec3> = ::glam::Vec3::fract_gl( _self.into_inner(), - end.into_inner(), - s, ) .into(); output @@ -2302,65 +1968,62 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Performs a spherical linear interpolation between `self` and `end`\n based on the value `s`.\n When `s` is `0.0`, the result will be equal to `self`. When `s`\n is `1.0`, the result will be equal to `end`.\n # Panics\n Will panic if `self` or `end` are not normalized when `glam_assert` is enabled.", - &["_self", "end", "s"], + " Returns a vector containing the fractional part of the vector as `self - self.floor()`.\n Note that this differs from the Rust implementation of `fract` which returns\n `self - self.trunc()`.\n Note that this is fast but not precise for large numbers.", + &["_self"], ) .register_documented( - "sub", - |_self: V<::glam::Quat>, rhs: R<::glam::Quat>| { - let output: V<::glam::Quat> = { + "from_array", + |a: [f32; 3]| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Sub< - &::glam::Quat, - >>::sub(_self.into_inner(), &rhs) - .into(); + let output: V<::glam::Vec3> = ::glam::Vec3::from_array(a).into(); output } }; output }, - "", - &["_self", "rhs"], + " Creates a new vector from an array.", + &["a"], ) .register_documented( - "sub", - |_self: V<::glam::Quat>, rhs: V<::glam::Quat>| { - let output: V<::glam::Quat> = { + "from_homogeneous", + |v: V<::glam::Vec4>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Quat> = <::glam::Quat as ::core::ops::Sub< - ::glam::Quat, - >>::sub(_self.into_inner(), rhs.into_inner()) + let output: V<::glam::Vec3> = ::glam::Vec3::from_homogeneous( + v.into_inner(), + ) .into(); output } }; output }, - " Subtracts the `rhs` quaternion from `self`.\n The difference is not guaranteed to be normalized.", - &["_self", "rhs"], + " Projects a homogeneous coordinate to 3D space by performing perspective divide.\n # Panics\n Will panic if `v.w` is `0` when `glam_assert` is enabled.", + &["v"], ) .register_documented( - "to_array", - |_self: R<::glam::Quat>| { - let output: [f32; 4] = { + "is_finite", + |_self: V<::glam::Vec3>| { + let output: bool = { { - let output: [f32; 4] = ::glam::Quat::to_array(&_self).into(); + let output: bool = ::glam::Vec3::is_finite(_self.into_inner()) + .into(); output } }; output }, - " `[x, y, z, w]`", + " Returns `true` if, and only if, all elements are finite. If any element is either\n `NaN`, positive or negative infinity, this will return `false`.", &["_self"], ) .register_documented( - "to_euler", - |_self: V<::glam::Quat>, order: V<::glam::EulerRot>| { - let output: (f32, f32, f32) = { + "is_finite_mask", + |_self: V<::glam::Vec3>| { + let output: V<::glam::BVec3> = { { - let output: (f32, f32, f32) = ::glam::Quat::to_euler( + let output: V<::glam::BVec3> = ::glam::Vec3::is_finite_mask( _self.into_inner(), - order.into_inner(), ) .into(); output @@ -2368,32 +2031,30 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Returns the rotation angles for the given euler rotation sequence.", - &["_self", "order"], + " Performs `is_finite` on each element of self, returning a vector mask of the results.\n In other words, this computes `[x.is_finite(), y.is_finite(), ...]`.", + &["_self"], ) .register_documented( - "to_scaled_axis", - |_self: V<::glam::Quat>| { - let output: V<::glam::Vec3> = { + "is_nan", + |_self: V<::glam::Vec3>| { + let output: bool = { { - let output: V<::glam::Vec3> = ::glam::Quat::to_scaled_axis( - _self.into_inner(), - ) + let output: bool = ::glam::Vec3::is_nan(_self.into_inner()) .into(); output } }; output }, - " Returns the rotation axis scaled by the rotation in radians.", + " Returns `true` if any elements are `NaN`.", &["_self"], ) .register_documented( - "xyz", - |_self: V<::glam::Quat>| { - let output: V<::glam::Vec3> = { + "is_nan_mask", + |_self: V<::glam::Vec3>| { + let output: V<::glam::BVec3> = { { - let output: V<::glam::Vec3> = ::glam::Quat::xyz( + let output: V<::glam::BVec3> = ::glam::Vec3::is_nan_mask( _self.into_inner(), ) .into(); @@ -2402,23 +2063,15 @@ pub(crate) fn register_quat_functions(world: &mut World) { }; output }, - " Returns the vector part of the quaternion.", + " Performs `is_nan` on each element of self, returning a vector mask of the results.\n In other words, this computes `[x.is_nan(), y.is_nan(), ...]`.", &["_self"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry.register_type_data::<::glam::Quat, bevy_mod_scripting_bindings::MarkAsGenerated>(); -} -pub(crate) fn register_vec_3_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::glam::Vec3, - >::new(world) + ) .register_documented( - "abs", + "is_negative_bitmask", |_self: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + let output: u32 = { { - let output: V<::glam::Vec3> = ::glam::Vec3::abs( + let output: u32 = ::glam::Vec3::is_negative_bitmask( _self.into_inner(), ) .into(); @@ -2427,18 +2080,16 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector containing the absolute value of each element of `self`.", + " Returns a bitmask with the lowest 3 bits set to the sign bits from the elements of `self`.\n A negative element results in a `1` bit and a positive element in a `0` bit. Element `x` goes\n into the first lowest bit, element `y` into the second, etc.\n An element is negative if it has a negative sign, including -0.0, NaNs with negative sign\n bit and negative infinity.", &["_self"], ) .register_documented( - "abs_diff_eq", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>, max_abs_diff: f32| { + "is_normalized", + |_self: V<::glam::Vec3>| { let output: bool = { { - let output: bool = ::glam::Vec3::abs_diff_eq( + let output: bool = ::glam::Vec3::is_normalized( _self.into_inner(), - rhs.into_inner(), - max_abs_diff, ) .into(); output @@ -2446,68 +2097,65 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns true if the absolute difference of all elements between `self` and `rhs` is\n less than or equal to `max_abs_diff`.\n This can be used to compare if two vectors contain similar elements. It works best when\n comparing with a known value. The `max_abs_diff` that should be used used depends on\n the values being compared against.\n For more see\n [comparing floating point numbers](https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/).", - &["_self", "rhs", "max_abs_diff"], + " Returns whether `self` is length `1.0` or not.\n Uses a precision threshold of approximately `1e-4`.", + &["_self"], ) .register_documented( - "add", - |_self: V<::glam::Vec3>, rhs: R<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "length", + |_self: V<::glam::Vec3>| { + let output: f32 = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Add< - &::glam::Vec3, - >>::add(_self.into_inner(), &rhs) + let output: f32 = ::glam::Vec3::length(_self.into_inner()) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Computes the length of `self`.", + &["_self"], ) .register_documented( - "add", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "length_recip", + |_self: V<::glam::Vec3>| { + let output: f32 = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Add< - ::glam::Vec3, - >>::add(_self.into_inner(), rhs.into_inner()) + let output: f32 = ::glam::Vec3::length_recip(_self.into_inner()) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Computes `1.0 / length()`.\n For valid results, `self` must _not_ be of length zero.", + &["_self"], ) .register_documented( - "add", - |_self: V<::glam::Vec3>, rhs: f32| { - let output: V<::glam::Vec3> = { + "length_squared", + |_self: V<::glam::Vec3>| { + let output: f32 = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Add< - f32, - >>::add(_self.into_inner(), rhs) + let output: f32 = ::glam::Vec3::length_squared( + _self.into_inner(), + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Computes the squared length of `self`.\n This is faster than `length()` as it avoids a square root operation.", + &["_self"], ) .register_documented( - "angle_between", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: f32 = { + "lerp", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>, s: f32| { + let output: V<::glam::Vec3> = { { - let output: f32 = ::glam::Vec3::angle_between( + let output: V<::glam::Vec3> = ::glam::Vec3::lerp( _self.into_inner(), rhs.into_inner(), + s, ) .into(); output @@ -2515,16 +2163,16 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns the angle (in radians) between two vectors in the range `[0, +π]`.\n The inputs do not need to be unit vectors however they must be non-zero.", - &["_self", "rhs"], + " Performs a linear interpolation between `self` and `rhs` based on the value `s`.\n When `s` is `0.0`, the result will be equal to `self`. When `s` is `1.0`, the result\n will be equal to `rhs`. When `s` is outside of range `[0, 1]`, the result is linearly\n extrapolated.", + &["_self", "rhs", "s"], ) .register_documented( - "any_orthogonal_vector", - |_self: R<::glam::Vec3>| { + "ln", + |_self: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::any_orthogonal_vector( - &_self, + let output: V<::glam::Vec3> = ::glam::Vec3::ln( + _self.into_inner(), ) .into(); output @@ -2532,16 +2180,16 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns some vector that is orthogonal to the given one.\n The input vector must be finite and non-zero.\n The output vector is not necessarily unit length. For that use\n [`Self::any_orthonormal_vector()`] instead.", + " Returns a vector containing the natural logarithm for each element of `self`.\n This returns NaN when the element is negative and negative infinity when the element is zero.", &["_self"], ) .register_documented( - "any_orthonormal_vector", - |_self: R<::glam::Vec3>| { + "log2", + |_self: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::any_orthonormal_vector( - &_self, + let output: V<::glam::Vec3> = ::glam::Vec3::log2( + _self.into_inner(), ) .into(); output @@ -2549,189 +2197,206 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns any unit vector that is orthogonal to the given one.\n The input vector must be unit length.\n # Panics\n Will panic if `self` is not normalized when `glam_assert` is enabled.", + " Returns a vector containing the base 2 logarithm for each element of `self`.\n This returns NaN when the element is negative and negative infinity when the element is zero.", &["_self"], ) .register_documented( - "as_dvec3", - |_self: R<::glam::Vec3>| { - let output: V<::glam::DVec3> = { + "max", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::DVec3> = ::glam::Vec3::as_dvec3(&_self) + let output: V<::glam::Vec3> = ::glam::Vec3::max( + _self.into_inner(), + rhs.into_inner(), + ) .into(); output } }; output }, - " Casts all elements of `self` to `f64`.", - &["_self"], + " Returns a vector containing the maximum values for each element of `self` and `rhs`.\n In other words this computes `[max(self.x, rhs.x), max(self.y, rhs.y), ..]`.\n NaN propogation does not follow IEEE 754-2008 semantics for maxNum and may differ on\n different SIMD architectures.", + &["_self", "rhs"], ) .register_documented( - "as_i16vec3", - |_self: R<::glam::Vec3>| { - let output: V<::glam::I16Vec3> = { + "max_element", + |_self: V<::glam::Vec3>| { + let output: f32 = { { - let output: V<::glam::I16Vec3> = ::glam::Vec3::as_i16vec3(&_self) + let output: f32 = ::glam::Vec3::max_element(_self.into_inner()) .into(); output } }; output }, - " Casts all elements of `self` to `i16`.", + " Returns the horizontal maximum of `self`.\n In other words this computes `max(x, y, ..)`.\n NaN propogation does not follow IEEE 754-2008 semantics and may differ on\n different SIMD architectures.", &["_self"], ) .register_documented( - "as_i64vec3", - |_self: R<::glam::Vec3>| { - let output: V<::glam::I64Vec3> = { + "max_position", + |_self: V<::glam::Vec3>| { + let output: usize = { { - let output: V<::glam::I64Vec3> = ::glam::Vec3::as_i64vec3(&_self) + let output: usize = ::glam::Vec3::max_position( + _self.into_inner(), + ) .into(); output } }; output }, - " Casts all elements of `self` to `i64`.", + " Returns the index of the first maximum element of `self`.", &["_self"], ) .register_documented( - "as_i8vec3", - |_self: R<::glam::Vec3>| { - let output: V<::glam::I8Vec3> = { + "midpoint", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::I8Vec3> = ::glam::Vec3::as_i8vec3(&_self) + let output: V<::glam::Vec3> = ::glam::Vec3::midpoint( + _self.into_inner(), + rhs.into_inner(), + ) .into(); output } }; output }, - " Casts all elements of `self` to `i8`.", - &["_self"], + " Calculates the midpoint between `self` and `rhs`.\n The midpoint is the average of, or halfway point between, two vectors.\n `a.midpoint(b)` should yield the same result as `a.lerp(b, 0.5)`\n while being slightly cheaper to compute.", + &["_self", "rhs"], ) .register_documented( - "as_ivec3", - |_self: R<::glam::Vec3>| { - let output: V<::glam::IVec3> = { + "min", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::IVec3> = ::glam::Vec3::as_ivec3(&_self) + let output: V<::glam::Vec3> = ::glam::Vec3::min( + _self.into_inner(), + rhs.into_inner(), + ) .into(); output } }; output }, - " Casts all elements of `self` to `i32`.", - &["_self"], + " Returns a vector containing the minimum values for each element of `self` and `rhs`.\n In other words this computes `[min(x, rhs.x), min(self.y, rhs.y), ..]`.\n NaN propogation does not follow IEEE 754-2008 semantics for minNum and may differ on\n different SIMD architectures.", + &["_self", "rhs"], ) .register_documented( - "as_u16vec3", - |_self: R<::glam::Vec3>| { - let output: V<::glam::U16Vec3> = { + "min_element", + |_self: V<::glam::Vec3>| { + let output: f32 = { { - let output: V<::glam::U16Vec3> = ::glam::Vec3::as_u16vec3(&_self) + let output: f32 = ::glam::Vec3::min_element(_self.into_inner()) .into(); output } }; output }, - " Casts all elements of `self` to `u16`.", + " Returns the horizontal minimum of `self`.\n In other words this computes `min(x, y, ..)`.\n NaN propogation does not follow IEEE 754-2008 semantics and may differ on\n different SIMD architectures.", &["_self"], ) .register_documented( - "as_u64vec3", - |_self: R<::glam::Vec3>| { - let output: V<::glam::U64Vec3> = { + "min_position", + |_self: V<::glam::Vec3>| { + let output: usize = { { - let output: V<::glam::U64Vec3> = ::glam::Vec3::as_u64vec3(&_self) + let output: usize = ::glam::Vec3::min_position( + _self.into_inner(), + ) .into(); output } }; output }, - " Casts all elements of `self` to `u64`.", + " Returns the index of the first minimum element of `self`.", &["_self"], ) .register_documented( - "as_u8vec3", - |_self: R<::glam::Vec3>| { - let output: V<::glam::U8Vec3> = { + "move_towards", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>, d: f32| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::U8Vec3> = ::glam::Vec3::as_u8vec3(&_self) + let output: V<::glam::Vec3> = ::glam::Vec3::move_towards( + _self.into_inner(), + rhs.into_inner(), + d, + ) .into(); output } }; output }, - " Casts all elements of `self` to `u8`.", - &["_self"], + " Moves towards `rhs` based on the value `d`.\n When `d` is `0.0`, the result will be equal to `self`. When `d` is equal to\n `self.distance(rhs)`, the result will be equal to `rhs`. Will not go past `rhs`.", + &["_self", "rhs", "d"], ) .register_documented( - "as_uvec3", - |_self: R<::glam::Vec3>| { - let output: V<::glam::UVec3> = { + "mul", + |_self: V<::glam::Vec3>, rhs: R<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::UVec3> = ::glam::Vec3::as_uvec3(&_self) + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Mul< + &::glam::Vec3, + >>::mul(_self.into_inner(), &rhs) .into(); output } }; output }, - " Casts all elements of `self` to `u32`.", - &["_self"], + "", + &["_self", "rhs"], ) .register_documented( - "ceil", - |_self: V<::glam::Vec3>| { + "mul", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::ceil( - _self.into_inner(), - ) + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Mul< + ::glam::Vec3, + >>::mul(_self.into_inner(), rhs.into_inner()) .into(); output } }; output }, - " Returns a vector containing the smallest integer greater than or equal to a number for\n each element of `self`.", - &["_self"], + "", + &["_self", "rhs"], ) .register_documented( - "clamp", - |_self: V<::glam::Vec3>, min: V<::glam::Vec3>, max: V<::glam::Vec3>| { + "mul", + |_self: V<::glam::Vec3>, rhs: f32| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::clamp( - _self.into_inner(), - min.into_inner(), - max.into_inner(), - ) + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Mul< + f32, + >>::mul(_self.into_inner(), rhs) .into(); output } }; output }, - " Component-wise clamping of values, similar to [`f32::clamp`].\n Each element in `min` must be less-or-equal to the corresponding element in `max`.\n NaN propogation does not follow IEEE 754-2008 semantics and may differ on\n different SIMD architectures.\n # Panics\n Will panic if `min` is greater than `max` when `glam_assert` is enabled.", - &["_self", "min", "max"], + "", + &["_self", "rhs"], ) .register_documented( - "clamp_length", - |_self: V<::glam::Vec3>, min: f32, max: f32| { + "mul_add", + |_self: V<::glam::Vec3>, a: V<::glam::Vec3>, b: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::clamp_length( + let output: V<::glam::Vec3> = ::glam::Vec3::mul_add( _self.into_inner(), - min, - max, + a.into_inner(), + b.into_inner(), ) .into(); output @@ -2739,17 +2404,16 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector with a length no less than `min` and no more than `max`.\n # Panics\n Will panic if `min` is greater than `max`, or if either `min` or `max` is negative, when `glam_assert` is enabled.", - &["_self", "min", "max"], + " Fused multiply-add. Computes `(self * a) + b` element-wise with only one rounding\n error, yielding a more accurate result than an unfused multiply-add.\n Using `mul_add` *may* be more performant than an unfused multiply-add if the target\n architecture has a dedicated fma CPU instruction. However, this is not always true,\n and will be heavily dependant on designing algorithms with specific target hardware in\n mind.", + &["_self", "a", "b"], ) .register_documented( - "clamp_length_max", - |_self: V<::glam::Vec3>, max: f32| { + "neg", + |_self: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::clamp_length_max( + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Neg>::neg( _self.into_inner(), - max, ) .into(); output @@ -2757,34 +2421,30 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector with a length no more than `max`.\n # Panics\n Will panic if `max` is negative when `glam_assert` is enabled.", - &["_self", "max"], + "", + &["_self"], ) .register_documented( - "clamp_length_min", - |_self: V<::glam::Vec3>, min: f32| { + "new", + |x: f32, y: f32, z: f32| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::clamp_length_min( - _self.into_inner(), - min, - ) - .into(); + let output: V<::glam::Vec3> = ::glam::Vec3::new(x, y, z).into(); output } }; output }, - " Returns a vector with a length no less than `min`.\n # Panics\n Will panic if `min` is negative when `glam_assert` is enabled.", - &["_self", "min"], + " Creates a new vector.", + &["x", "y", "z"], ) .register_documented( - "clone", - |_self: R<::glam::Vec3>| { + "normalize", + |_self: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::clone::Clone>::clone( - &_self, + let output: V<::glam::Vec3> = ::glam::Vec3::normalize( + _self.into_inner(), ) .into(); output @@ -2792,17 +2452,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - "", + " Returns `self` normalized to length 1.0.\n For valid results, `self` must be finite and _not_ of length zero, nor very close to zero.\n See also [`Self::try_normalize()`] and [`Self::normalize_or_zero()`].\n # Panics\n Will panic if the resulting normalized vector is not finite when `glam_assert` is enabled.", &["_self"], ) .register_documented( - "cmpeq", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::BVec3> = { + "normalize_or", + |_self: V<::glam::Vec3>, fallback: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::BVec3> = ::glam::Vec3::cmpeq( + let output: V<::glam::Vec3> = ::glam::Vec3::normalize_or( _self.into_inner(), - rhs.into_inner(), + fallback.into_inner(), ) .into(); output @@ -2810,17 +2470,16 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector mask containing the result of a `==` comparison for each element of\n `self` and `rhs`.\n In other words, this computes `[self.x == rhs.x, self.y == rhs.y, ..]` for all\n elements.", - &["_self", "rhs"], + " Returns `self` normalized to length 1.0 if possible, else returns a\n fallback value.\n In particular, if the input is zero (or very close to zero), or non-finite,\n the result of this operation will be the fallback value.\n See also [`Self::try_normalize()`].", + &["_self", "fallback"], ) .register_documented( - "cmpge", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::BVec3> = { + "normalize_or_zero", + |_self: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::BVec3> = ::glam::Vec3::cmpge( + let output: V<::glam::Vec3> = ::glam::Vec3::normalize_or_zero( _self.into_inner(), - rhs.into_inner(), ) .into(); output @@ -2828,17 +2487,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector mask containing the result of a `>=` comparison for each element of\n `self` and `rhs`.\n In other words this computes `[self.x >= rhs.x, self.y >= rhs.y, ..]` for all\n elements.", - &["_self", "rhs"], + " Returns `self` normalized to length 1.0 if possible, else returns zero.\n In particular, if the input is zero (or very close to zero), or non-finite,\n the result of this operation will be zero.\n See also [`Self::try_normalize()`].", + &["_self"], ) .register_documented( - "cmpgt", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::BVec3> = { + "powf", + |_self: V<::glam::Vec3>, n: f32| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::BVec3> = ::glam::Vec3::cmpgt( + let output: V<::glam::Vec3> = ::glam::Vec3::powf( _self.into_inner(), - rhs.into_inner(), + n, ) .into(); output @@ -2846,15 +2505,15 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector mask containing the result of a `>` comparison for each element of\n `self` and `rhs`.\n In other words this computes `[self.x > rhs.x, self.y > rhs.y, ..]` for all\n elements.", - &["_self", "rhs"], + " Returns a vector containing each element of `self` raised to the power of `n`.", + &["_self", "n"], ) .register_documented( - "cmple", + "project_onto", |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::BVec3> = { + let output: V<::glam::Vec3> = { { - let output: V<::glam::BVec3> = ::glam::Vec3::cmple( + let output: V<::glam::Vec3> = ::glam::Vec3::project_onto( _self.into_inner(), rhs.into_inner(), ) @@ -2864,15 +2523,15 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector mask containing the result of a `<=` comparison for each element of\n `self` and `rhs`.\n In other words this computes `[self.x <= rhs.x, self.y <= rhs.y, ..]` for all\n elements.", + " Returns the vector projection of `self` onto `rhs`.\n `rhs` must be of non-zero length.\n # Panics\n Will panic if `rhs` is zero length when `glam_assert` is enabled.", &["_self", "rhs"], ) .register_documented( - "cmplt", + "project_onto_normalized", |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::BVec3> = { + let output: V<::glam::Vec3> = { { - let output: V<::glam::BVec3> = ::glam::Vec3::cmplt( + let output: V<::glam::Vec3> = ::glam::Vec3::project_onto_normalized( _self.into_inner(), rhs.into_inner(), ) @@ -2882,17 +2541,16 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector mask containing the result of a `<` comparison for each element of\n `self` and `rhs`.\n In other words this computes `[self.x < rhs.x, self.y < rhs.y, ..]` for all\n elements.", + " Returns the vector projection of `self` onto `rhs`.\n `rhs` must be normalized.\n # Panics\n Will panic if `rhs` is not normalized when `glam_assert` is enabled.", &["_self", "rhs"], ) .register_documented( - "cmpne", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::BVec3> = { + "recip", + |_self: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::BVec3> = ::glam::Vec3::cmpne( + let output: V<::glam::Vec3> = ::glam::Vec3::recip( _self.into_inner(), - rhs.into_inner(), ) .into(); output @@ -2900,17 +2558,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector mask containing the result of a `!=` comparison for each element of\n `self` and `rhs`.\n In other words this computes `[self.x != rhs.x, self.y != rhs.y, ..]` for all\n elements.", - &["_self", "rhs"], + " Returns a vector containing the reciprocal `1.0/n` of each element of `self`.", + &["_self"], ) .register_documented( - "copysign", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + "reflect", + |_self: V<::glam::Vec3>, normal: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::copysign( + let output: V<::glam::Vec3> = ::glam::Vec3::reflect( _self.into_inner(), - rhs.into_inner(), + normal.into_inner(), ) .into(); output @@ -2918,17 +2576,18 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector with signs of `rhs` and the magnitudes of `self`.", - &["_self", "rhs"], + " Returns the reflection vector for a given incident vector `self` and surface normal\n `normal`.\n `normal` must be normalized.\n # Panics\n Will panic if `normal` is not normalized when `glam_assert` is enabled.", + &["_self", "normal"], ) .register_documented( - "cross", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + "refract", + |_self: V<::glam::Vec3>, normal: V<::glam::Vec3>, eta: f32| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::cross( + let output: V<::glam::Vec3> = ::glam::Vec3::refract( _self.into_inner(), - rhs.into_inner(), + normal.into_inner(), + eta, ) .into(); output @@ -2936,15 +2595,15 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Computes the cross product of `self` and `rhs`.", - &["_self", "rhs"], + " Returns the refraction direction for a given incident vector `self`, surface normal\n `normal` and ratio of indices of refraction, `eta`. When total internal reflection occurs,\n a zero vector will be returned.\n `self` and `normal` must be normalized.\n # Panics\n Will panic if `self` or `normal` is not normalized when `glam_assert` is enabled.", + &["_self", "normal", "eta"], ) .register_documented( - "distance", + "reject_from", |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: f32 = { + let output: V<::glam::Vec3> = { { - let output: f32 = ::glam::Vec3::distance( + let output: V<::glam::Vec3> = ::glam::Vec3::reject_from( _self.into_inner(), rhs.into_inner(), ) @@ -2954,15 +2613,15 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Computes the Euclidean distance between two points in space.", + " Returns the vector rejection of `self` from `rhs`.\n The vector rejection is the vector perpendicular to the projection of `self` onto\n `rhs`, in rhs words the result of `self - self.project_onto(rhs)`.\n `rhs` must be of non-zero length.\n # Panics\n Will panic if `rhs` has a length of zero when `glam_assert` is enabled.", &["_self", "rhs"], ) .register_documented( - "distance_squared", + "reject_from_normalized", |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: f32 = { + let output: V<::glam::Vec3> = { { - let output: f32 = ::glam::Vec3::distance_squared( + let output: V<::glam::Vec3> = ::glam::Vec3::reject_from_normalized( _self.into_inner(), rhs.into_inner(), ) @@ -2972,17 +2631,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Compute the squared euclidean distance between two points in space.", + " Returns the vector rejection of `self` from `rhs`.\n The vector rejection is the vector perpendicular to the projection of `self` onto\n `rhs`, in rhs words the result of `self - self.project_onto(rhs)`.\n `rhs` must be normalized.\n # Panics\n Will panic if `rhs` is not normalized when `glam_assert` is enabled.", &["_self", "rhs"], ) .register_documented( - "div", + "rem", |_self: V<::glam::Vec3>, rhs: R<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Div< + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Rem< &::glam::Vec3, - >>::div(_self.into_inner(), &rhs) + >>::rem(_self.into_inner(), &rhs) .into(); output } @@ -2993,13 +2652,13 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "div", + "rem", |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Div< + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Rem< ::glam::Vec3, - >>::div(_self.into_inner(), rhs.into_inner()) + >>::rem(_self.into_inner(), rhs.into_inner()) .into(); output } @@ -3010,13 +2669,13 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "div", + "rem", |_self: V<::glam::Vec3>, rhs: f32| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Div< + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Rem< f32, - >>::div(_self.into_inner(), rhs) + >>::rem(_self.into_inner(), rhs) .into(); output } @@ -3027,11 +2686,11 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "div_euclid", + "rem_euclid", |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::div_euclid( + let output: V<::glam::Vec3> = ::glam::Vec3::rem_euclid( _self.into_inner(), rhs.into_inner(), ) @@ -3041,17 +2700,18 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns the element-wise quotient of [Euclidean division] of `self` by `rhs`.", + " Returns the element-wise remainder of [Euclidean division] of `self` by `rhs`.\n [Euclidean division]: f32::rem_euclid", &["_self", "rhs"], ) .register_documented( - "dot", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: f32 = { + "rotate_axis", + |_self: V<::glam::Vec3>, axis: V<::glam::Vec3>, angle: f32| { + let output: V<::glam::Vec3> = { { - let output: f32 = ::glam::Vec3::dot( + let output: V<::glam::Vec3> = ::glam::Vec3::rotate_axis( _self.into_inner(), - rhs.into_inner(), + axis.into_inner(), + angle, ) .into(); output @@ -3059,17 +2719,18 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Computes the dot product of `self` and `rhs`.", - &["_self", "rhs"], + " Rotates around `axis` by `angle` (in radians).\n The axis must be a unit vector.\n # Panics\n Will panic if `axis` is not normalized when `glam_assert` is enabled.", + &["_self", "axis", "angle"], ) .register_documented( - "dot_into_vec", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + "rotate_towards", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>, max_angle: f32| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::dot_into_vec( + let output: V<::glam::Vec3> = ::glam::Vec3::rotate_towards( _self.into_inner(), rhs.into_inner(), + max_angle, ) .into(); output @@ -3077,16 +2738,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector where every component is the dot product of `self` and `rhs`.", - &["_self", "rhs"], + " Rotates towards `rhs` up to `max_angle` (in radians).\n When `max_angle` is `0.0`, the result will be equal to `self`. When `max_angle` is equal to\n `self.angle_between(rhs)`, the result will be parallel to `rhs`. If `max_angle` is negative,\n rotates towards the exact opposite of `rhs`. Will not go past the target.", + &["_self", "rhs", "max_angle"], ) .register_documented( - "element_product", - |_self: V<::glam::Vec3>| { - let output: f32 = { + "rotate_x", + |_self: V<::glam::Vec3>, angle: f32| { + let output: V<::glam::Vec3> = { { - let output: f32 = ::glam::Vec3::element_product( + let output: V<::glam::Vec3> = ::glam::Vec3::rotate_x( _self.into_inner(), + angle, ) .into(); output @@ -3094,47 +2756,51 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns the product of all elements of `self`.\n In other words, this computes `self.x * self.y * ..`.", - &["_self"], + " Rotates around the x axis by `angle` (in radians).", + &["_self", "angle"], ) .register_documented( - "element_sum", - |_self: V<::glam::Vec3>| { - let output: f32 = { + "rotate_y", + |_self: V<::glam::Vec3>, angle: f32| { + let output: V<::glam::Vec3> = { { - let output: f32 = ::glam::Vec3::element_sum(_self.into_inner()) + let output: V<::glam::Vec3> = ::glam::Vec3::rotate_y( + _self.into_inner(), + angle, + ) .into(); output } }; output }, - " Returns the sum of all elements of `self`.\n In other words, this computes `self.x + self.y + ..`.", - &["_self"], + " Rotates around the y axis by `angle` (in radians).", + &["_self", "angle"], ) .register_documented( - "eq", - |_self: R<::glam::Vec3>, other: R<::glam::Vec3>| { - let output: bool = { + "rotate_z", + |_self: V<::glam::Vec3>, angle: f32| { + let output: V<::glam::Vec3> = { { - let output: bool = <::glam::Vec3 as ::core::cmp::PartialEq< - ::glam::Vec3, - >>::eq(&_self, &other) + let output: V<::glam::Vec3> = ::glam::Vec3::rotate_z( + _self.into_inner(), + angle, + ) .into(); output } }; output }, - "", - &["_self", "other"], + " Rotates around the z axis by `angle` (in radians).", + &["_self", "angle"], ) .register_documented( - "exp", + "round", |_self: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::exp( + let output: V<::glam::Vec3> = ::glam::Vec3::round( _self.into_inner(), ) .into(); @@ -3143,15 +2809,15 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector containing `e^self` (the exponential function) for each element of\n `self`.", + " Returns a vector containing the nearest integer to a number for each element of `self`.\n Round half-way cases away from 0.0.", &["_self"], ) .register_documented( - "exp2", + "saturate", |_self: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::exp2( + let output: V<::glam::Vec3> = ::glam::Vec3::saturate( _self.into_inner(), ) .into(); @@ -3160,17 +2826,22 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector containing `2^self` for each element of `self`.", + " Returns a vector containing all elements of `self` clamped to the range of `[0, 1]`.", &["_self"], ) .register_documented( - "extend", - |_self: V<::glam::Vec3>, w: f32| { - let output: V<::glam::Vec4> = { + "select", + | + mask: V<::glam::BVec3>, + if_true: V<::glam::Vec3>, + if_false: V<::glam::Vec3>| + { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec4> = ::glam::Vec3::extend( - _self.into_inner(), - w, + let output: V<::glam::Vec3> = ::glam::Vec3::select( + mask.into_inner(), + if_true.into_inner(), + if_false.into_inner(), ) .into(); output @@ -3178,15 +2849,15 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Creates a 4D vector from `self` and the given `w` value.", - &["_self", "w"], + " Creates a vector from the elements in `if_true` and `if_false`, selecting which to use\n for each element of `self`.\n A true element in the mask uses the corresponding element from `if_true`, and false\n uses the element from `if_false`.", + &["mask", "if_true", "if_false"], ) .register_documented( - "floor", + "signum", |_self: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::floor( + let output: V<::glam::Vec3> = ::glam::Vec3::signum( _self.into_inner(), ) .into(); @@ -3195,15 +2866,15 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector containing the largest integer less than or equal to a number for each\n element of `self`.", + " Returns a vector with elements representing the sign of `self`.\n - `1.0` if the number is positive, `+0.0` or `INFINITY`\n - `-1.0` if the number is negative, `-0.0` or `NEG_INFINITY`\n - `NAN` if the number is `NAN`", &["_self"], ) .register_documented( - "fract", + "sin", |_self: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::fract( + let output: V<::glam::Vec3> = ::glam::Vec3::sin( _self.into_inner(), ) .into(); @@ -3212,16 +2883,18 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector containing the fractional part of the vector as `self - self.trunc()`.\n Note that this differs from the GLSL implementation of `fract` which returns\n `self - self.floor()`.\n Note that this is fast but not precise for large numbers.", + " Returns a vector containing the sine for each element of `self`.", &["_self"], ) .register_documented( - "fract_gl", - |_self: V<::glam::Vec3>| { + "slerp", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>, s: f32| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::fract_gl( + let output: V<::glam::Vec3> = ::glam::Vec3::slerp( _self.into_inner(), + rhs.into_inner(), + s, ) .into(); output @@ -3229,61 +2902,29 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector containing the fractional part of the vector as `self - self.floor()`.\n Note that this differs from the Rust implementation of `fract` which returns\n `self - self.trunc()`.\n Note that this is fast but not precise for large numbers.", - &["_self"], - ) - .register_documented( - "from_array", - |a: [f32; 3]| { - let output: V<::glam::Vec3> = { - { - let output: V<::glam::Vec3> = ::glam::Vec3::from_array(a).into(); - output - } - }; - output - }, - " Creates a new vector from an array.", - &["a"], + " Performs a spherical linear interpolation between `self` and `rhs` based on the value `s`.\n When `s` is `0.0`, the result will be equal to `self`. When `s` is `1.0`, the result\n will be equal to `rhs`. When `s` is outside of range `[0, 1]`, the result is linearly\n extrapolated.", + &["_self", "rhs", "s"], ) .register_documented( - "from_homogeneous", - |v: V<::glam::Vec4>| { + "splat", + |v: f32| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::from_homogeneous( - v.into_inner(), - ) - .into(); + let output: V<::glam::Vec3> = ::glam::Vec3::splat(v).into(); output } }; output }, - " Projects a homogeneous coordinate to 3D space by performing perspective divide.\n # Panics\n Will panic if `v.w` is `0` when `glam_assert` is enabled.", + " Creates a vector with all elements set to `v`.", &["v"], ) .register_documented( - "is_finite", - |_self: V<::glam::Vec3>| { - let output: bool = { - { - let output: bool = ::glam::Vec3::is_finite(_self.into_inner()) - .into(); - output - } - }; - output - }, - " Returns `true` if, and only if, all elements are finite. If any element is either\n `NaN`, positive or negative infinity, this will return `false`.", - &["_self"], - ) - .register_documented( - "is_finite_mask", + "sqrt", |_self: V<::glam::Vec3>| { - let output: V<::glam::BVec3> = { + let output: V<::glam::Vec3> = { { - let output: V<::glam::BVec3> = ::glam::Vec3::is_finite_mask( + let output: V<::glam::Vec3> = ::glam::Vec3::sqrt( _self.into_inner(), ) .into(); @@ -3292,31 +2933,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Performs `is_finite` on each element of self, returning a vector mask of the results.\n In other words, this computes `[x.is_finite(), y.is_finite(), ...]`.", - &["_self"], - ) - .register_documented( - "is_nan", - |_self: V<::glam::Vec3>| { - let output: bool = { - { - let output: bool = ::glam::Vec3::is_nan(_self.into_inner()) - .into(); - output - } - }; - output - }, - " Returns `true` if any elements are `NaN`.", + " Returns a vector containing the square root for each element of `self`.\n This returns NaN when the element is negative.", &["_self"], ) .register_documented( - "is_nan_mask", - |_self: V<::glam::Vec3>| { - let output: V<::glam::BVec3> = { + "step", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::BVec3> = ::glam::Vec3::is_nan_mask( + let output: V<::glam::Vec3> = ::glam::Vec3::step( _self.into_inner(), + rhs.into_inner(), ) .into(); output @@ -3324,79 +2951,80 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Performs `is_nan` on each element of self, returning a vector mask of the results.\n In other words, this computes `[x.is_nan(), y.is_nan(), ...]`.", - &["_self"], + " Returns a vector containing `0.0` if `rhs < self` and 1.0 otherwise.\n Similar to glsl's step(edge, x), which translates into edge.step(x)", + &["_self", "rhs"], ) .register_documented( - "is_negative_bitmask", - |_self: V<::glam::Vec3>| { - let output: u32 = { + "sub", + |_self: V<::glam::Vec3>, rhs: R<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: u32 = ::glam::Vec3::is_negative_bitmask( - _self.into_inner(), - ) + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Sub< + &::glam::Vec3, + >>::sub(_self.into_inner(), &rhs) .into(); output } }; output }, - " Returns a bitmask with the lowest 3 bits set to the sign bits from the elements of `self`.\n A negative element results in a `1` bit and a positive element in a `0` bit. Element `x` goes\n into the first lowest bit, element `y` into the second, etc.\n An element is negative if it has a negative sign, including -0.0, NaNs with negative sign\n bit and negative infinity.", - &["_self"], + "", + &["_self", "rhs"], ) .register_documented( - "is_normalized", - |_self: V<::glam::Vec3>| { - let output: bool = { + "sub", + |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: bool = ::glam::Vec3::is_normalized( - _self.into_inner(), - ) + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Sub< + ::glam::Vec3, + >>::sub(_self.into_inner(), rhs.into_inner()) .into(); output } }; output }, - " Returns whether `self` is length `1.0` or not.\n Uses a precision threshold of approximately `1e-4`.", - &["_self"], + "", + &["_self", "rhs"], ) .register_documented( - "length", - |_self: V<::glam::Vec3>| { - let output: f32 = { + "sub", + |_self: V<::glam::Vec3>, rhs: f32| { + let output: V<::glam::Vec3> = { { - let output: f32 = ::glam::Vec3::length(_self.into_inner()) + let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Sub< + f32, + >>::sub(_self.into_inner(), rhs) .into(); output } }; output }, - " Computes the length of `self`.", - &["_self"], + "", + &["_self", "rhs"], ) .register_documented( - "length_recip", - |_self: V<::glam::Vec3>| { - let output: f32 = { + "to_array", + |_self: R<::glam::Vec3>| { + let output: [f32; 3] = { { - let output: f32 = ::glam::Vec3::length_recip(_self.into_inner()) - .into(); + let output: [f32; 3] = ::glam::Vec3::to_array(&_self).into(); output } }; output }, - " Computes `1.0 / length()`.\n For valid results, `self` must _not_ be of length zero.", + " Converts `self` to `[x, y, z]`", &["_self"], ) .register_documented( - "length_squared", + "to_homogeneous", |_self: V<::glam::Vec3>| { - let output: f32 = { + let output: V<::glam::Vec4> = { { - let output: f32 = ::glam::Vec3::length_squared( + let output: V<::glam::Vec4> = ::glam::Vec3::to_homogeneous( _self.into_inner(), ) .into(); @@ -3405,18 +3033,16 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Computes the squared length of `self`.\n This is faster than `length()` as it avoids a square root operation.", + " Creates a homogeneous coordinate from `self`, equivalent to `self.extend(1.0)`.", &["_self"], ) .register_documented( - "lerp", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>, s: f32| { - let output: V<::glam::Vec3> = { + "to_vec3a", + |_self: V<::glam::Vec3>| { + let output: V<::glam::Vec3A> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::lerp( + let output: V<::glam::Vec3A> = ::glam::Vec3::to_vec3a( _self.into_inner(), - rhs.into_inner(), - s, ) .into(); output @@ -3424,15 +3050,15 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Performs a linear interpolation between `self` and `rhs` based on the value `s`.\n When `s` is `0.0`, the result will be equal to `self`. When `s` is `1.0`, the result\n will be equal to `rhs`. When `s` is outside of range `[0, 1]`, the result is linearly\n extrapolated.", - &["_self", "rhs", "s"], + "", + &["_self"], ) .register_documented( - "ln", + "trunc", |_self: V<::glam::Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::ln( + let output: V<::glam::Vec3> = ::glam::Vec3::trunc( _self.into_inner(), ) .into(); @@ -3441,15 +3067,15 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector containing the natural logarithm for each element of `self`.\n This returns NaN when the element is negative and negative infinity when the element is zero.", + " Returns a vector containing the integer part each element of `self`. This means numbers are\n always truncated towards zero.", &["_self"], ) .register_documented( - "log2", + "truncate", |_self: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + let output: V<::glam::Vec2> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::log2( + let output: V<::glam::Vec2> = ::glam::Vec3::truncate( _self.into_inner(), ) .into(); @@ -3458,17 +3084,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector containing the base 2 logarithm for each element of `self`.\n This returns NaN when the element is negative and negative infinity when the element is zero.", + " Creates a 2D vector from the `x` and `y` elements of `self`, discarding `z`.\n Truncation may also be performed by using [`self.xy()`][crate::swizzles::Vec3Swizzles::xy()].", &["_self"], ) .register_documented( - "max", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { + "with_x", + |_self: V<::glam::Vec3>, x: f32| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::max( + let output: V<::glam::Vec3> = ::glam::Vec3::with_x( _self.into_inner(), - rhs.into_inner(), + x, ) .into(); output @@ -3476,31 +3102,35 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector containing the maximum values for each element of `self` and `rhs`.\n In other words this computes `[max(self.x, rhs.x), max(self.y, rhs.y), ..]`.\n NaN propogation does not follow IEEE 754-2008 semantics for maxNum and may differ on\n different SIMD architectures.", - &["_self", "rhs"], + " Creates a 3D vector from `self` with the given value of `x`.", + &["_self", "x"], ) .register_documented( - "max_element", - |_self: V<::glam::Vec3>| { - let output: f32 = { + "with_y", + |_self: V<::glam::Vec3>, y: f32| { + let output: V<::glam::Vec3> = { { - let output: f32 = ::glam::Vec3::max_element(_self.into_inner()) + let output: V<::glam::Vec3> = ::glam::Vec3::with_y( + _self.into_inner(), + y, + ) .into(); output } }; output }, - " Returns the horizontal maximum of `self`.\n In other words this computes `max(x, y, ..)`.\n NaN propogation does not follow IEEE 754-2008 semantics and may differ on\n different SIMD architectures.", - &["_self"], + " Creates a 3D vector from `self` with the given value of `y`.", + &["_self", "y"], ) .register_documented( - "max_position", - |_self: V<::glam::Vec3>| { - let output: usize = { + "with_z", + |_self: V<::glam::Vec3>, z: f32| { + let output: V<::glam::Vec3> = { { - let output: usize = ::glam::Vec3::max_position( + let output: V<::glam::Vec3> = ::glam::Vec3::with_z( _self.into_inner(), + z, ) .into(); output @@ -3508,17 +3138,69 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns the index of the first maximum element of `self`.", - &["_self"], - ) + " Creates a 3D vector from `self` with the given value of `z`.", + &["_self", "z"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry.register_type_data::<::glam::Vec3, bevy_mod_scripting_bindings::MarkAsGenerated>(); +} +pub(crate) fn register_offset_access_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_reflect::OffsetAccess, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_reflect::OffsetAccess>| { + let output: V<::bevy_reflect::OffsetAccess> = { + { + let output: V<::bevy_reflect::OffsetAccess> = + <::bevy_reflect::OffsetAccess as ::core::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_reflect::OffsetAccess>, other: R<::bevy_reflect::OffsetAccess>| { + let output: bool = { + { + let output: bool = <::bevy_reflect::OffsetAccess as ::core::cmp::PartialEq< + ::bevy_reflect::OffsetAccess, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_reflect::OffsetAccess, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_parsed_path_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_reflect::ParsedPath, + >::new(world) .register_documented( - "midpoint", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "clone", + |_self: R<::bevy_reflect::ParsedPath>| { + let output: V<::bevy_reflect::ParsedPath> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::midpoint( - _self.into_inner(), - rhs.into_inner(), + let output: V<::bevy_reflect::ParsedPath> = <::bevy_reflect::ParsedPath as ::core::clone::Clone>::clone( + &_self, ) .into(); output @@ -3526,49 +3208,62 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Calculates the midpoint between `self` and `rhs`.\n The midpoint is the average of, or halfway point between, two vectors.\n `a.midpoint(b)` should yield the same result as `a.lerp(b, 0.5)`\n while being slightly cheaper to compute.", - &["_self", "rhs"], + "", + &["_self"], ) .register_documented( - "min", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "eq", + |_self: R<::bevy_reflect::ParsedPath>, other: R<::bevy_reflect::ParsedPath>| { + let output: bool = { { - let output: V<::glam::Vec3> = ::glam::Vec3::min( - _self.into_inner(), - rhs.into_inner(), - ) + let output: bool = <::bevy_reflect::ParsedPath as ::core::cmp::PartialEq< + ::bevy_reflect::ParsedPath, + >>::eq(&_self, &other) .into(); output } }; output }, - " Returns a vector containing the minimum values for each element of `self` and `rhs`.\n In other words this computes `[min(x, rhs.x), min(self.y, rhs.y), ..]`.\n NaN propogation does not follow IEEE 754-2008 semantics for minNum and may differ on\n different SIMD architectures.", - &["_self", "rhs"], - ) + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_reflect::ParsedPath, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_instant_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::std::time::Instant, + >::new(world) .register_documented( - "min_element", - |_self: V<::glam::Vec3>| { - let output: f32 = { + "add", + |_self: V<::std::time::Instant>, other: V<::core::time::Duration>| { + let output: V<::std::time::Instant> = { { - let output: f32 = ::glam::Vec3::min_element(_self.into_inner()) + let output: V<::std::time::Instant> = <::std::time::Instant as ::core::ops::Add< + ::core::time::Duration, + >>::add(_self.into_inner(), other.into_inner()) .into(); output } }; output }, - " Returns the horizontal minimum of `self`.\n In other words this computes `min(x, y, ..)`.\n NaN propogation does not follow IEEE 754-2008 semantics and may differ on\n different SIMD architectures.", - &["_self"], + " # Panics\n This function may panic if the resulting point in time cannot be represented by the\n underlying data structure. See [`Instant::checked_add`] for a version without panic.", + &["_self", "other"], ) .register_documented( - "min_position", - |_self: V<::glam::Vec3>| { - let output: usize = { + "clone", + |_self: R<::std::time::Instant>| { + let output: V<::std::time::Instant> = { { - let output: usize = ::glam::Vec3::min_position( - _self.into_inner(), + let output: V<::std::time::Instant> = <::std::time::Instant as ::core::clone::Clone>::clone( + &_self, ) .into(); output @@ -3576,18 +3271,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns the index of the first minimum element of `self`.", + "", &["_self"], ) .register_documented( - "move_towards", - |_self: R<::glam::Vec3>, rhs: V<::glam::Vec3>, d: f32| { - let output: V<::glam::Vec3> = { + "duration_since", + |_self: R<::std::time::Instant>, earlier: V<::std::time::Instant>| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::move_towards( + let output: V<::core::time::Duration> = ::std::time::Instant::duration_since( &_self, - rhs.into_inner(), - d, + earlier.into_inner(), ) .into(); output @@ -3595,34 +3289,34 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Moves towards `rhs` based on the value `d`.\n When `d` is `0.0`, the result will be equal to `self`. When `d` is equal to\n `self.distance(rhs)`, the result will be equal to `rhs`. Will not go past `rhs`.", - &["_self", "rhs", "d"], + " Returns the amount of time elapsed from another instant to this one,\n or zero duration if that instant is later than this one.\n # Panics\n Previous Rust versions panicked when `earlier` was later than `self`. Currently this\n method saturates. Future versions may reintroduce the panic in some circumstances.\n See [Monotonicity].\n [Monotonicity]: Instant#monotonicity\n # Examples\n ```no_run\n use std::time::{Duration, Instant};\n use std::thread::sleep;\n let now = Instant::now();\n sleep(Duration::new(1, 0));\n let new_now = Instant::now();\n println!(\"{:?}\", new_now.duration_since(now));\n println!(\"{:?}\", now.duration_since(new_now)); // 0ns\n ```", + &["_self", "earlier"], ) .register_documented( - "mul", - |_self: V<::glam::Vec3>, rhs: R<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "elapsed", + |_self: R<::std::time::Instant>| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Mul< - &::glam::Vec3, - >>::mul(_self.into_inner(), &rhs) + let output: V<::core::time::Duration> = ::std::time::Instant::elapsed( + &_self, + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Returns the amount of time elapsed since this instant.\n # Panics\n Previous Rust versions panicked when the current time was earlier than self. Currently this\n method returns a Duration of zero in that case. Future versions may reintroduce the panic.\n See [Monotonicity].\n [Monotonicity]: Instant#monotonicity\n # Examples\n ```no_run\n use std::thread::sleep;\n use std::time::{Duration, Instant};\n let instant = Instant::now();\n let three_secs = Duration::from_secs(3);\n sleep(three_secs);\n assert!(instant.elapsed() >= three_secs);\n ```", + &["_self"], ) .register_documented( - "mul", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "eq", + |_self: R<::std::time::Instant>, other: R<::std::time::Instant>| { + let output: bool = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Mul< - ::glam::Vec3, - >>::mul(_self.into_inner(), rhs.into_inner()) + let output: bool = <::std::time::Instant as ::core::cmp::PartialEq< + ::std::time::Instant, + >>::eq(&_self, &other) .into(); output } @@ -3630,34 +3324,31 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { output }, "", - &["_self", "rhs"], + &["_self", "other"], ) .register_documented( - "mul", - |_self: V<::glam::Vec3>, rhs: f32| { - let output: V<::glam::Vec3> = { + "now", + || { + let output: V<::std::time::Instant> = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) + let output: V<::std::time::Instant> = ::std::time::Instant::now() .into(); output } }; output }, - "", - &["_self", "rhs"], + " Returns an instant corresponding to \"now\".\n # Examples\n ```\n use std::time::Instant;\n let now = Instant::now();\n ```", + &[], ) .register_documented( - "mul_add", - |_self: V<::glam::Vec3>, a: V<::glam::Vec3>, b: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "saturating_duration_since", + |_self: R<::std::time::Instant>, earlier: V<::std::time::Instant>| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::mul_add( - _self.into_inner(), - a.into_inner(), - b.into_inner(), + let output: V<::core::time::Duration> = ::std::time::Instant::saturating_duration_since( + &_self, + earlier.into_inner(), ) .into(); output @@ -3665,17 +3356,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Fused multiply-add. Computes `(self * a) + b` element-wise with only one rounding\n error, yielding a more accurate result than an unfused multiply-add.\n Using `mul_add` *may* be more performant than an unfused multiply-add if the target\n architecture has a dedicated fma CPU instruction. However, this is not always true,\n and will be heavily dependant on designing algorithms with specific target hardware in\n mind.", - &["_self", "a", "b"], + " Returns the amount of time elapsed from another instant to this one,\n or zero duration if that instant is later than this one.\n # Examples\n ```no_run\n use std::time::{Duration, Instant};\n use std::thread::sleep;\n let now = Instant::now();\n sleep(Duration::new(1, 0));\n let new_now = Instant::now();\n println!(\"{:?}\", new_now.saturating_duration_since(now));\n println!(\"{:?}\", now.saturating_duration_since(new_now)); // 0ns\n ```", + &["_self", "earlier"], ) .register_documented( - "neg", - |_self: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "sub", + |_self: V<::std::time::Instant>, other: V<::core::time::Duration>| { + let output: V<::std::time::Instant> = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Neg>::neg( - _self.into_inner(), - ) + let output: V<::std::time::Instant> = <::std::time::Instant as ::core::ops::Sub< + ::core::time::Duration, + >>::sub(_self.into_inner(), other.into_inner()) .into(); output } @@ -3683,29 +3374,41 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { output }, "", - &["_self"], + &["_self", "other"], ) .register_documented( - "new", - |x: f32, y: f32, z: f32| { - let output: V<::glam::Vec3> = { + "sub", + |_self: V<::std::time::Instant>, other: V<::std::time::Instant>| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::new(x, y, z).into(); + let output: V<::core::time::Duration> = <::std::time::Instant as ::core::ops::Sub< + ::std::time::Instant, + >>::sub(_self.into_inner(), other.into_inner()) + .into(); output } }; output }, - " Creates a new vector.", - &["x", "y", "z"], - ) + " Returns the amount of time elapsed from another instant to this one,\n or zero duration if that instant is later than this one.\n # Panics\n Previous Rust versions panicked when `other` was later than `self`. Currently this\n method saturates. Future versions may reintroduce the panic in some circumstances.\n See [Monotonicity].\n [Monotonicity]: Instant#monotonicity", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::std::time::Instant, bevy_mod_scripting_bindings::MarkAsGenerated>(); +} +pub(crate) fn register_socket_addr_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::core::net::SocketAddr, + >::new(world) .register_documented( - "normalize", - |_self: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "clone", + |_self: R<::core::net::SocketAddr>| { + let output: V<::core::net::SocketAddr> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::normalize( - _self.into_inner(), + let output: V<::core::net::SocketAddr> = <::core::net::SocketAddr as ::core::clone::Clone>::clone( + &_self, ) .into(); output @@ -3713,105 +3416,78 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns `self` normalized to length 1.0.\n For valid results, `self` must be finite and _not_ of length zero, nor very close to zero.\n See also [`Self::try_normalize()`] and [`Self::normalize_or_zero()`].\n # Panics\n Will panic if the resulting normalized vector is not finite when `glam_assert` is enabled.", + "", &["_self"], ) .register_documented( - "normalize_or", - |_self: V<::glam::Vec3>, fallback: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "eq", + |_self: R<::core::net::SocketAddr>, other: R<::core::net::SocketAddr>| { + let output: bool = { { - let output: V<::glam::Vec3> = ::glam::Vec3::normalize_or( - _self.into_inner(), - fallback.into_inner(), - ) + let output: bool = <::core::net::SocketAddr as ::core::cmp::PartialEq< + ::core::net::SocketAddr, + >>::eq(&_self, &other) .into(); output } }; output }, - " Returns `self` normalized to length 1.0 if possible, else returns a\n fallback value.\n In particular, if the input is zero (or very close to zero), or non-finite,\n the result of this operation will be the fallback value.\n See also [`Self::try_normalize()`].", - &["_self", "fallback"], + "", + &["_self", "other"], ) .register_documented( - "normalize_or_zero", - |_self: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "is_ipv4", + |_self: R<::core::net::SocketAddr>| { + let output: bool = { { - let output: V<::glam::Vec3> = ::glam::Vec3::normalize_or_zero( - _self.into_inner(), - ) + let output: bool = ::core::net::SocketAddr::is_ipv4(&_self) .into(); output } }; output }, - " Returns `self` normalized to length 1.0 if possible, else returns zero.\n In particular, if the input is zero (or very close to zero), or non-finite,\n the result of this operation will be zero.\n See also [`Self::try_normalize()`].", + " Returns [`true`] if the [IP address] in this `SocketAddr` is an\n [`IPv4` address], and [`false`] otherwise.\n [IP address]: IpAddr\n [`IPv4` address]: IpAddr::V4\n # Examples\n ```\n use std::net::{IpAddr, Ipv4Addr, SocketAddr};\n let socket = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(127, 0, 0, 1)), 8080);\n assert_eq!(socket.is_ipv4(), true);\n assert_eq!(socket.is_ipv6(), false);\n ```", &["_self"], ) .register_documented( - "powf", - |_self: V<::glam::Vec3>, n: f32| { - let output: V<::glam::Vec3> = { - { - let output: V<::glam::Vec3> = ::glam::Vec3::powf( - _self.into_inner(), - n, - ) - .into(); - output - } - }; - output - }, - " Returns a vector containing each element of `self` raised to the power of `n`.", - &["_self", "n"], - ) - .register_documented( - "project_onto", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "is_ipv6", + |_self: R<::core::net::SocketAddr>| { + let output: bool = { { - let output: V<::glam::Vec3> = ::glam::Vec3::project_onto( - _self.into_inner(), - rhs.into_inner(), - ) + let output: bool = ::core::net::SocketAddr::is_ipv6(&_self) .into(); output } }; output }, - " Returns the vector projection of `self` onto `rhs`.\n `rhs` must be of non-zero length.\n # Panics\n Will panic if `rhs` is zero length when `glam_assert` is enabled.", - &["_self", "rhs"], + " Returns [`true`] if the [IP address] in this `SocketAddr` is an\n [`IPv6` address], and [`false`] otherwise.\n [IP address]: IpAddr\n [`IPv6` address]: IpAddr::V6\n # Examples\n ```\n use std::net::{IpAddr, Ipv6Addr, SocketAddr};\n let socket = SocketAddr::new(IpAddr::V6(Ipv6Addr::new(0, 0, 0, 0, 0, 65535, 0, 1)), 8080);\n assert_eq!(socket.is_ipv4(), false);\n assert_eq!(socket.is_ipv6(), true);\n ```", + &["_self"], ) .register_documented( - "project_onto_normalized", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "port", + |_self: R<::core::net::SocketAddr>| { + let output: u16 = { { - let output: V<::glam::Vec3> = ::glam::Vec3::project_onto_normalized( - _self.into_inner(), - rhs.into_inner(), - ) - .into(); + let output: u16 = ::core::net::SocketAddr::port(&_self).into(); output } }; output }, - " Returns the vector projection of `self` onto `rhs`.\n `rhs` must be normalized.\n # Panics\n Will panic if `rhs` is not normalized when `glam_assert` is enabled.", - &["_self", "rhs"], + " Returns the port number associated with this socket address.\n # Examples\n ```\n use std::net::{IpAddr, Ipv4Addr, SocketAddr};\n let socket = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(127, 0, 0, 1)), 8080);\n assert_eq!(socket.port(), 8080);\n ```", + &["_self"], ) .register_documented( - "recip", - |_self: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "set_port", + |mut _self: M<::core::net::SocketAddr>, new_port: u16| { + let output: () = { { - let output: V<::glam::Vec3> = ::glam::Vec3::recip( - _self.into_inner(), + let output: () = ::core::net::SocketAddr::set_port( + &mut _self, + new_port, ) .into(); output @@ -3819,17 +3495,29 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector containing the reciprocal `1.0/n` of each element of `self`.", - &["_self"], - ) + " Changes the port number associated with this socket address.\n # Examples\n ```\n use std::net::{IpAddr, Ipv4Addr, SocketAddr};\n let mut socket = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(127, 0, 0, 1)), 8080);\n socket.set_port(1025);\n assert_eq!(socket.port(), 1025);\n ```", + &["_self", "new_port"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::core::net::SocketAddr, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_duration_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::core::time::Duration, + >::new(world) .register_documented( - "reflect", - |_self: V<::glam::Vec3>, normal: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "abs_diff", + |_self: V<::core::time::Duration>, other: V<::core::time::Duration>| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::reflect( + let output: V<::core::time::Duration> = ::core::time::Duration::abs_diff( _self.into_inner(), - normal.into_inner(), + other.into_inner(), ) .into(); output @@ -3837,142 +3525,122 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns the reflection vector for a given incident vector `self` and surface normal\n `normal`.\n `normal` must be normalized.\n # Panics\n Will panic if `normal` is not normalized when `glam_assert` is enabled.", - &["_self", "normal"], + " Computes the absolute difference between `self` and `other`.\n # Examples\n ```\n use std::time::Duration;\n assert_eq!(Duration::new(100, 0).abs_diff(Duration::new(80, 0)), Duration::new(20, 0));\n assert_eq!(Duration::new(100, 400_000_000).abs_diff(Duration::new(110, 0)), Duration::new(9, 600_000_000));\n ```", + &["_self", "other"], ) .register_documented( - "refract", - |_self: V<::glam::Vec3>, normal: V<::glam::Vec3>, eta: f32| { - let output: V<::glam::Vec3> = { + "add", + |_self: V<::core::time::Duration>, rhs: V<::core::time::Duration>| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::refract( - _self.into_inner(), - normal.into_inner(), - eta, - ) + let output: V<::core::time::Duration> = <::core::time::Duration as ::core::ops::Add< + ::core::time::Duration, + >>::add(_self.into_inner(), rhs.into_inner()) .into(); output } }; output }, - " Returns the refraction direction for a given incident vector `self`, surface normal\n `normal` and ratio of indices of refraction, `eta`. When total internal reflection occurs,\n a zero vector will be returned.\n `self` and `normal` must be normalized.\n # Panics\n Will panic if `self` or `normal` is not normalized when `glam_assert` is enabled.", - &["_self", "normal", "eta"], + "", + &["_self", "rhs"], ) .register_documented( - "reject_from", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "as_micros", + |_self: R<::core::time::Duration>| { + let output: u128 = { { - let output: V<::glam::Vec3> = ::glam::Vec3::reject_from( - _self.into_inner(), - rhs.into_inner(), - ) + let output: u128 = ::core::time::Duration::as_micros(&_self) .into(); output } }; output }, - " Returns the vector rejection of `self` from `rhs`.\n The vector rejection is the vector perpendicular to the projection of `self` onto\n `rhs`, in rhs words the result of `self - self.project_onto(rhs)`.\n `rhs` must be of non-zero length.\n # Panics\n Will panic if `rhs` has a length of zero when `glam_assert` is enabled.", - &["_self", "rhs"], + " Returns the total number of whole microseconds contained by this `Duration`.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::new(5, 730_023_852);\n assert_eq!(duration.as_micros(), 5_730_023);\n ```", + &["_self"], ) .register_documented( - "reject_from_normalized", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "as_millis", + |_self: R<::core::time::Duration>| { + let output: u128 = { { - let output: V<::glam::Vec3> = ::glam::Vec3::reject_from_normalized( - _self.into_inner(), - rhs.into_inner(), - ) + let output: u128 = ::core::time::Duration::as_millis(&_self) .into(); output } }; output }, - " Returns the vector rejection of `self` from `rhs`.\n The vector rejection is the vector perpendicular to the projection of `self` onto\n `rhs`, in rhs words the result of `self - self.project_onto(rhs)`.\n `rhs` must be normalized.\n # Panics\n Will panic if `rhs` is not normalized when `glam_assert` is enabled.", - &["_self", "rhs"], + " Returns the total number of whole milliseconds contained by this `Duration`.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::new(5, 730_023_852);\n assert_eq!(duration.as_millis(), 5_730);\n ```", + &["_self"], ) .register_documented( - "rem", - |_self: V<::glam::Vec3>, rhs: R<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "as_nanos", + |_self: R<::core::time::Duration>| { + let output: u128 = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Rem< - &::glam::Vec3, - >>::rem(_self.into_inner(), &rhs) + let output: u128 = ::core::time::Duration::as_nanos(&_self) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Returns the total number of nanoseconds contained by this `Duration`.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::new(5, 730_023_852);\n assert_eq!(duration.as_nanos(), 5_730_023_852);\n ```", + &["_self"], ) .register_documented( - "rem", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "as_secs", + |_self: R<::core::time::Duration>| { + let output: u64 = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Rem< - ::glam::Vec3, - >>::rem(_self.into_inner(), rhs.into_inner()) - .into(); + let output: u64 = ::core::time::Duration::as_secs(&_self).into(); output } }; output }, - "", - &["_self", "rhs"], + " Returns the number of _whole_ seconds contained by this `Duration`.\n The returned value does not include the fractional (nanosecond) part of the\n duration, which can be obtained using [`subsec_nanos`].\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::new(5, 730_023_852);\n assert_eq!(duration.as_secs(), 5);\n ```\n To determine the total number of seconds represented by the `Duration`\n including the fractional part, use [`as_secs_f64`] or [`as_secs_f32`]\n [`as_secs_f64`]: Duration::as_secs_f64\n [`as_secs_f32`]: Duration::as_secs_f32\n [`subsec_nanos`]: Duration::subsec_nanos", + &["_self"], ) .register_documented( - "rem", - |_self: V<::glam::Vec3>, rhs: f32| { - let output: V<::glam::Vec3> = { + "as_secs_f32", + |_self: R<::core::time::Duration>| { + let output: f32 = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Rem< - f32, - >>::rem(_self.into_inner(), rhs) + let output: f32 = ::core::time::Duration::as_secs_f32(&_self) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Returns the number of seconds contained by this `Duration` as `f32`.\n The returned value includes the fractional (nanosecond) part of the duration.\n # Examples\n ```\n use std::time::Duration;\n let dur = Duration::new(2, 700_000_000);\n assert_eq!(dur.as_secs_f32(), 2.7);\n ```", + &["_self"], ) .register_documented( - "rem_euclid", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "as_secs_f64", + |_self: R<::core::time::Duration>| { + let output: f64 = { { - let output: V<::glam::Vec3> = ::glam::Vec3::rem_euclid( - _self.into_inner(), - rhs.into_inner(), - ) + let output: f64 = ::core::time::Duration::as_secs_f64(&_self) .into(); output } }; output }, - " Returns the element-wise remainder of [Euclidean division] of `self` by `rhs`.\n [Euclidean division]: f32::rem_euclid", - &["_self", "rhs"], + " Returns the number of seconds contained by this `Duration` as `f64`.\n The returned value includes the fractional (nanosecond) part of the duration.\n # Examples\n ```\n use std::time::Duration;\n let dur = Duration::new(2, 700_000_000);\n assert_eq!(dur.as_secs_f64(), 2.7);\n ```", + &["_self"], ) .register_documented( - "rotate_axis", - |_self: V<::glam::Vec3>, axis: V<::glam::Vec3>, angle: f32| { - let output: V<::glam::Vec3> = { + "clone", + |_self: R<::core::time::Duration>| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::rotate_axis( - _self.into_inner(), - axis.into_inner(), - angle, + let output: V<::core::time::Duration> = <::core::time::Duration as ::core::clone::Clone>::clone( + &_self, ) .into(); output @@ -3980,36 +3648,34 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Rotates around `axis` by `angle` (in radians).\n The axis must be a unit vector.\n # Panics\n Will panic if `axis` is not normalized when `glam_assert` is enabled.", - &["_self", "axis", "angle"], + "", + &["_self"], ) .register_documented( - "rotate_towards", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>, max_angle: f32| { - let output: V<::glam::Vec3> = { + "div", + |_self: V<::core::time::Duration>, rhs: u32| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::rotate_towards( - _self.into_inner(), - rhs.into_inner(), - max_angle, - ) + let output: V<::core::time::Duration> = <::core::time::Duration as ::core::ops::Div< + u32, + >>::div(_self.into_inner(), rhs) .into(); output } }; output }, - " Rotates towards `rhs` up to `max_angle` (in radians).\n When `max_angle` is `0.0`, the result will be equal to `self`. When `max_angle` is equal to\n `self.angle_between(rhs)`, the result will be parallel to `rhs`. If `max_angle` is negative,\n rotates towards the exact opposite of `rhs`. Will not go past the target.", - &["_self", "rhs", "max_angle"], + "", + &["_self", "rhs"], ) .register_documented( - "rotate_x", - |_self: V<::glam::Vec3>, angle: f32| { - let output: V<::glam::Vec3> = { + "div_duration_f32", + |_self: V<::core::time::Duration>, rhs: V<::core::time::Duration>| { + let output: f32 = { { - let output: V<::glam::Vec3> = ::glam::Vec3::rotate_x( + let output: f32 = ::core::time::Duration::div_duration_f32( _self.into_inner(), - angle, + rhs.into_inner(), ) .into(); output @@ -4017,17 +3683,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Rotates around the x axis by `angle` (in radians).", - &["_self", "angle"], + " Divides `Duration` by `Duration` and returns `f32`.\n # Examples\n ```\n use std::time::Duration;\n let dur1 = Duration::new(2, 700_000_000);\n let dur2 = Duration::new(5, 400_000_000);\n assert_eq!(dur1.div_duration_f32(dur2), 0.5);\n ```", + &["_self", "rhs"], ) .register_documented( - "rotate_y", - |_self: V<::glam::Vec3>, angle: f32| { - let output: V<::glam::Vec3> = { + "div_duration_f64", + |_self: V<::core::time::Duration>, rhs: V<::core::time::Duration>| { + let output: f64 = { { - let output: V<::glam::Vec3> = ::glam::Vec3::rotate_y( + let output: f64 = ::core::time::Duration::div_duration_f64( _self.into_inner(), - angle, + rhs.into_inner(), ) .into(); output @@ -4035,17 +3701,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Rotates around the y axis by `angle` (in radians).", - &["_self", "angle"], + " Divides `Duration` by `Duration` and returns `f64`.\n # Examples\n ```\n use std::time::Duration;\n let dur1 = Duration::new(2, 700_000_000);\n let dur2 = Duration::new(5, 400_000_000);\n assert_eq!(dur1.div_duration_f64(dur2), 0.5);\n ```", + &["_self", "rhs"], ) .register_documented( - "rotate_z", - |_self: V<::glam::Vec3>, angle: f32| { - let output: V<::glam::Vec3> = { + "div_f32", + |_self: V<::core::time::Duration>, rhs: f32| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::rotate_z( + let output: V<::core::time::Duration> = ::core::time::Duration::div_f32( _self.into_inner(), - angle, + rhs, ) .into(); output @@ -4053,16 +3719,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Rotates around the z axis by `angle` (in radians).", - &["_self", "angle"], + " Divides `Duration` by `f32`.\n Since the significand of `f32` is quite limited compared to the range of `Duration`\n -- only about 16.8ms of exact nanosecond precision -- this method currently forwards\n to [`div_f64`][Self::div_f64] for greater accuracy.\n # Panics\n This method will panic if result is negative, overflows `Duration` or not finite.\n # Examples\n ```\n use std::time::Duration;\n let dur = Duration::new(2, 700_000_000);\n // Note that this `3.14_f32` argument already has more floating-point\n // representation error than a direct `3.14_f64` would, so the result\n // is slightly different from the ideally rounded 0.859_872_611.\n assert_eq!(dur.div_f32(3.14), Duration::new(0, 859_872_583));\n assert_eq!(dur.div_f32(3.14e5), Duration::new(0, 8_599));\n ```", + &["_self", "rhs"], ) .register_documented( - "round", - |_self: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "div_f64", + |_self: V<::core::time::Duration>, rhs: f64| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::round( + let output: V<::core::time::Duration> = ::core::time::Duration::div_f64( _self.into_inner(), + rhs, ) .into(); output @@ -4070,39 +3737,33 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector containing the nearest integer to a number for each element of `self`.\n Round half-way cases away from 0.0.", - &["_self"], + " Divides `Duration` by `f64`.\n # Panics\n This method will panic if result is negative, overflows `Duration` or not finite.\n # Examples\n ```\n use std::time::Duration;\n let dur = Duration::new(2, 700_000_000);\n assert_eq!(dur.div_f64(3.14), Duration::new(0, 859_872_611));\n assert_eq!(dur.div_f64(3.14e5), Duration::new(0, 8_599));\n ```\n Note that `f64` does not have enough bits ([`f64::MANTISSA_DIGITS`]) to represent the full\n range of possible `Duration` with nanosecond precision, so rounding may occur even for\n trivial operations like dividing by 1.\n ```\n # #![feature(float_exact_integer_constants)]\n use std::time::Duration;\n // This is about 14.9 weeks, remaining precise to the nanosecond:\n let weeks = Duration::from_nanos(f64::MAX_EXACT_INTEGER as u64);\n assert_eq!(weeks, weeks.div_f64(1.0));\n // A larger value incurs rounding in the floating-point operation:\n let weeks = Duration::from_nanos(u64::MAX);\n assert_ne!(weeks, weeks.div_f64(1.0));\n // This is over 285 million years, remaining precise to the second:\n let years = Duration::from_secs(f64::MAX_EXACT_INTEGER as u64);\n assert_eq!(years, years.div_f64(1.0));\n // And again larger values incur rounding:\n let years = Duration::from_secs(u64::MAX / 2);\n assert_ne!(years, years.div_f64(1.0));\n ```\n ```should_panic\n # use std::time::Duration;\n // In the extreme, rounding can even overflow `Duration`, which panics.\n let _ = Duration::from_secs(u64::MAX).div_f64(1.0);\n ```", + &["_self", "rhs"], ) .register_documented( - "select", - | - mask: V<::glam::BVec3>, - if_true: V<::glam::Vec3>, - if_false: V<::glam::Vec3>| - { - let output: V<::glam::Vec3> = { + "eq", + |_self: R<::core::time::Duration>, other: R<::core::time::Duration>| { + let output: bool = { { - let output: V<::glam::Vec3> = ::glam::Vec3::select( - mask.into_inner(), - if_true.into_inner(), - if_false.into_inner(), - ) + let output: bool = <::core::time::Duration as ::core::cmp::PartialEq< + ::core::time::Duration, + >>::eq(&_self, &other) .into(); output } }; output }, - " Creates a vector from the elements in `if_true` and `if_false`, selecting which to use\n for each element of `self`.\n A true element in the mask uses the corresponding element from `if_true`, and false\n uses the element from `if_false`.", - &["mask", "if_true", "if_false"], + "", + &["_self", "other"], ) .register_documented( - "signum", - |_self: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "from_hours", + |hours: u64| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::signum( - _self.into_inner(), + let output: V<::core::time::Duration> = ::core::time::Duration::from_hours( + hours, ) .into(); output @@ -4110,18 +3771,16 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Returns a vector with elements representing the sign of `self`.\n - `1.0` if the number is positive, `+0.0` or `INFINITY`\n - `-1.0` if the number is negative, `-0.0` or `NEG_INFINITY`\n - `NAN` if the number is `NAN`", - &["_self"], + " Creates a new `Duration` from the specified number of hours.\n # Panics\n Panics if the given number of hours overflows the `Duration` size.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_hours(6);\n assert_eq!(6 * 60 * 60, duration.as_secs());\n assert_eq!(0, duration.subsec_nanos());\n ```", + &["hours"], ) .register_documented( - "slerp", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>, s: f32| { - let output: V<::glam::Vec3> = { + "from_micros", + |micros: u64| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::slerp( - _self.into_inner(), - rhs.into_inner(), - s, + let output: V<::core::time::Duration> = ::core::time::Duration::from_micros( + micros, ) .into(); output @@ -4129,95 +3788,101 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Performs a spherical linear interpolation between `self` and `rhs` based on the value `s`.\n When `s` is `0.0`, the result will be equal to `self`. When `s` is `1.0`, the result\n will be equal to `rhs`. When `s` is outside of range `[0, 1]`, the result is linearly\n extrapolated.", - &["_self", "rhs", "s"], + " Creates a new `Duration` from the specified number of microseconds.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_micros(1_000_002);\n assert_eq!(1, duration.as_secs());\n assert_eq!(2_000, duration.subsec_nanos());\n ```", + &["micros"], ) .register_documented( - "splat", - |v: f32| { - let output: V<::glam::Vec3> = { + "from_millis", + |millis: u64| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::splat(v).into(); + let output: V<::core::time::Duration> = ::core::time::Duration::from_millis( + millis, + ) + .into(); output } }; output }, - " Creates a vector with all elements set to `v`.", - &["v"], + " Creates a new `Duration` from the specified number of milliseconds.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_millis(2_569);\n assert_eq!(2, duration.as_secs());\n assert_eq!(569_000_000, duration.subsec_nanos());\n ```", + &["millis"], ) .register_documented( - "sub", - |_self: V<::glam::Vec3>, rhs: R<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "from_mins", + |mins: u64| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Sub< - &::glam::Vec3, - >>::sub(_self.into_inner(), &rhs) + let output: V<::core::time::Duration> = ::core::time::Duration::from_mins( + mins, + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Creates a new `Duration` from the specified number of minutes.\n # Panics\n Panics if the given number of minutes overflows the `Duration` size.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_mins(10);\n assert_eq!(10 * 60, duration.as_secs());\n assert_eq!(0, duration.subsec_nanos());\n ```", + &["mins"], ) .register_documented( - "sub", - |_self: V<::glam::Vec3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "from_nanos", + |nanos: u64| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Sub< - ::glam::Vec3, - >>::sub(_self.into_inner(), rhs.into_inner()) + let output: V<::core::time::Duration> = ::core::time::Duration::from_nanos( + nanos, + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Creates a new `Duration` from the specified number of nanoseconds.\n Note: Using this on the return value of `as_nanos()` might cause unexpected behavior:\n `as_nanos()` returns a u128, and can return values that do not fit in u64, e.g. 585 years.\n Instead, consider using the pattern `Duration::new(d.as_secs(), d.subsec_nanos())`\n if you cannot copy/clone the Duration directly.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_nanos(1_000_000_123);\n assert_eq!(1, duration.as_secs());\n assert_eq!(123, duration.subsec_nanos());\n ```", + &["nanos"], ) .register_documented( - "sub", - |_self: V<::glam::Vec3>, rhs: f32| { - let output: V<::glam::Vec3> = { + "from_nanos_u128", + |nanos: u128| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = <::glam::Vec3 as ::core::ops::Sub< - f32, - >>::sub(_self.into_inner(), rhs) + let output: V<::core::time::Duration> = ::core::time::Duration::from_nanos_u128( + nanos, + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Creates a new `Duration` from the specified number of nanoseconds.\n # Panics\n Panics if the given number of nanoseconds is greater than [`Duration::MAX`].\n # Examples\n ```\n use std::time::Duration;\n let nanos = 10_u128.pow(24) + 321;\n let duration = Duration::from_nanos_u128(nanos);\n assert_eq!(10_u64.pow(15), duration.as_secs());\n assert_eq!(321, duration.subsec_nanos());\n ```", + &["nanos"], ) .register_documented( - "to_array", - |_self: R<::glam::Vec3>| { - let output: [f32; 3] = { + "from_secs", + |secs: u64| { + let output: V<::core::time::Duration> = { { - let output: [f32; 3] = ::glam::Vec3::to_array(&_self).into(); + let output: V<::core::time::Duration> = ::core::time::Duration::from_secs( + secs, + ) + .into(); output } }; output }, - " Converts `self` to `[x, y, z]`", - &["_self"], + " Creates a new `Duration` from the specified number of whole seconds.\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_secs(5);\n assert_eq!(5, duration.as_secs());\n assert_eq!(0, duration.subsec_nanos());\n ```", + &["secs"], ) .register_documented( - "to_homogeneous", - |_self: V<::glam::Vec3>| { - let output: V<::glam::Vec4> = { + "from_secs_f32", + |secs: f32| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec4> = ::glam::Vec3::to_homogeneous( - _self.into_inner(), + let output: V<::core::time::Duration> = ::core::time::Duration::from_secs_f32( + secs, ) .into(); output @@ -4225,16 +3890,16 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Creates a homogeneous coordinate from `self`, equivalent to `self.extend(1.0)`.", - &["_self"], + " Creates a new `Duration` from the specified number of seconds represented\n as `f32`.\n # Panics\n This constructor will panic if `secs` is negative, overflows `Duration` or not finite.\n # Examples\n ```\n use std::time::Duration;\n let res = Duration::from_secs_f32(0.0);\n assert_eq!(res, Duration::new(0, 0));\n let res = Duration::from_secs_f32(1e-20);\n assert_eq!(res, Duration::new(0, 0));\n let res = Duration::from_secs_f32(4.2e-7);\n assert_eq!(res, Duration::new(0, 420));\n let res = Duration::from_secs_f32(2.7);\n assert_eq!(res, Duration::new(2, 700_000_048));\n let res = Duration::from_secs_f32(3e10);\n assert_eq!(res, Duration::new(30_000_001_024, 0));\n // subnormal float\n let res = Duration::from_secs_f32(f32::from_bits(1));\n assert_eq!(res, Duration::new(0, 0));\n // conversion uses rounding\n let res = Duration::from_secs_f32(0.999e-9);\n assert_eq!(res, Duration::new(0, 1));\n ```", + &["secs"], ) .register_documented( - "to_vec3a", - |_self: V<::glam::Vec3>| { - let output: V<::glam::Vec3A> = { + "from_secs_f64", + |secs: f64| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3A> = ::glam::Vec3::to_vec3a( - _self.into_inner(), + let output: V<::core::time::Duration> = ::core::time::Duration::from_secs_f64( + secs, ) .into(); output @@ -4242,51 +3907,49 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - "", - &["_self"], + " Creates a new `Duration` from the specified number of seconds represented\n as `f64`.\n # Panics\n This constructor will panic if `secs` is negative, overflows `Duration` or not finite.\n # Examples\n ```\n use std::time::Duration;\n let res = Duration::from_secs_f64(0.0);\n assert_eq!(res, Duration::new(0, 0));\n let res = Duration::from_secs_f64(1e-20);\n assert_eq!(res, Duration::new(0, 0));\n let res = Duration::from_secs_f64(4.2e-7);\n assert_eq!(res, Duration::new(0, 420));\n let res = Duration::from_secs_f64(2.7);\n assert_eq!(res, Duration::new(2, 700_000_000));\n let res = Duration::from_secs_f64(3e10);\n assert_eq!(res, Duration::new(30_000_000_000, 0));\n // subnormal float\n let res = Duration::from_secs_f64(f64::from_bits(1));\n assert_eq!(res, Duration::new(0, 0));\n // conversion uses rounding\n let res = Duration::from_secs_f64(0.999e-9);\n assert_eq!(res, Duration::new(0, 1));\n ```", + &["secs"], ) .register_documented( - "trunc", - |_self: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + "is_zero", + |_self: R<::core::time::Duration>| { + let output: bool = { { - let output: V<::glam::Vec3> = ::glam::Vec3::trunc( - _self.into_inner(), - ) + let output: bool = ::core::time::Duration::is_zero(&_self) .into(); output } }; output }, - " Returns a vector containing the integer part each element of `self`. This means numbers are\n always truncated towards zero.", + " Returns true if this `Duration` spans no time.\n # Examples\n ```\n use std::time::Duration;\n assert!(Duration::ZERO.is_zero());\n assert!(Duration::new(0, 0).is_zero());\n assert!(Duration::from_nanos(0).is_zero());\n assert!(Duration::from_secs(0).is_zero());\n assert!(!Duration::new(1, 1).is_zero());\n assert!(!Duration::from_nanos(1).is_zero());\n assert!(!Duration::from_secs(1).is_zero());\n ```", &["_self"], ) .register_documented( - "truncate", - |_self: V<::glam::Vec3>| { - let output: V<::glam::Vec2> = { + "mul", + |_self: V<::core::time::Duration>, rhs: u32| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec2> = ::glam::Vec3::truncate( - _self.into_inner(), - ) + let output: V<::core::time::Duration> = <::core::time::Duration as ::core::ops::Mul< + u32, + >>::mul(_self.into_inner(), rhs) .into(); output } }; output }, - " Creates a 2D vector from the `x` and `y` elements of `self`, discarding `z`.\n Truncation may also be performed by using [`self.xy()`][crate::swizzles::Vec3Swizzles::xy()].", - &["_self"], + "", + &["_self", "rhs"], ) .register_documented( - "with_x", - |_self: V<::glam::Vec3>, x: f32| { - let output: V<::glam::Vec3> = { + "mul_f32", + |_self: V<::core::time::Duration>, rhs: f32| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::with_x( + let output: V<::core::time::Duration> = ::core::time::Duration::mul_f32( _self.into_inner(), - x, + rhs, ) .into(); output @@ -4294,17 +3957,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Creates a 3D vector from `self` with the given value of `x`.", - &["_self", "x"], + " Multiplies `Duration` by `f32`.\n Since the significand of `f32` is quite limited compared to the range of `Duration`\n -- only about 16.8ms of exact nanosecond precision -- this method currently forwards\n to [`mul_f64`][Self::mul_f64] for greater accuracy.\n # Panics\n This method will panic if result is negative, overflows `Duration` or not finite.\n # Examples\n ```\n use std::time::Duration;\n let dur = Duration::new(2, 700_000_000);\n // Note that this `3.14_f32` argument already has more floating-point\n // representation error than a direct `3.14_f64` would, so the result\n // is slightly different from the ideal 8.478s.\n assert_eq!(dur.mul_f32(3.14), Duration::new(8, 478_000_283));\n assert_eq!(dur.mul_f32(3.14e5), Duration::new(847_800, 0));\n ```", + &["_self", "rhs"], ) .register_documented( - "with_y", - |_self: V<::glam::Vec3>, y: f32| { - let output: V<::glam::Vec3> = { + "mul_f64", + |_self: V<::core::time::Duration>, rhs: f64| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::with_y( + let output: V<::core::time::Duration> = ::core::time::Duration::mul_f64( _self.into_inner(), - y, + rhs, ) .into(); output @@ -4312,17 +3975,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Creates a 3D vector from `self` with the given value of `y`.", - &["_self", "y"], + " Multiplies `Duration` by `f64`.\n # Panics\n This method will panic if result is negative, overflows `Duration` or not finite.\n # Examples\n ```\n use std::time::Duration;\n let dur = Duration::new(2, 700_000_000);\n assert_eq!(dur.mul_f64(3.14), Duration::new(8, 478_000_000));\n assert_eq!(dur.mul_f64(3.14e5), Duration::new(847_800, 0));\n ```\n Note that `f64` does not have enough bits ([`f64::MANTISSA_DIGITS`]) to represent the full\n range of possible `Duration` with nanosecond precision, so rounding may occur even for\n trivial operations like multiplying by 1.\n ```\n # #![feature(float_exact_integer_constants)]\n use std::time::Duration;\n // This is about 14.9 weeks, remaining precise to the nanosecond:\n let weeks = Duration::from_nanos(f64::MAX_EXACT_INTEGER as u64);\n assert_eq!(weeks, weeks.mul_f64(1.0));\n // A larger value incurs rounding in the floating-point operation:\n let weeks = Duration::from_nanos(u64::MAX);\n assert_ne!(weeks, weeks.mul_f64(1.0));\n // This is over 285 million years, remaining precise to the second:\n let years = Duration::from_secs(f64::MAX_EXACT_INTEGER as u64);\n assert_eq!(years, years.mul_f64(1.0));\n // And again larger values incur rounding:\n let years = Duration::from_secs(u64::MAX / 2);\n assert_ne!(years, years.mul_f64(1.0));\n ```\n ```should_panic\n # use std::time::Duration;\n // In the extreme, rounding can even overflow `Duration`, which panics.\n let _ = Duration::from_secs(u64::MAX).mul_f64(1.0);\n ```", + &["_self", "rhs"], ) .register_documented( - "with_z", - |_self: V<::glam::Vec3>, z: f32| { - let output: V<::glam::Vec3> = { + "new", + |secs: u64, nanos: u32| { + let output: V<::core::time::Duration> = { { - let output: V<::glam::Vec3> = ::glam::Vec3::with_z( - _self.into_inner(), - z, + let output: V<::core::time::Duration> = ::core::time::Duration::new( + secs, + nanos, ) .into(); output @@ -4330,24 +3993,17 @@ pub(crate) fn register_vec_3_functions(world: &mut World) { }; output }, - " Creates a 3D vector from `self` with the given value of `z`.", - &["_self", "z"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry.register_type_data::<::glam::Vec3, bevy_mod_scripting_bindings::MarkAsGenerated>(); -} -pub(crate) fn register_socket_addr_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::core::net::SocketAddr, - >::new(world) + " Creates a new `Duration` from the specified number of whole seconds and\n additional nanoseconds.\n If the number of nanoseconds is greater than 1 billion (the number of\n nanoseconds in a second), then it will carry over into the seconds provided.\n # Panics\n This constructor will panic if the carry from the nanoseconds overflows\n the seconds counter.\n # Examples\n ```\n use std::time::Duration;\n let five_seconds = Duration::new(5, 0);\n ```", + &["secs", "nanos"], + ) .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::core::net::SocketAddr>| { - let output: () = { + "saturating_add", + |_self: V<::core::time::Duration>, rhs: V<::core::time::Duration>| { + let output: V<::core::time::Duration> = { { - let output: () = <::core::net::SocketAddr as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::core::time::Duration> = ::core::time::Duration::saturating_add( + _self.into_inner(), + rhs.into_inner(), ) .into(); output @@ -4355,16 +4011,17 @@ pub(crate) fn register_socket_addr_functions(world: &mut World) { }; output }, - "", - &["_self"], + " Saturating `Duration` addition. Computes `self + other`, returning [`Duration::MAX`]\n if overflow occurred.\n # Examples\n ```\n use std::time::Duration;\n assert_eq!(Duration::new(0, 0).saturating_add(Duration::new(0, 1)), Duration::new(0, 1));\n assert_eq!(Duration::new(1, 0).saturating_add(Duration::new(u64::MAX, 0)), Duration::MAX);\n ```", + &["_self", "rhs"], ) .register_documented( - "clone", - |_self: R<::core::net::SocketAddr>| { - let output: V<::core::net::SocketAddr> = { + "saturating_mul", + |_self: V<::core::time::Duration>, rhs: u32| { + let output: V<::core::time::Duration> = { { - let output: V<::core::net::SocketAddr> = <::core::net::SocketAddr as ::core::clone::Clone>::clone( - &_self, + let output: V<::core::time::Duration> = ::core::time::Duration::saturating_mul( + _self.into_inner(), + rhs, ) .into(); output @@ -4372,95 +4029,94 @@ pub(crate) fn register_socket_addr_functions(world: &mut World) { }; output }, - "", - &["_self"], + " Saturating `Duration` multiplication. Computes `self * other`, returning\n [`Duration::MAX`] if overflow occurred.\n # Examples\n ```\n use std::time::Duration;\n assert_eq!(Duration::new(0, 500_000_001).saturating_mul(2), Duration::new(1, 2));\n assert_eq!(Duration::new(u64::MAX - 1, 0).saturating_mul(2), Duration::MAX);\n ```", + &["_self", "rhs"], ) .register_documented( - "eq", - |_self: R<::core::net::SocketAddr>, other: R<::core::net::SocketAddr>| { - let output: bool = { + "saturating_sub", + |_self: V<::core::time::Duration>, rhs: V<::core::time::Duration>| { + let output: V<::core::time::Duration> = { { - let output: bool = <::core::net::SocketAddr as ::core::cmp::PartialEq< - ::core::net::SocketAddr, - >>::eq(&_self, &other) + let output: V<::core::time::Duration> = ::core::time::Duration::saturating_sub( + _self.into_inner(), + rhs.into_inner(), + ) .into(); output } }; output }, - "", - &["_self", "other"], + " Saturating `Duration` subtraction. Computes `self - other`, returning [`Duration::ZERO`]\n if the result would be negative or if overflow occurred.\n # Examples\n ```\n use std::time::Duration;\n assert_eq!(Duration::new(0, 1).saturating_sub(Duration::new(0, 0)), Duration::new(0, 1));\n assert_eq!(Duration::new(0, 0).saturating_sub(Duration::new(0, 1)), Duration::ZERO);\n ```", + &["_self", "rhs"], ) .register_documented( - "is_ipv4", - |_self: R<::core::net::SocketAddr>| { - let output: bool = { + "sub", + |_self: V<::core::time::Duration>, rhs: V<::core::time::Duration>| { + let output: V<::core::time::Duration> = { { - let output: bool = ::core::net::SocketAddr::is_ipv4(&_self) + let output: V<::core::time::Duration> = <::core::time::Duration as ::core::ops::Sub< + ::core::time::Duration, + >>::sub(_self.into_inner(), rhs.into_inner()) .into(); output } }; output }, - " Returns [`true`] if the [IP address] in this `SocketAddr` is an\n [`IPv4` address], and [`false`] otherwise.\n [IP address]: IpAddr\n [`IPv4` address]: IpAddr::V4\n # Examples\n ```\n use std::net::{IpAddr, Ipv4Addr, SocketAddr};\n let socket = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(127, 0, 0, 1)), 8080);\n assert_eq!(socket.is_ipv4(), true);\n assert_eq!(socket.is_ipv6(), false);\n ```", - &["_self"], + "", + &["_self", "rhs"], ) .register_documented( - "is_ipv6", - |_self: R<::core::net::SocketAddr>| { - let output: bool = { + "subsec_micros", + |_self: R<::core::time::Duration>| { + let output: u32 = { { - let output: bool = ::core::net::SocketAddr::is_ipv6(&_self) + let output: u32 = ::core::time::Duration::subsec_micros(&_self) .into(); output } }; output }, - " Returns [`true`] if the [IP address] in this `SocketAddr` is an\n [`IPv6` address], and [`false`] otherwise.\n [IP address]: IpAddr\n [`IPv6` address]: IpAddr::V6\n # Examples\n ```\n use std::net::{IpAddr, Ipv6Addr, SocketAddr};\n let socket = SocketAddr::new(IpAddr::V6(Ipv6Addr::new(0, 0, 0, 0, 0, 65535, 0, 1)), 8080);\n assert_eq!(socket.is_ipv4(), false);\n assert_eq!(socket.is_ipv6(), true);\n ```", + " Returns the fractional part of this `Duration`, in whole microseconds.\n This method does **not** return the length of the duration when\n represented by microseconds. The returned number always represents a\n fractional portion of a second (i.e., it is less than one million).\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_micros(1_234_567);\n assert_eq!(duration.as_secs(), 1);\n assert_eq!(duration.subsec_micros(), 234_567);\n ```", &["_self"], ) .register_documented( - "port", - |_self: R<::core::net::SocketAddr>| { - let output: u16 = { + "subsec_millis", + |_self: R<::core::time::Duration>| { + let output: u32 = { { - let output: u16 = ::core::net::SocketAddr::port(&_self).into(); + let output: u32 = ::core::time::Duration::subsec_millis(&_self) + .into(); output } }; output }, - " Returns the port number associated with this socket address.\n # Examples\n ```\n use std::net::{IpAddr, Ipv4Addr, SocketAddr};\n let socket = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(127, 0, 0, 1)), 8080);\n assert_eq!(socket.port(), 8080);\n ```", + " Returns the fractional part of this `Duration`, in whole milliseconds.\n This method does **not** return the length of the duration when\n represented by milliseconds. The returned number always represents a\n fractional portion of a second (i.e., it is less than one thousand).\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_millis(5_432);\n assert_eq!(duration.as_secs(), 5);\n assert_eq!(duration.subsec_millis(), 432);\n ```", &["_self"], ) .register_documented( - "set_port", - |mut _self: M<::core::net::SocketAddr>, new_port: u16| { - let output: () = { + "subsec_nanos", + |_self: R<::core::time::Duration>| { + let output: u32 = { { - let output: () = ::core::net::SocketAddr::set_port( - &mut _self, - new_port, - ) + let output: u32 = ::core::time::Duration::subsec_nanos(&_self) .into(); output } }; output }, - " Changes the port number associated with this socket address.\n # Examples\n ```\n use std::net::{IpAddr, Ipv4Addr, SocketAddr};\n let mut socket = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(127, 0, 0, 1)), 8080);\n socket.set_port(1025);\n assert_eq!(socket.port(), 1025);\n ```", - &["_self", "new_port"], + " Returns the fractional part of this `Duration`, in nanoseconds.\n This method does **not** return the length of the duration when\n represented by nanoseconds. The returned number always represents a\n fractional portion of a second (i.e., it is less than one billion).\n # Examples\n ```\n use std::time::Duration;\n let duration = Duration::from_millis(5_010);\n assert_eq!(duration.as_secs(), 5);\n assert_eq!(duration.subsec_nanos(), 10_000_000);\n ```", + &["_self"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry - .register_type_data::< - ::core::net::SocketAddr, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); + .register_type_data::<::core::time::Duration, bevy_mod_scripting_bindings::MarkAsGenerated>( + ); } pub(crate) fn register_i_vec_2_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< @@ -4536,10 +4192,12 @@ pub(crate) fn register_i_vec_2_functions(world: &mut World) { ) .register_documented( "as_dvec2", - |_self: R<::glam::IVec2>| { + |_self: V<::glam::IVec2>| { let output: V<::glam::DVec2> = { { - let output: V<::glam::DVec2> = ::glam::IVec2::as_dvec2(&_self) + let output: V<::glam::DVec2> = ::glam::IVec2::as_dvec2( + _self.into_inner(), + ) .into(); output } @@ -4551,11 +4209,11 @@ pub(crate) fn register_i_vec_2_functions(world: &mut World) { ) .register_documented( "as_i16vec2", - |_self: R<::glam::IVec2>| { + |_self: V<::glam::IVec2>| { let output: V<::glam::I16Vec2> = { { let output: V<::glam::I16Vec2> = ::glam::IVec2::as_i16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -4568,11 +4226,11 @@ pub(crate) fn register_i_vec_2_functions(world: &mut World) { ) .register_documented( "as_i64vec2", - |_self: R<::glam::IVec2>| { + |_self: V<::glam::IVec2>| { let output: V<::glam::I64Vec2> = { { let output: V<::glam::I64Vec2> = ::glam::IVec2::as_i64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -4585,10 +4243,12 @@ pub(crate) fn register_i_vec_2_functions(world: &mut World) { ) .register_documented( "as_i8vec2", - |_self: R<::glam::IVec2>| { + |_self: V<::glam::IVec2>| { let output: V<::glam::I8Vec2> = { { - let output: V<::glam::I8Vec2> = ::glam::IVec2::as_i8vec2(&_self) + let output: V<::glam::I8Vec2> = ::glam::IVec2::as_i8vec2( + _self.into_inner(), + ) .into(); output } @@ -4600,11 +4260,11 @@ pub(crate) fn register_i_vec_2_functions(world: &mut World) { ) .register_documented( "as_u16vec2", - |_self: R<::glam::IVec2>| { + |_self: V<::glam::IVec2>| { let output: V<::glam::U16Vec2> = { { let output: V<::glam::U16Vec2> = ::glam::IVec2::as_u16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -4617,11 +4277,11 @@ pub(crate) fn register_i_vec_2_functions(world: &mut World) { ) .register_documented( "as_u64vec2", - |_self: R<::glam::IVec2>| { + |_self: V<::glam::IVec2>| { let output: V<::glam::U64Vec2> = { { let output: V<::glam::U64Vec2> = ::glam::IVec2::as_u64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -4634,10 +4294,12 @@ pub(crate) fn register_i_vec_2_functions(world: &mut World) { ) .register_documented( "as_u8vec2", - |_self: R<::glam::IVec2>| { + |_self: V<::glam::IVec2>| { let output: V<::glam::U8Vec2> = { { - let output: V<::glam::U8Vec2> = ::glam::IVec2::as_u8vec2(&_self) + let output: V<::glam::U8Vec2> = ::glam::IVec2::as_u8vec2( + _self.into_inner(), + ) .into(); output } @@ -4649,10 +4311,12 @@ pub(crate) fn register_i_vec_2_functions(world: &mut World) { ) .register_documented( "as_uvec2", - |_self: R<::glam::IVec2>| { + |_self: V<::glam::IVec2>| { let output: V<::glam::UVec2> = { { - let output: V<::glam::UVec2> = ::glam::IVec2::as_uvec2(&_self) + let output: V<::glam::UVec2> = ::glam::IVec2::as_uvec2( + _self.into_inner(), + ) .into(); output } @@ -4664,26 +4328,11 @@ pub(crate) fn register_i_vec_2_functions(world: &mut World) { ) .register_documented( "as_vec2", - |_self: R<::glam::IVec2>| { + |_self: V<::glam::IVec2>| { let output: V<::glam::Vec2> = { { - let output: V<::glam::Vec2> = ::glam::IVec2::as_vec2(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::IVec2>| { - let output: () = { - { - let output: () = <::glam::IVec2 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec2> = ::glam::IVec2::as_vec2( + _self.into_inner(), ) .into(); output @@ -4691,7 +4340,7 @@ pub(crate) fn register_i_vec_2_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -5884,10 +5533,12 @@ pub(crate) fn register_i_vec_3_functions(world: &mut World) { ) .register_documented( "as_dvec3", - |_self: R<::glam::IVec3>| { + |_self: V<::glam::IVec3>| { let output: V<::glam::DVec3> = { { - let output: V<::glam::DVec3> = ::glam::IVec3::as_dvec3(&_self) + let output: V<::glam::DVec3> = ::glam::IVec3::as_dvec3( + _self.into_inner(), + ) .into(); output } @@ -5899,11 +5550,11 @@ pub(crate) fn register_i_vec_3_functions(world: &mut World) { ) .register_documented( "as_i16vec3", - |_self: R<::glam::IVec3>| { + |_self: V<::glam::IVec3>| { let output: V<::glam::I16Vec3> = { { let output: V<::glam::I16Vec3> = ::glam::IVec3::as_i16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -5916,11 +5567,11 @@ pub(crate) fn register_i_vec_3_functions(world: &mut World) { ) .register_documented( "as_i64vec3", - |_self: R<::glam::IVec3>| { + |_self: V<::glam::IVec3>| { let output: V<::glam::I64Vec3> = { { let output: V<::glam::I64Vec3> = ::glam::IVec3::as_i64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -5933,10 +5584,12 @@ pub(crate) fn register_i_vec_3_functions(world: &mut World) { ) .register_documented( "as_i8vec3", - |_self: R<::glam::IVec3>| { + |_self: V<::glam::IVec3>| { let output: V<::glam::I8Vec3> = { { - let output: V<::glam::I8Vec3> = ::glam::IVec3::as_i8vec3(&_self) + let output: V<::glam::I8Vec3> = ::glam::IVec3::as_i8vec3( + _self.into_inner(), + ) .into(); output } @@ -5948,11 +5601,11 @@ pub(crate) fn register_i_vec_3_functions(world: &mut World) { ) .register_documented( "as_u16vec3", - |_self: R<::glam::IVec3>| { + |_self: V<::glam::IVec3>| { let output: V<::glam::U16Vec3> = { { let output: V<::glam::U16Vec3> = ::glam::IVec3::as_u16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -5965,11 +5618,11 @@ pub(crate) fn register_i_vec_3_functions(world: &mut World) { ) .register_documented( "as_u64vec3", - |_self: R<::glam::IVec3>| { + |_self: V<::glam::IVec3>| { let output: V<::glam::U64Vec3> = { { let output: V<::glam::U64Vec3> = ::glam::IVec3::as_u64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -5982,10 +5635,12 @@ pub(crate) fn register_i_vec_3_functions(world: &mut World) { ) .register_documented( "as_u8vec3", - |_self: R<::glam::IVec3>| { + |_self: V<::glam::IVec3>| { let output: V<::glam::U8Vec3> = { { - let output: V<::glam::U8Vec3> = ::glam::IVec3::as_u8vec3(&_self) + let output: V<::glam::U8Vec3> = ::glam::IVec3::as_u8vec3( + _self.into_inner(), + ) .into(); output } @@ -5997,10 +5652,12 @@ pub(crate) fn register_i_vec_3_functions(world: &mut World) { ) .register_documented( "as_uvec3", - |_self: R<::glam::IVec3>| { + |_self: V<::glam::IVec3>| { let output: V<::glam::UVec3> = { { - let output: V<::glam::UVec3> = ::glam::IVec3::as_uvec3(&_self) + let output: V<::glam::UVec3> = ::glam::IVec3::as_uvec3( + _self.into_inner(), + ) .into(); output } @@ -6012,10 +5669,12 @@ pub(crate) fn register_i_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3", - |_self: R<::glam::IVec3>| { + |_self: V<::glam::IVec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::IVec3::as_vec3(&_self) + let output: V<::glam::Vec3> = ::glam::IVec3::as_vec3( + _self.into_inner(), + ) .into(); output } @@ -6027,26 +5686,11 @@ pub(crate) fn register_i_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3a", - |_self: R<::glam::IVec3>| { + |_self: V<::glam::IVec3>| { let output: V<::glam::Vec3A> = { { - let output: V<::glam::Vec3A> = ::glam::IVec3::as_vec3a(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::IVec3>| { - let output: () = { - { - let output: () = <::glam::IVec3 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec3A> = ::glam::IVec3::as_vec3a( + _self.into_inner(), ) .into(); output @@ -6054,7 +5698,7 @@ pub(crate) fn register_i_vec_3_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -7248,10 +6892,12 @@ pub(crate) fn register_i_vec_4_functions(world: &mut World) { ) .register_documented( "as_dvec4", - |_self: R<::glam::IVec4>| { + |_self: V<::glam::IVec4>| { let output: V<::glam::DVec4> = { { - let output: V<::glam::DVec4> = ::glam::IVec4::as_dvec4(&_self) + let output: V<::glam::DVec4> = ::glam::IVec4::as_dvec4( + _self.into_inner(), + ) .into(); output } @@ -7263,11 +6909,11 @@ pub(crate) fn register_i_vec_4_functions(world: &mut World) { ) .register_documented( "as_i16vec4", - |_self: R<::glam::IVec4>| { + |_self: V<::glam::IVec4>| { let output: V<::glam::I16Vec4> = { { let output: V<::glam::I16Vec4> = ::glam::IVec4::as_i16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -7280,11 +6926,11 @@ pub(crate) fn register_i_vec_4_functions(world: &mut World) { ) .register_documented( "as_i64vec4", - |_self: R<::glam::IVec4>| { + |_self: V<::glam::IVec4>| { let output: V<::glam::I64Vec4> = { { let output: V<::glam::I64Vec4> = ::glam::IVec4::as_i64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -7297,10 +6943,12 @@ pub(crate) fn register_i_vec_4_functions(world: &mut World) { ) .register_documented( "as_i8vec4", - |_self: R<::glam::IVec4>| { + |_self: V<::glam::IVec4>| { let output: V<::glam::I8Vec4> = { { - let output: V<::glam::I8Vec4> = ::glam::IVec4::as_i8vec4(&_self) + let output: V<::glam::I8Vec4> = ::glam::IVec4::as_i8vec4( + _self.into_inner(), + ) .into(); output } @@ -7312,11 +6960,11 @@ pub(crate) fn register_i_vec_4_functions(world: &mut World) { ) .register_documented( "as_u16vec4", - |_self: R<::glam::IVec4>| { + |_self: V<::glam::IVec4>| { let output: V<::glam::U16Vec4> = { { let output: V<::glam::U16Vec4> = ::glam::IVec4::as_u16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -7329,11 +6977,11 @@ pub(crate) fn register_i_vec_4_functions(world: &mut World) { ) .register_documented( "as_u64vec4", - |_self: R<::glam::IVec4>| { + |_self: V<::glam::IVec4>| { let output: V<::glam::U64Vec4> = { { let output: V<::glam::U64Vec4> = ::glam::IVec4::as_u64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -7346,10 +6994,12 @@ pub(crate) fn register_i_vec_4_functions(world: &mut World) { ) .register_documented( "as_u8vec4", - |_self: R<::glam::IVec4>| { + |_self: V<::glam::IVec4>| { let output: V<::glam::U8Vec4> = { { - let output: V<::glam::U8Vec4> = ::glam::IVec4::as_u8vec4(&_self) + let output: V<::glam::U8Vec4> = ::glam::IVec4::as_u8vec4( + _self.into_inner(), + ) .into(); output } @@ -7361,10 +7011,12 @@ pub(crate) fn register_i_vec_4_functions(world: &mut World) { ) .register_documented( "as_uvec4", - |_self: R<::glam::IVec4>| { + |_self: V<::glam::IVec4>| { let output: V<::glam::UVec4> = { { - let output: V<::glam::UVec4> = ::glam::IVec4::as_uvec4(&_self) + let output: V<::glam::UVec4> = ::glam::IVec4::as_uvec4( + _self.into_inner(), + ) .into(); output } @@ -7376,26 +7028,11 @@ pub(crate) fn register_i_vec_4_functions(world: &mut World) { ) .register_documented( "as_vec4", - |_self: R<::glam::IVec4>| { + |_self: V<::glam::IVec4>| { let output: V<::glam::Vec4> = { { - let output: V<::glam::Vec4> = ::glam::IVec4::as_vec4(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::IVec4>| { - let output: () = { - { - let output: () = <::glam::IVec4 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec4> = ::glam::IVec4::as_vec4( + _self.into_inner(), ) .into(); output @@ -7403,7 +7040,7 @@ pub(crate) fn register_i_vec_4_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -8579,10 +8216,12 @@ pub(crate) fn register_i_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_dvec2", - |_self: R<::glam::I8Vec2>| { + |_self: V<::glam::I8Vec2>| { let output: V<::glam::DVec2> = { { - let output: V<::glam::DVec2> = ::glam::I8Vec2::as_dvec2(&_self) + let output: V<::glam::DVec2> = ::glam::I8Vec2::as_dvec2( + _self.into_inner(), + ) .into(); output } @@ -8594,11 +8233,11 @@ pub(crate) fn register_i_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_i16vec2", - |_self: R<::glam::I8Vec2>| { + |_self: V<::glam::I8Vec2>| { let output: V<::glam::I16Vec2> = { { let output: V<::glam::I16Vec2> = ::glam::I8Vec2::as_i16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -8611,11 +8250,11 @@ pub(crate) fn register_i_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_i64vec2", - |_self: R<::glam::I8Vec2>| { + |_self: V<::glam::I8Vec2>| { let output: V<::glam::I64Vec2> = { { let output: V<::glam::I64Vec2> = ::glam::I8Vec2::as_i64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -8628,10 +8267,12 @@ pub(crate) fn register_i_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_ivec2", - |_self: R<::glam::I8Vec2>| { + |_self: V<::glam::I8Vec2>| { let output: V<::glam::IVec2> = { { - let output: V<::glam::IVec2> = ::glam::I8Vec2::as_ivec2(&_self) + let output: V<::glam::IVec2> = ::glam::I8Vec2::as_ivec2( + _self.into_inner(), + ) .into(); output } @@ -8643,11 +8284,11 @@ pub(crate) fn register_i_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_u16vec2", - |_self: R<::glam::I8Vec2>| { + |_self: V<::glam::I8Vec2>| { let output: V<::glam::U16Vec2> = { { let output: V<::glam::U16Vec2> = ::glam::I8Vec2::as_u16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -8660,11 +8301,11 @@ pub(crate) fn register_i_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_u64vec2", - |_self: R<::glam::I8Vec2>| { + |_self: V<::glam::I8Vec2>| { let output: V<::glam::U64Vec2> = { { let output: V<::glam::U64Vec2> = ::glam::I8Vec2::as_u64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -8677,10 +8318,12 @@ pub(crate) fn register_i_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_u8vec2", - |_self: R<::glam::I8Vec2>| { + |_self: V<::glam::I8Vec2>| { let output: V<::glam::U8Vec2> = { { - let output: V<::glam::U8Vec2> = ::glam::I8Vec2::as_u8vec2(&_self) + let output: V<::glam::U8Vec2> = ::glam::I8Vec2::as_u8vec2( + _self.into_inner(), + ) .into(); output } @@ -8692,10 +8335,12 @@ pub(crate) fn register_i_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_uvec2", - |_self: R<::glam::I8Vec2>| { + |_self: V<::glam::I8Vec2>| { let output: V<::glam::UVec2> = { { - let output: V<::glam::UVec2> = ::glam::I8Vec2::as_uvec2(&_self) + let output: V<::glam::UVec2> = ::glam::I8Vec2::as_uvec2( + _self.into_inner(), + ) .into(); output } @@ -8707,26 +8352,11 @@ pub(crate) fn register_i_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_vec2", - |_self: R<::glam::I8Vec2>| { + |_self: V<::glam::I8Vec2>| { let output: V<::glam::Vec2> = { { - let output: V<::glam::Vec2> = ::glam::I8Vec2::as_vec2(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::I8Vec2>| { - let output: () = { - { - let output: () = <::glam::I8Vec2 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec2> = ::glam::I8Vec2::as_vec2( + _self.into_inner(), ) .into(); output @@ -8734,7 +8364,7 @@ pub(crate) fn register_i_8_vec_2_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -9927,10 +9557,12 @@ pub(crate) fn register_i_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_dvec3", - |_self: R<::glam::I8Vec3>| { + |_self: V<::glam::I8Vec3>| { let output: V<::glam::DVec3> = { { - let output: V<::glam::DVec3> = ::glam::I8Vec3::as_dvec3(&_self) + let output: V<::glam::DVec3> = ::glam::I8Vec3::as_dvec3( + _self.into_inner(), + ) .into(); output } @@ -9942,11 +9574,11 @@ pub(crate) fn register_i_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_i16vec3", - |_self: R<::glam::I8Vec3>| { + |_self: V<::glam::I8Vec3>| { let output: V<::glam::I16Vec3> = { { let output: V<::glam::I16Vec3> = ::glam::I8Vec3::as_i16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -9959,11 +9591,11 @@ pub(crate) fn register_i_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_i64vec3", - |_self: R<::glam::I8Vec3>| { + |_self: V<::glam::I8Vec3>| { let output: V<::glam::I64Vec3> = { { let output: V<::glam::I64Vec3> = ::glam::I8Vec3::as_i64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -9976,10 +9608,12 @@ pub(crate) fn register_i_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_ivec3", - |_self: R<::glam::I8Vec3>| { + |_self: V<::glam::I8Vec3>| { let output: V<::glam::IVec3> = { { - let output: V<::glam::IVec3> = ::glam::I8Vec3::as_ivec3(&_self) + let output: V<::glam::IVec3> = ::glam::I8Vec3::as_ivec3( + _self.into_inner(), + ) .into(); output } @@ -9991,11 +9625,11 @@ pub(crate) fn register_i_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_u16vec3", - |_self: R<::glam::I8Vec3>| { + |_self: V<::glam::I8Vec3>| { let output: V<::glam::U16Vec3> = { { let output: V<::glam::U16Vec3> = ::glam::I8Vec3::as_u16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -10008,11 +9642,11 @@ pub(crate) fn register_i_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_u64vec3", - |_self: R<::glam::I8Vec3>| { + |_self: V<::glam::I8Vec3>| { let output: V<::glam::U64Vec3> = { { let output: V<::glam::U64Vec3> = ::glam::I8Vec3::as_u64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -10025,10 +9659,12 @@ pub(crate) fn register_i_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_u8vec3", - |_self: R<::glam::I8Vec3>| { + |_self: V<::glam::I8Vec3>| { let output: V<::glam::U8Vec3> = { { - let output: V<::glam::U8Vec3> = ::glam::I8Vec3::as_u8vec3(&_self) + let output: V<::glam::U8Vec3> = ::glam::I8Vec3::as_u8vec3( + _self.into_inner(), + ) .into(); output } @@ -10040,10 +9676,12 @@ pub(crate) fn register_i_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_uvec3", - |_self: R<::glam::I8Vec3>| { + |_self: V<::glam::I8Vec3>| { let output: V<::glam::UVec3> = { { - let output: V<::glam::UVec3> = ::glam::I8Vec3::as_uvec3(&_self) + let output: V<::glam::UVec3> = ::glam::I8Vec3::as_uvec3( + _self.into_inner(), + ) .into(); output } @@ -10055,10 +9693,12 @@ pub(crate) fn register_i_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3", - |_self: R<::glam::I8Vec3>| { + |_self: V<::glam::I8Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::I8Vec3::as_vec3(&_self) + let output: V<::glam::Vec3> = ::glam::I8Vec3::as_vec3( + _self.into_inner(), + ) .into(); output } @@ -10070,26 +9710,11 @@ pub(crate) fn register_i_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3a", - |_self: R<::glam::I8Vec3>| { + |_self: V<::glam::I8Vec3>| { let output: V<::glam::Vec3A> = { { - let output: V<::glam::Vec3A> = ::glam::I8Vec3::as_vec3a(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::I8Vec3>| { - let output: () = { - { - let output: () = <::glam::I8Vec3 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec3A> = ::glam::I8Vec3::as_vec3a( + _self.into_inner(), ) .into(); output @@ -10097,7 +9722,7 @@ pub(crate) fn register_i_8_vec_3_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -11291,10 +10916,12 @@ pub(crate) fn register_i_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_dvec4", - |_self: R<::glam::I8Vec4>| { + |_self: V<::glam::I8Vec4>| { let output: V<::glam::DVec4> = { { - let output: V<::glam::DVec4> = ::glam::I8Vec4::as_dvec4(&_self) + let output: V<::glam::DVec4> = ::glam::I8Vec4::as_dvec4( + _self.into_inner(), + ) .into(); output } @@ -11306,11 +10933,11 @@ pub(crate) fn register_i_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_i16vec4", - |_self: R<::glam::I8Vec4>| { + |_self: V<::glam::I8Vec4>| { let output: V<::glam::I16Vec4> = { { let output: V<::glam::I16Vec4> = ::glam::I8Vec4::as_i16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -11323,11 +10950,11 @@ pub(crate) fn register_i_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_i64vec4", - |_self: R<::glam::I8Vec4>| { + |_self: V<::glam::I8Vec4>| { let output: V<::glam::I64Vec4> = { { let output: V<::glam::I64Vec4> = ::glam::I8Vec4::as_i64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -11340,10 +10967,12 @@ pub(crate) fn register_i_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_ivec4", - |_self: R<::glam::I8Vec4>| { + |_self: V<::glam::I8Vec4>| { let output: V<::glam::IVec4> = { { - let output: V<::glam::IVec4> = ::glam::I8Vec4::as_ivec4(&_self) + let output: V<::glam::IVec4> = ::glam::I8Vec4::as_ivec4( + _self.into_inner(), + ) .into(); output } @@ -11355,11 +10984,11 @@ pub(crate) fn register_i_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_u16vec4", - |_self: R<::glam::I8Vec4>| { + |_self: V<::glam::I8Vec4>| { let output: V<::glam::U16Vec4> = { { let output: V<::glam::U16Vec4> = ::glam::I8Vec4::as_u16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -11372,11 +11001,11 @@ pub(crate) fn register_i_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_u64vec4", - |_self: R<::glam::I8Vec4>| { + |_self: V<::glam::I8Vec4>| { let output: V<::glam::U64Vec4> = { { let output: V<::glam::U64Vec4> = ::glam::I8Vec4::as_u64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -11389,10 +11018,12 @@ pub(crate) fn register_i_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_u8vec4", - |_self: R<::glam::I8Vec4>| { + |_self: V<::glam::I8Vec4>| { let output: V<::glam::U8Vec4> = { { - let output: V<::glam::U8Vec4> = ::glam::I8Vec4::as_u8vec4(&_self) + let output: V<::glam::U8Vec4> = ::glam::I8Vec4::as_u8vec4( + _self.into_inner(), + ) .into(); output } @@ -11404,10 +11035,12 @@ pub(crate) fn register_i_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_uvec4", - |_self: R<::glam::I8Vec4>| { + |_self: V<::glam::I8Vec4>| { let output: V<::glam::UVec4> = { { - let output: V<::glam::UVec4> = ::glam::I8Vec4::as_uvec4(&_self) + let output: V<::glam::UVec4> = ::glam::I8Vec4::as_uvec4( + _self.into_inner(), + ) .into(); output } @@ -11419,26 +11052,11 @@ pub(crate) fn register_i_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_vec4", - |_self: R<::glam::I8Vec4>| { + |_self: V<::glam::I8Vec4>| { let output: V<::glam::Vec4> = { { - let output: V<::glam::Vec4> = ::glam::I8Vec4::as_vec4(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::I8Vec4>| { - let output: () = { - { - let output: () = <::glam::I8Vec4 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec4> = ::glam::I8Vec4::as_vec4( + _self.into_inner(), ) .into(); output @@ -11446,7 +11064,7 @@ pub(crate) fn register_i_8_vec_4_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -12622,10 +12240,12 @@ pub(crate) fn register_i_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_dvec2", - |_self: R<::glam::I16Vec2>| { + |_self: V<::glam::I16Vec2>| { let output: V<::glam::DVec2> = { { - let output: V<::glam::DVec2> = ::glam::I16Vec2::as_dvec2(&_self) + let output: V<::glam::DVec2> = ::glam::I16Vec2::as_dvec2( + _self.into_inner(), + ) .into(); output } @@ -12637,11 +12257,11 @@ pub(crate) fn register_i_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_i64vec2", - |_self: R<::glam::I16Vec2>| { + |_self: V<::glam::I16Vec2>| { let output: V<::glam::I64Vec2> = { { let output: V<::glam::I64Vec2> = ::glam::I16Vec2::as_i64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -12654,11 +12274,11 @@ pub(crate) fn register_i_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_i8vec2", - |_self: R<::glam::I16Vec2>| { + |_self: V<::glam::I16Vec2>| { let output: V<::glam::I8Vec2> = { { let output: V<::glam::I8Vec2> = ::glam::I16Vec2::as_i8vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -12671,10 +12291,12 @@ pub(crate) fn register_i_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_ivec2", - |_self: R<::glam::I16Vec2>| { + |_self: V<::glam::I16Vec2>| { let output: V<::glam::IVec2> = { { - let output: V<::glam::IVec2> = ::glam::I16Vec2::as_ivec2(&_self) + let output: V<::glam::IVec2> = ::glam::I16Vec2::as_ivec2( + _self.into_inner(), + ) .into(); output } @@ -12686,11 +12308,11 @@ pub(crate) fn register_i_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_u16vec2", - |_self: R<::glam::I16Vec2>| { + |_self: V<::glam::I16Vec2>| { let output: V<::glam::U16Vec2> = { { let output: V<::glam::U16Vec2> = ::glam::I16Vec2::as_u16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -12703,11 +12325,11 @@ pub(crate) fn register_i_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_u64vec2", - |_self: R<::glam::I16Vec2>| { + |_self: V<::glam::I16Vec2>| { let output: V<::glam::U64Vec2> = { { let output: V<::glam::U64Vec2> = ::glam::I16Vec2::as_u64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -12720,11 +12342,11 @@ pub(crate) fn register_i_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_u8vec2", - |_self: R<::glam::I16Vec2>| { + |_self: V<::glam::I16Vec2>| { let output: V<::glam::U8Vec2> = { { let output: V<::glam::U8Vec2> = ::glam::I16Vec2::as_u8vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -12737,10 +12359,12 @@ pub(crate) fn register_i_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_uvec2", - |_self: R<::glam::I16Vec2>| { + |_self: V<::glam::I16Vec2>| { let output: V<::glam::UVec2> = { { - let output: V<::glam::UVec2> = ::glam::I16Vec2::as_uvec2(&_self) + let output: V<::glam::UVec2> = ::glam::I16Vec2::as_uvec2( + _self.into_inner(), + ) .into(); output } @@ -12752,26 +12376,11 @@ pub(crate) fn register_i_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_vec2", - |_self: R<::glam::I16Vec2>| { + |_self: V<::glam::I16Vec2>| { let output: V<::glam::Vec2> = { { - let output: V<::glam::Vec2> = ::glam::I16Vec2::as_vec2(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::I16Vec2>| { - let output: () = { - { - let output: () = <::glam::I16Vec2 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec2> = ::glam::I16Vec2::as_vec2( + _self.into_inner(), ) .into(); output @@ -12779,7 +12388,7 @@ pub(crate) fn register_i_16_vec_2_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -13984,10 +13593,12 @@ pub(crate) fn register_i_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_dvec3", - |_self: R<::glam::I16Vec3>| { + |_self: V<::glam::I16Vec3>| { let output: V<::glam::DVec3> = { { - let output: V<::glam::DVec3> = ::glam::I16Vec3::as_dvec3(&_self) + let output: V<::glam::DVec3> = ::glam::I16Vec3::as_dvec3( + _self.into_inner(), + ) .into(); output } @@ -13999,11 +13610,11 @@ pub(crate) fn register_i_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_i64vec3", - |_self: R<::glam::I16Vec3>| { + |_self: V<::glam::I16Vec3>| { let output: V<::glam::I64Vec3> = { { let output: V<::glam::I64Vec3> = ::glam::I16Vec3::as_i64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -14016,11 +13627,11 @@ pub(crate) fn register_i_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_i8vec3", - |_self: R<::glam::I16Vec3>| { + |_self: V<::glam::I16Vec3>| { let output: V<::glam::I8Vec3> = { { let output: V<::glam::I8Vec3> = ::glam::I16Vec3::as_i8vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -14033,10 +13644,12 @@ pub(crate) fn register_i_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_ivec3", - |_self: R<::glam::I16Vec3>| { + |_self: V<::glam::I16Vec3>| { let output: V<::glam::IVec3> = { { - let output: V<::glam::IVec3> = ::glam::I16Vec3::as_ivec3(&_self) + let output: V<::glam::IVec3> = ::glam::I16Vec3::as_ivec3( + _self.into_inner(), + ) .into(); output } @@ -14048,11 +13661,11 @@ pub(crate) fn register_i_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_u16vec3", - |_self: R<::glam::I16Vec3>| { + |_self: V<::glam::I16Vec3>| { let output: V<::glam::U16Vec3> = { { let output: V<::glam::U16Vec3> = ::glam::I16Vec3::as_u16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -14065,11 +13678,11 @@ pub(crate) fn register_i_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_u64vec3", - |_self: R<::glam::I16Vec3>| { + |_self: V<::glam::I16Vec3>| { let output: V<::glam::U64Vec3> = { { let output: V<::glam::U64Vec3> = ::glam::I16Vec3::as_u64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -14082,11 +13695,11 @@ pub(crate) fn register_i_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_u8vec3", - |_self: R<::glam::I16Vec3>| { + |_self: V<::glam::I16Vec3>| { let output: V<::glam::U8Vec3> = { { let output: V<::glam::U8Vec3> = ::glam::I16Vec3::as_u8vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -14099,10 +13712,12 @@ pub(crate) fn register_i_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_uvec3", - |_self: R<::glam::I16Vec3>| { + |_self: V<::glam::I16Vec3>| { let output: V<::glam::UVec3> = { { - let output: V<::glam::UVec3> = ::glam::I16Vec3::as_uvec3(&_self) + let output: V<::glam::UVec3> = ::glam::I16Vec3::as_uvec3( + _self.into_inner(), + ) .into(); output } @@ -14114,10 +13729,12 @@ pub(crate) fn register_i_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3", - |_self: R<::glam::I16Vec3>| { + |_self: V<::glam::I16Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::I16Vec3::as_vec3(&_self) + let output: V<::glam::Vec3> = ::glam::I16Vec3::as_vec3( + _self.into_inner(), + ) .into(); output } @@ -14129,26 +13746,11 @@ pub(crate) fn register_i_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3a", - |_self: R<::glam::I16Vec3>| { + |_self: V<::glam::I16Vec3>| { let output: V<::glam::Vec3A> = { { - let output: V<::glam::Vec3A> = ::glam::I16Vec3::as_vec3a(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::I16Vec3>| { - let output: () = { - { - let output: () = <::glam::I16Vec3 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec3A> = ::glam::I16Vec3::as_vec3a( + _self.into_inner(), ) .into(); output @@ -14156,7 +13758,7 @@ pub(crate) fn register_i_16_vec_3_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -15361,10 +14963,12 @@ pub(crate) fn register_i_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_dvec4", - |_self: R<::glam::I16Vec4>| { + |_self: V<::glam::I16Vec4>| { let output: V<::glam::DVec4> = { { - let output: V<::glam::DVec4> = ::glam::I16Vec4::as_dvec4(&_self) + let output: V<::glam::DVec4> = ::glam::I16Vec4::as_dvec4( + _self.into_inner(), + ) .into(); output } @@ -15376,11 +14980,11 @@ pub(crate) fn register_i_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_i64vec4", - |_self: R<::glam::I16Vec4>| { + |_self: V<::glam::I16Vec4>| { let output: V<::glam::I64Vec4> = { { let output: V<::glam::I64Vec4> = ::glam::I16Vec4::as_i64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -15393,11 +14997,11 @@ pub(crate) fn register_i_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_i8vec4", - |_self: R<::glam::I16Vec4>| { + |_self: V<::glam::I16Vec4>| { let output: V<::glam::I8Vec4> = { { let output: V<::glam::I8Vec4> = ::glam::I16Vec4::as_i8vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -15410,10 +15014,12 @@ pub(crate) fn register_i_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_ivec4", - |_self: R<::glam::I16Vec4>| { + |_self: V<::glam::I16Vec4>| { let output: V<::glam::IVec4> = { { - let output: V<::glam::IVec4> = ::glam::I16Vec4::as_ivec4(&_self) + let output: V<::glam::IVec4> = ::glam::I16Vec4::as_ivec4( + _self.into_inner(), + ) .into(); output } @@ -15425,11 +15031,11 @@ pub(crate) fn register_i_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_u16vec4", - |_self: R<::glam::I16Vec4>| { + |_self: V<::glam::I16Vec4>| { let output: V<::glam::U16Vec4> = { { let output: V<::glam::U16Vec4> = ::glam::I16Vec4::as_u16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -15442,11 +15048,11 @@ pub(crate) fn register_i_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_u64vec4", - |_self: R<::glam::I16Vec4>| { + |_self: V<::glam::I16Vec4>| { let output: V<::glam::U64Vec4> = { { let output: V<::glam::U64Vec4> = ::glam::I16Vec4::as_u64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -15459,11 +15065,11 @@ pub(crate) fn register_i_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_u8vec4", - |_self: R<::glam::I16Vec4>| { + |_self: V<::glam::I16Vec4>| { let output: V<::glam::U8Vec4> = { { let output: V<::glam::U8Vec4> = ::glam::I16Vec4::as_u8vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -15476,10 +15082,12 @@ pub(crate) fn register_i_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_uvec4", - |_self: R<::glam::I16Vec4>| { + |_self: V<::glam::I16Vec4>| { let output: V<::glam::UVec4> = { { - let output: V<::glam::UVec4> = ::glam::I16Vec4::as_uvec4(&_self) + let output: V<::glam::UVec4> = ::glam::I16Vec4::as_uvec4( + _self.into_inner(), + ) .into(); output } @@ -15491,26 +15099,11 @@ pub(crate) fn register_i_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_vec4", - |_self: R<::glam::I16Vec4>| { + |_self: V<::glam::I16Vec4>| { let output: V<::glam::Vec4> = { { - let output: V<::glam::Vec4> = ::glam::I16Vec4::as_vec4(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::I16Vec4>| { - let output: () = { - { - let output: () = <::glam::I16Vec4 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec4> = ::glam::I16Vec4::as_vec4( + _self.into_inner(), ) .into(); output @@ -15518,7 +15111,7 @@ pub(crate) fn register_i_16_vec_4_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -16705,10 +16298,12 @@ pub(crate) fn register_i_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_dvec2", - |_self: R<::glam::I64Vec2>| { + |_self: V<::glam::I64Vec2>| { let output: V<::glam::DVec2> = { { - let output: V<::glam::DVec2> = ::glam::I64Vec2::as_dvec2(&_self) + let output: V<::glam::DVec2> = ::glam::I64Vec2::as_dvec2( + _self.into_inner(), + ) .into(); output } @@ -16720,11 +16315,11 @@ pub(crate) fn register_i_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_i16vec2", - |_self: R<::glam::I64Vec2>| { + |_self: V<::glam::I64Vec2>| { let output: V<::glam::I16Vec2> = { { let output: V<::glam::I16Vec2> = ::glam::I64Vec2::as_i16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -16737,11 +16332,11 @@ pub(crate) fn register_i_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_i8vec2", - |_self: R<::glam::I64Vec2>| { + |_self: V<::glam::I64Vec2>| { let output: V<::glam::I8Vec2> = { { let output: V<::glam::I8Vec2> = ::glam::I64Vec2::as_i8vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -16754,10 +16349,12 @@ pub(crate) fn register_i_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_ivec2", - |_self: R<::glam::I64Vec2>| { + |_self: V<::glam::I64Vec2>| { let output: V<::glam::IVec2> = { { - let output: V<::glam::IVec2> = ::glam::I64Vec2::as_ivec2(&_self) + let output: V<::glam::IVec2> = ::glam::I64Vec2::as_ivec2( + _self.into_inner(), + ) .into(); output } @@ -16769,11 +16366,11 @@ pub(crate) fn register_i_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_u16vec2", - |_self: R<::glam::I64Vec2>| { + |_self: V<::glam::I64Vec2>| { let output: V<::glam::U16Vec2> = { { let output: V<::glam::U16Vec2> = ::glam::I64Vec2::as_u16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -16786,11 +16383,11 @@ pub(crate) fn register_i_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_u64vec2", - |_self: R<::glam::I64Vec2>| { + |_self: V<::glam::I64Vec2>| { let output: V<::glam::U64Vec2> = { { let output: V<::glam::U64Vec2> = ::glam::I64Vec2::as_u64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -16803,11 +16400,11 @@ pub(crate) fn register_i_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_u8vec2", - |_self: R<::glam::I64Vec2>| { + |_self: V<::glam::I64Vec2>| { let output: V<::glam::U8Vec2> = { { let output: V<::glam::U8Vec2> = ::glam::I64Vec2::as_u8vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -16820,10 +16417,12 @@ pub(crate) fn register_i_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_uvec2", - |_self: R<::glam::I64Vec2>| { + |_self: V<::glam::I64Vec2>| { let output: V<::glam::UVec2> = { { - let output: V<::glam::UVec2> = ::glam::I64Vec2::as_uvec2(&_self) + let output: V<::glam::UVec2> = ::glam::I64Vec2::as_uvec2( + _self.into_inner(), + ) .into(); output } @@ -16835,26 +16434,11 @@ pub(crate) fn register_i_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_vec2", - |_self: R<::glam::I64Vec2>| { + |_self: V<::glam::I64Vec2>| { let output: V<::glam::Vec2> = { { - let output: V<::glam::Vec2> = ::glam::I64Vec2::as_vec2(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::I64Vec2>| { - let output: () = { - { - let output: () = <::glam::I64Vec2 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec2> = ::glam::I64Vec2::as_vec2( + _self.into_inner(), ) .into(); output @@ -16862,7 +16446,7 @@ pub(crate) fn register_i_64_vec_2_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -18067,10 +17651,12 @@ pub(crate) fn register_i_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_dvec3", - |_self: R<::glam::I64Vec3>| { + |_self: V<::glam::I64Vec3>| { let output: V<::glam::DVec3> = { { - let output: V<::glam::DVec3> = ::glam::I64Vec3::as_dvec3(&_self) + let output: V<::glam::DVec3> = ::glam::I64Vec3::as_dvec3( + _self.into_inner(), + ) .into(); output } @@ -18082,11 +17668,11 @@ pub(crate) fn register_i_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_i16vec3", - |_self: R<::glam::I64Vec3>| { + |_self: V<::glam::I64Vec3>| { let output: V<::glam::I16Vec3> = { { let output: V<::glam::I16Vec3> = ::glam::I64Vec3::as_i16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -18099,11 +17685,11 @@ pub(crate) fn register_i_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_i8vec3", - |_self: R<::glam::I64Vec3>| { + |_self: V<::glam::I64Vec3>| { let output: V<::glam::I8Vec3> = { { let output: V<::glam::I8Vec3> = ::glam::I64Vec3::as_i8vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -18116,10 +17702,12 @@ pub(crate) fn register_i_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_ivec3", - |_self: R<::glam::I64Vec3>| { + |_self: V<::glam::I64Vec3>| { let output: V<::glam::IVec3> = { { - let output: V<::glam::IVec3> = ::glam::I64Vec3::as_ivec3(&_self) + let output: V<::glam::IVec3> = ::glam::I64Vec3::as_ivec3( + _self.into_inner(), + ) .into(); output } @@ -18131,11 +17719,11 @@ pub(crate) fn register_i_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_u16vec3", - |_self: R<::glam::I64Vec3>| { + |_self: V<::glam::I64Vec3>| { let output: V<::glam::U16Vec3> = { { let output: V<::glam::U16Vec3> = ::glam::I64Vec3::as_u16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -18148,11 +17736,11 @@ pub(crate) fn register_i_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_u64vec3", - |_self: R<::glam::I64Vec3>| { + |_self: V<::glam::I64Vec3>| { let output: V<::glam::U64Vec3> = { { let output: V<::glam::U64Vec3> = ::glam::I64Vec3::as_u64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -18165,11 +17753,11 @@ pub(crate) fn register_i_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_u8vec3", - |_self: R<::glam::I64Vec3>| { + |_self: V<::glam::I64Vec3>| { let output: V<::glam::U8Vec3> = { { let output: V<::glam::U8Vec3> = ::glam::I64Vec3::as_u8vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -18182,10 +17770,12 @@ pub(crate) fn register_i_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_uvec3", - |_self: R<::glam::I64Vec3>| { + |_self: V<::glam::I64Vec3>| { let output: V<::glam::UVec3> = { { - let output: V<::glam::UVec3> = ::glam::I64Vec3::as_uvec3(&_self) + let output: V<::glam::UVec3> = ::glam::I64Vec3::as_uvec3( + _self.into_inner(), + ) .into(); output } @@ -18197,10 +17787,12 @@ pub(crate) fn register_i_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3", - |_self: R<::glam::I64Vec3>| { + |_self: V<::glam::I64Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::I64Vec3::as_vec3(&_self) + let output: V<::glam::Vec3> = ::glam::I64Vec3::as_vec3( + _self.into_inner(), + ) .into(); output } @@ -18212,26 +17804,11 @@ pub(crate) fn register_i_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3a", - |_self: R<::glam::I64Vec3>| { + |_self: V<::glam::I64Vec3>| { let output: V<::glam::Vec3A> = { { - let output: V<::glam::Vec3A> = ::glam::I64Vec3::as_vec3a(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::I64Vec3>| { - let output: () = { - { - let output: () = <::glam::I64Vec3 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec3A> = ::glam::I64Vec3::as_vec3a( + _self.into_inner(), ) .into(); output @@ -18239,7 +17816,7 @@ pub(crate) fn register_i_64_vec_3_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -19444,10 +19021,12 @@ pub(crate) fn register_i_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_dvec4", - |_self: R<::glam::I64Vec4>| { + |_self: V<::glam::I64Vec4>| { let output: V<::glam::DVec4> = { { - let output: V<::glam::DVec4> = ::glam::I64Vec4::as_dvec4(&_self) + let output: V<::glam::DVec4> = ::glam::I64Vec4::as_dvec4( + _self.into_inner(), + ) .into(); output } @@ -19459,11 +19038,11 @@ pub(crate) fn register_i_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_i16vec4", - |_self: R<::glam::I64Vec4>| { + |_self: V<::glam::I64Vec4>| { let output: V<::glam::I16Vec4> = { { let output: V<::glam::I16Vec4> = ::glam::I64Vec4::as_i16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -19476,11 +19055,11 @@ pub(crate) fn register_i_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_i8vec4", - |_self: R<::glam::I64Vec4>| { + |_self: V<::glam::I64Vec4>| { let output: V<::glam::I8Vec4> = { { let output: V<::glam::I8Vec4> = ::glam::I64Vec4::as_i8vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -19493,10 +19072,12 @@ pub(crate) fn register_i_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_ivec4", - |_self: R<::glam::I64Vec4>| { + |_self: V<::glam::I64Vec4>| { let output: V<::glam::IVec4> = { { - let output: V<::glam::IVec4> = ::glam::I64Vec4::as_ivec4(&_self) + let output: V<::glam::IVec4> = ::glam::I64Vec4::as_ivec4( + _self.into_inner(), + ) .into(); output } @@ -19508,11 +19089,11 @@ pub(crate) fn register_i_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_u16vec4", - |_self: R<::glam::I64Vec4>| { + |_self: V<::glam::I64Vec4>| { let output: V<::glam::U16Vec4> = { { let output: V<::glam::U16Vec4> = ::glam::I64Vec4::as_u16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -19525,11 +19106,11 @@ pub(crate) fn register_i_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_u64vec4", - |_self: R<::glam::I64Vec4>| { + |_self: V<::glam::I64Vec4>| { let output: V<::glam::U64Vec4> = { { let output: V<::glam::U64Vec4> = ::glam::I64Vec4::as_u64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -19542,11 +19123,11 @@ pub(crate) fn register_i_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_u8vec4", - |_self: R<::glam::I64Vec4>| { + |_self: V<::glam::I64Vec4>| { let output: V<::glam::U8Vec4> = { { let output: V<::glam::U8Vec4> = ::glam::I64Vec4::as_u8vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -19559,10 +19140,12 @@ pub(crate) fn register_i_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_uvec4", - |_self: R<::glam::I64Vec4>| { + |_self: V<::glam::I64Vec4>| { let output: V<::glam::UVec4> = { { - let output: V<::glam::UVec4> = ::glam::I64Vec4::as_uvec4(&_self) + let output: V<::glam::UVec4> = ::glam::I64Vec4::as_uvec4( + _self.into_inner(), + ) .into(); output } @@ -19574,26 +19157,11 @@ pub(crate) fn register_i_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_vec4", - |_self: R<::glam::I64Vec4>| { + |_self: V<::glam::I64Vec4>| { let output: V<::glam::Vec4> = { { - let output: V<::glam::Vec4> = ::glam::I64Vec4::as_vec4(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::I64Vec4>| { - let output: () = { - { - let output: () = <::glam::I64Vec4 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec4> = ::glam::I64Vec4::as_vec4( + _self.into_inner(), ) .into(); output @@ -19601,7 +19169,7 @@ pub(crate) fn register_i_64_vec_4_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -20771,10 +20339,12 @@ pub(crate) fn register_u_vec_2_functions(world: &mut World) { ) .register_documented( "as_dvec2", - |_self: R<::glam::UVec2>| { + |_self: V<::glam::UVec2>| { let output: V<::glam::DVec2> = { { - let output: V<::glam::DVec2> = ::glam::UVec2::as_dvec2(&_self) + let output: V<::glam::DVec2> = ::glam::UVec2::as_dvec2( + _self.into_inner(), + ) .into(); output } @@ -20786,11 +20356,11 @@ pub(crate) fn register_u_vec_2_functions(world: &mut World) { ) .register_documented( "as_i16vec2", - |_self: R<::glam::UVec2>| { + |_self: V<::glam::UVec2>| { let output: V<::glam::I16Vec2> = { { let output: V<::glam::I16Vec2> = ::glam::UVec2::as_i16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -20803,11 +20373,11 @@ pub(crate) fn register_u_vec_2_functions(world: &mut World) { ) .register_documented( "as_i64vec2", - |_self: R<::glam::UVec2>| { + |_self: V<::glam::UVec2>| { let output: V<::glam::I64Vec2> = { { let output: V<::glam::I64Vec2> = ::glam::UVec2::as_i64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -20820,10 +20390,12 @@ pub(crate) fn register_u_vec_2_functions(world: &mut World) { ) .register_documented( "as_i8vec2", - |_self: R<::glam::UVec2>| { + |_self: V<::glam::UVec2>| { let output: V<::glam::I8Vec2> = { { - let output: V<::glam::I8Vec2> = ::glam::UVec2::as_i8vec2(&_self) + let output: V<::glam::I8Vec2> = ::glam::UVec2::as_i8vec2( + _self.into_inner(), + ) .into(); output } @@ -20835,10 +20407,12 @@ pub(crate) fn register_u_vec_2_functions(world: &mut World) { ) .register_documented( "as_ivec2", - |_self: R<::glam::UVec2>| { + |_self: V<::glam::UVec2>| { let output: V<::glam::IVec2> = { { - let output: V<::glam::IVec2> = ::glam::UVec2::as_ivec2(&_self) + let output: V<::glam::IVec2> = ::glam::UVec2::as_ivec2( + _self.into_inner(), + ) .into(); output } @@ -20850,11 +20424,11 @@ pub(crate) fn register_u_vec_2_functions(world: &mut World) { ) .register_documented( "as_u16vec2", - |_self: R<::glam::UVec2>| { + |_self: V<::glam::UVec2>| { let output: V<::glam::U16Vec2> = { { let output: V<::glam::U16Vec2> = ::glam::UVec2::as_u16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -20867,11 +20441,11 @@ pub(crate) fn register_u_vec_2_functions(world: &mut World) { ) .register_documented( "as_u64vec2", - |_self: R<::glam::UVec2>| { + |_self: V<::glam::UVec2>| { let output: V<::glam::U64Vec2> = { { let output: V<::glam::U64Vec2> = ::glam::UVec2::as_u64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -20884,10 +20458,12 @@ pub(crate) fn register_u_vec_2_functions(world: &mut World) { ) .register_documented( "as_u8vec2", - |_self: R<::glam::UVec2>| { + |_self: V<::glam::UVec2>| { let output: V<::glam::U8Vec2> = { { - let output: V<::glam::U8Vec2> = ::glam::UVec2::as_u8vec2(&_self) + let output: V<::glam::U8Vec2> = ::glam::UVec2::as_u8vec2( + _self.into_inner(), + ) .into(); output } @@ -20899,26 +20475,11 @@ pub(crate) fn register_u_vec_2_functions(world: &mut World) { ) .register_documented( "as_vec2", - |_self: R<::glam::UVec2>| { + |_self: V<::glam::UVec2>| { let output: V<::glam::Vec2> = { { - let output: V<::glam::Vec2> = ::glam::UVec2::as_vec2(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::UVec2>| { - let output: () = { - { - let output: () = <::glam::UVec2 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec2> = ::glam::UVec2::as_vec2( + _self.into_inner(), ) .into(); output @@ -20926,7 +20487,7 @@ pub(crate) fn register_u_vec_2_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -21908,10 +21469,12 @@ pub(crate) fn register_u_vec_3_functions(world: &mut World) { ) .register_documented( "as_dvec3", - |_self: R<::glam::UVec3>| { + |_self: V<::glam::UVec3>| { let output: V<::glam::DVec3> = { { - let output: V<::glam::DVec3> = ::glam::UVec3::as_dvec3(&_self) + let output: V<::glam::DVec3> = ::glam::UVec3::as_dvec3( + _self.into_inner(), + ) .into(); output } @@ -21923,11 +21486,11 @@ pub(crate) fn register_u_vec_3_functions(world: &mut World) { ) .register_documented( "as_i16vec3", - |_self: R<::glam::UVec3>| { + |_self: V<::glam::UVec3>| { let output: V<::glam::I16Vec3> = { { let output: V<::glam::I16Vec3> = ::glam::UVec3::as_i16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -21940,11 +21503,11 @@ pub(crate) fn register_u_vec_3_functions(world: &mut World) { ) .register_documented( "as_i64vec3", - |_self: R<::glam::UVec3>| { + |_self: V<::glam::UVec3>| { let output: V<::glam::I64Vec3> = { { let output: V<::glam::I64Vec3> = ::glam::UVec3::as_i64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -21957,10 +21520,12 @@ pub(crate) fn register_u_vec_3_functions(world: &mut World) { ) .register_documented( "as_i8vec3", - |_self: R<::glam::UVec3>| { + |_self: V<::glam::UVec3>| { let output: V<::glam::I8Vec3> = { { - let output: V<::glam::I8Vec3> = ::glam::UVec3::as_i8vec3(&_self) + let output: V<::glam::I8Vec3> = ::glam::UVec3::as_i8vec3( + _self.into_inner(), + ) .into(); output } @@ -21972,10 +21537,12 @@ pub(crate) fn register_u_vec_3_functions(world: &mut World) { ) .register_documented( "as_ivec3", - |_self: R<::glam::UVec3>| { + |_self: V<::glam::UVec3>| { let output: V<::glam::IVec3> = { { - let output: V<::glam::IVec3> = ::glam::UVec3::as_ivec3(&_self) + let output: V<::glam::IVec3> = ::glam::UVec3::as_ivec3( + _self.into_inner(), + ) .into(); output } @@ -21987,11 +21554,11 @@ pub(crate) fn register_u_vec_3_functions(world: &mut World) { ) .register_documented( "as_u16vec3", - |_self: R<::glam::UVec3>| { + |_self: V<::glam::UVec3>| { let output: V<::glam::U16Vec3> = { { let output: V<::glam::U16Vec3> = ::glam::UVec3::as_u16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -22004,11 +21571,11 @@ pub(crate) fn register_u_vec_3_functions(world: &mut World) { ) .register_documented( "as_u64vec3", - |_self: R<::glam::UVec3>| { + |_self: V<::glam::UVec3>| { let output: V<::glam::U64Vec3> = { { let output: V<::glam::U64Vec3> = ::glam::UVec3::as_u64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -22021,10 +21588,12 @@ pub(crate) fn register_u_vec_3_functions(world: &mut World) { ) .register_documented( "as_u8vec3", - |_self: R<::glam::UVec3>| { + |_self: V<::glam::UVec3>| { let output: V<::glam::U8Vec3> = { { - let output: V<::glam::U8Vec3> = ::glam::UVec3::as_u8vec3(&_self) + let output: V<::glam::U8Vec3> = ::glam::UVec3::as_u8vec3( + _self.into_inner(), + ) .into(); output } @@ -22036,10 +21605,12 @@ pub(crate) fn register_u_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3", - |_self: R<::glam::UVec3>| { + |_self: V<::glam::UVec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::UVec3::as_vec3(&_self) + let output: V<::glam::Vec3> = ::glam::UVec3::as_vec3( + _self.into_inner(), + ) .into(); output } @@ -22051,26 +21622,11 @@ pub(crate) fn register_u_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3a", - |_self: R<::glam::UVec3>| { + |_self: V<::glam::UVec3>| { let output: V<::glam::Vec3A> = { { - let output: V<::glam::Vec3A> = ::glam::UVec3::as_vec3a(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::UVec3>| { - let output: () = { - { - let output: () = <::glam::UVec3 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec3A> = ::glam::UVec3::as_vec3a( + _self.into_inner(), ) .into(); output @@ -22078,7 +21634,7 @@ pub(crate) fn register_u_vec_3_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -23114,10 +22670,12 @@ pub(crate) fn register_u_vec_4_functions(world: &mut World) { ) .register_documented( "as_dvec4", - |_self: R<::glam::UVec4>| { + |_self: V<::glam::UVec4>| { let output: V<::glam::DVec4> = { { - let output: V<::glam::DVec4> = ::glam::UVec4::as_dvec4(&_self) + let output: V<::glam::DVec4> = ::glam::UVec4::as_dvec4( + _self.into_inner(), + ) .into(); output } @@ -23129,11 +22687,11 @@ pub(crate) fn register_u_vec_4_functions(world: &mut World) { ) .register_documented( "as_i16vec4", - |_self: R<::glam::UVec4>| { + |_self: V<::glam::UVec4>| { let output: V<::glam::I16Vec4> = { { let output: V<::glam::I16Vec4> = ::glam::UVec4::as_i16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -23146,11 +22704,11 @@ pub(crate) fn register_u_vec_4_functions(world: &mut World) { ) .register_documented( "as_i64vec4", - |_self: R<::glam::UVec4>| { + |_self: V<::glam::UVec4>| { let output: V<::glam::I64Vec4> = { { let output: V<::glam::I64Vec4> = ::glam::UVec4::as_i64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -23163,10 +22721,12 @@ pub(crate) fn register_u_vec_4_functions(world: &mut World) { ) .register_documented( "as_i8vec4", - |_self: R<::glam::UVec4>| { + |_self: V<::glam::UVec4>| { let output: V<::glam::I8Vec4> = { { - let output: V<::glam::I8Vec4> = ::glam::UVec4::as_i8vec4(&_self) + let output: V<::glam::I8Vec4> = ::glam::UVec4::as_i8vec4( + _self.into_inner(), + ) .into(); output } @@ -23178,10 +22738,12 @@ pub(crate) fn register_u_vec_4_functions(world: &mut World) { ) .register_documented( "as_ivec4", - |_self: R<::glam::UVec4>| { + |_self: V<::glam::UVec4>| { let output: V<::glam::IVec4> = { { - let output: V<::glam::IVec4> = ::glam::UVec4::as_ivec4(&_self) + let output: V<::glam::IVec4> = ::glam::UVec4::as_ivec4( + _self.into_inner(), + ) .into(); output } @@ -23193,11 +22755,11 @@ pub(crate) fn register_u_vec_4_functions(world: &mut World) { ) .register_documented( "as_u16vec4", - |_self: R<::glam::UVec4>| { + |_self: V<::glam::UVec4>| { let output: V<::glam::U16Vec4> = { { let output: V<::glam::U16Vec4> = ::glam::UVec4::as_u16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -23210,11 +22772,11 @@ pub(crate) fn register_u_vec_4_functions(world: &mut World) { ) .register_documented( "as_u64vec4", - |_self: R<::glam::UVec4>| { + |_self: V<::glam::UVec4>| { let output: V<::glam::U64Vec4> = { { let output: V<::glam::U64Vec4> = ::glam::UVec4::as_u64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -23227,10 +22789,12 @@ pub(crate) fn register_u_vec_4_functions(world: &mut World) { ) .register_documented( "as_u8vec4", - |_self: R<::glam::UVec4>| { + |_self: V<::glam::UVec4>| { let output: V<::glam::U8Vec4> = { { - let output: V<::glam::U8Vec4> = ::glam::UVec4::as_u8vec4(&_self) + let output: V<::glam::U8Vec4> = ::glam::UVec4::as_u8vec4( + _self.into_inner(), + ) .into(); output } @@ -23242,26 +22806,11 @@ pub(crate) fn register_u_vec_4_functions(world: &mut World) { ) .register_documented( "as_vec4", - |_self: R<::glam::UVec4>| { + |_self: V<::glam::UVec4>| { let output: V<::glam::Vec4> = { { - let output: V<::glam::Vec4> = ::glam::UVec4::as_vec4(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::UVec4>| { - let output: () = { - { - let output: () = <::glam::UVec4 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec4> = ::glam::UVec4::as_vec4( + _self.into_inner(), ) .into(); output @@ -23269,7 +22818,7 @@ pub(crate) fn register_u_vec_4_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -24287,10 +23836,12 @@ pub(crate) fn register_u_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_dvec2", - |_self: R<::glam::U8Vec2>| { + |_self: V<::glam::U8Vec2>| { let output: V<::glam::DVec2> = { { - let output: V<::glam::DVec2> = ::glam::U8Vec2::as_dvec2(&_self) + let output: V<::glam::DVec2> = ::glam::U8Vec2::as_dvec2( + _self.into_inner(), + ) .into(); output } @@ -24302,11 +23853,11 @@ pub(crate) fn register_u_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_i16vec2", - |_self: R<::glam::U8Vec2>| { + |_self: V<::glam::U8Vec2>| { let output: V<::glam::I16Vec2> = { { let output: V<::glam::I16Vec2> = ::glam::U8Vec2::as_i16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -24319,11 +23870,11 @@ pub(crate) fn register_u_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_i64vec2", - |_self: R<::glam::U8Vec2>| { + |_self: V<::glam::U8Vec2>| { let output: V<::glam::I64Vec2> = { { let output: V<::glam::I64Vec2> = ::glam::U8Vec2::as_i64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -24336,10 +23887,12 @@ pub(crate) fn register_u_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_i8vec2", - |_self: R<::glam::U8Vec2>| { + |_self: V<::glam::U8Vec2>| { let output: V<::glam::I8Vec2> = { { - let output: V<::glam::I8Vec2> = ::glam::U8Vec2::as_i8vec2(&_self) + let output: V<::glam::I8Vec2> = ::glam::U8Vec2::as_i8vec2( + _self.into_inner(), + ) .into(); output } @@ -24351,10 +23904,12 @@ pub(crate) fn register_u_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_ivec2", - |_self: R<::glam::U8Vec2>| { + |_self: V<::glam::U8Vec2>| { let output: V<::glam::IVec2> = { { - let output: V<::glam::IVec2> = ::glam::U8Vec2::as_ivec2(&_self) + let output: V<::glam::IVec2> = ::glam::U8Vec2::as_ivec2( + _self.into_inner(), + ) .into(); output } @@ -24366,11 +23921,11 @@ pub(crate) fn register_u_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_u16vec2", - |_self: R<::glam::U8Vec2>| { + |_self: V<::glam::U8Vec2>| { let output: V<::glam::U16Vec2> = { { let output: V<::glam::U16Vec2> = ::glam::U8Vec2::as_u16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -24383,11 +23938,11 @@ pub(crate) fn register_u_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_u64vec2", - |_self: R<::glam::U8Vec2>| { + |_self: V<::glam::U8Vec2>| { let output: V<::glam::U64Vec2> = { { let output: V<::glam::U64Vec2> = ::glam::U8Vec2::as_u64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -24400,10 +23955,12 @@ pub(crate) fn register_u_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_uvec2", - |_self: R<::glam::U8Vec2>| { + |_self: V<::glam::U8Vec2>| { let output: V<::glam::UVec2> = { { - let output: V<::glam::UVec2> = ::glam::U8Vec2::as_uvec2(&_self) + let output: V<::glam::UVec2> = ::glam::U8Vec2::as_uvec2( + _self.into_inner(), + ) .into(); output } @@ -24415,26 +23972,11 @@ pub(crate) fn register_u_8_vec_2_functions(world: &mut World) { ) .register_documented( "as_vec2", - |_self: R<::glam::U8Vec2>| { + |_self: V<::glam::U8Vec2>| { let output: V<::glam::Vec2> = { { - let output: V<::glam::Vec2> = ::glam::U8Vec2::as_vec2(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::U8Vec2>| { - let output: () = { - { - let output: () = <::glam::U8Vec2 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec2> = ::glam::U8Vec2::as_vec2( + _self.into_inner(), ) .into(); output @@ -24442,7 +23984,7 @@ pub(crate) fn register_u_8_vec_2_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -25424,10 +24966,12 @@ pub(crate) fn register_u_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_dvec3", - |_self: R<::glam::U8Vec3>| { + |_self: V<::glam::U8Vec3>| { let output: V<::glam::DVec3> = { { - let output: V<::glam::DVec3> = ::glam::U8Vec3::as_dvec3(&_self) + let output: V<::glam::DVec3> = ::glam::U8Vec3::as_dvec3( + _self.into_inner(), + ) .into(); output } @@ -25439,11 +24983,11 @@ pub(crate) fn register_u_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_i16vec3", - |_self: R<::glam::U8Vec3>| { + |_self: V<::glam::U8Vec3>| { let output: V<::glam::I16Vec3> = { { let output: V<::glam::I16Vec3> = ::glam::U8Vec3::as_i16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -25456,11 +25000,11 @@ pub(crate) fn register_u_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_i64vec3", - |_self: R<::glam::U8Vec3>| { + |_self: V<::glam::U8Vec3>| { let output: V<::glam::I64Vec3> = { { let output: V<::glam::I64Vec3> = ::glam::U8Vec3::as_i64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -25473,10 +25017,12 @@ pub(crate) fn register_u_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_i8vec3", - |_self: R<::glam::U8Vec3>| { + |_self: V<::glam::U8Vec3>| { let output: V<::glam::I8Vec3> = { { - let output: V<::glam::I8Vec3> = ::glam::U8Vec3::as_i8vec3(&_self) + let output: V<::glam::I8Vec3> = ::glam::U8Vec3::as_i8vec3( + _self.into_inner(), + ) .into(); output } @@ -25488,10 +25034,12 @@ pub(crate) fn register_u_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_ivec3", - |_self: R<::glam::U8Vec3>| { + |_self: V<::glam::U8Vec3>| { let output: V<::glam::IVec3> = { { - let output: V<::glam::IVec3> = ::glam::U8Vec3::as_ivec3(&_self) + let output: V<::glam::IVec3> = ::glam::U8Vec3::as_ivec3( + _self.into_inner(), + ) .into(); output } @@ -25503,11 +25051,11 @@ pub(crate) fn register_u_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_u16vec3", - |_self: R<::glam::U8Vec3>| { + |_self: V<::glam::U8Vec3>| { let output: V<::glam::U16Vec3> = { { let output: V<::glam::U16Vec3> = ::glam::U8Vec3::as_u16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -25520,11 +25068,11 @@ pub(crate) fn register_u_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_u64vec3", - |_self: R<::glam::U8Vec3>| { + |_self: V<::glam::U8Vec3>| { let output: V<::glam::U64Vec3> = { { let output: V<::glam::U64Vec3> = ::glam::U8Vec3::as_u64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -25537,10 +25085,12 @@ pub(crate) fn register_u_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_uvec3", - |_self: R<::glam::U8Vec3>| { + |_self: V<::glam::U8Vec3>| { let output: V<::glam::UVec3> = { { - let output: V<::glam::UVec3> = ::glam::U8Vec3::as_uvec3(&_self) + let output: V<::glam::UVec3> = ::glam::U8Vec3::as_uvec3( + _self.into_inner(), + ) .into(); output } @@ -25552,10 +25102,12 @@ pub(crate) fn register_u_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3", - |_self: R<::glam::U8Vec3>| { + |_self: V<::glam::U8Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::U8Vec3::as_vec3(&_self) + let output: V<::glam::Vec3> = ::glam::U8Vec3::as_vec3( + _self.into_inner(), + ) .into(); output } @@ -25567,26 +25119,11 @@ pub(crate) fn register_u_8_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3a", - |_self: R<::glam::U8Vec3>| { + |_self: V<::glam::U8Vec3>| { let output: V<::glam::Vec3A> = { { - let output: V<::glam::Vec3A> = ::glam::U8Vec3::as_vec3a(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::U8Vec3>| { - let output: () = { - { - let output: () = <::glam::U8Vec3 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec3A> = ::glam::U8Vec3::as_vec3a( + _self.into_inner(), ) .into(); output @@ -25594,7 +25131,7 @@ pub(crate) fn register_u_8_vec_3_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -26630,10 +26167,12 @@ pub(crate) fn register_u_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_dvec4", - |_self: R<::glam::U8Vec4>| { + |_self: V<::glam::U8Vec4>| { let output: V<::glam::DVec4> = { { - let output: V<::glam::DVec4> = ::glam::U8Vec4::as_dvec4(&_self) + let output: V<::glam::DVec4> = ::glam::U8Vec4::as_dvec4( + _self.into_inner(), + ) .into(); output } @@ -26645,11 +26184,11 @@ pub(crate) fn register_u_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_i16vec4", - |_self: R<::glam::U8Vec4>| { + |_self: V<::glam::U8Vec4>| { let output: V<::glam::I16Vec4> = { { let output: V<::glam::I16Vec4> = ::glam::U8Vec4::as_i16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -26662,11 +26201,11 @@ pub(crate) fn register_u_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_i64vec4", - |_self: R<::glam::U8Vec4>| { + |_self: V<::glam::U8Vec4>| { let output: V<::glam::I64Vec4> = { { let output: V<::glam::I64Vec4> = ::glam::U8Vec4::as_i64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -26679,10 +26218,12 @@ pub(crate) fn register_u_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_i8vec4", - |_self: R<::glam::U8Vec4>| { + |_self: V<::glam::U8Vec4>| { let output: V<::glam::I8Vec4> = { { - let output: V<::glam::I8Vec4> = ::glam::U8Vec4::as_i8vec4(&_self) + let output: V<::glam::I8Vec4> = ::glam::U8Vec4::as_i8vec4( + _self.into_inner(), + ) .into(); output } @@ -26694,10 +26235,12 @@ pub(crate) fn register_u_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_ivec4", - |_self: R<::glam::U8Vec4>| { + |_self: V<::glam::U8Vec4>| { let output: V<::glam::IVec4> = { { - let output: V<::glam::IVec4> = ::glam::U8Vec4::as_ivec4(&_self) + let output: V<::glam::IVec4> = ::glam::U8Vec4::as_ivec4( + _self.into_inner(), + ) .into(); output } @@ -26709,11 +26252,11 @@ pub(crate) fn register_u_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_u16vec4", - |_self: R<::glam::U8Vec4>| { + |_self: V<::glam::U8Vec4>| { let output: V<::glam::U16Vec4> = { { let output: V<::glam::U16Vec4> = ::glam::U8Vec4::as_u16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -26726,11 +26269,11 @@ pub(crate) fn register_u_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_u64vec4", - |_self: R<::glam::U8Vec4>| { + |_self: V<::glam::U8Vec4>| { let output: V<::glam::U64Vec4> = { { let output: V<::glam::U64Vec4> = ::glam::U8Vec4::as_u64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -26743,10 +26286,12 @@ pub(crate) fn register_u_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_uvec4", - |_self: R<::glam::U8Vec4>| { + |_self: V<::glam::U8Vec4>| { let output: V<::glam::UVec4> = { { - let output: V<::glam::UVec4> = ::glam::U8Vec4::as_uvec4(&_self) + let output: V<::glam::UVec4> = ::glam::U8Vec4::as_uvec4( + _self.into_inner(), + ) .into(); output } @@ -26758,26 +26303,11 @@ pub(crate) fn register_u_8_vec_4_functions(world: &mut World) { ) .register_documented( "as_vec4", - |_self: R<::glam::U8Vec4>| { + |_self: V<::glam::U8Vec4>| { let output: V<::glam::Vec4> = { { - let output: V<::glam::Vec4> = ::glam::U8Vec4::as_vec4(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::U8Vec4>| { - let output: () = { - { - let output: () = <::glam::U8Vec4 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec4> = ::glam::U8Vec4::as_vec4( + _self.into_inner(), ) .into(); output @@ -26785,7 +26315,7 @@ pub(crate) fn register_u_8_vec_4_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -27803,10 +27333,12 @@ pub(crate) fn register_u_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_dvec2", - |_self: R<::glam::U16Vec2>| { + |_self: V<::glam::U16Vec2>| { let output: V<::glam::DVec2> = { { - let output: V<::glam::DVec2> = ::glam::U16Vec2::as_dvec2(&_self) + let output: V<::glam::DVec2> = ::glam::U16Vec2::as_dvec2( + _self.into_inner(), + ) .into(); output } @@ -27818,11 +27350,11 @@ pub(crate) fn register_u_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_i16vec2", - |_self: R<::glam::U16Vec2>| { + |_self: V<::glam::U16Vec2>| { let output: V<::glam::I16Vec2> = { { let output: V<::glam::I16Vec2> = ::glam::U16Vec2::as_i16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -27835,11 +27367,11 @@ pub(crate) fn register_u_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_i64vec2", - |_self: R<::glam::U16Vec2>| { + |_self: V<::glam::U16Vec2>| { let output: V<::glam::I64Vec2> = { { let output: V<::glam::I64Vec2> = ::glam::U16Vec2::as_i64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -27852,11 +27384,11 @@ pub(crate) fn register_u_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_i8vec2", - |_self: R<::glam::U16Vec2>| { + |_self: V<::glam::U16Vec2>| { let output: V<::glam::I8Vec2> = { { let output: V<::glam::I8Vec2> = ::glam::U16Vec2::as_i8vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -27869,10 +27401,12 @@ pub(crate) fn register_u_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_ivec2", - |_self: R<::glam::U16Vec2>| { + |_self: V<::glam::U16Vec2>| { let output: V<::glam::IVec2> = { { - let output: V<::glam::IVec2> = ::glam::U16Vec2::as_ivec2(&_self) + let output: V<::glam::IVec2> = ::glam::U16Vec2::as_ivec2( + _self.into_inner(), + ) .into(); output } @@ -27884,11 +27418,11 @@ pub(crate) fn register_u_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_u64vec2", - |_self: R<::glam::U16Vec2>| { + |_self: V<::glam::U16Vec2>| { let output: V<::glam::U64Vec2> = { { let output: V<::glam::U64Vec2> = ::glam::U16Vec2::as_u64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -27901,11 +27435,11 @@ pub(crate) fn register_u_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_u8vec2", - |_self: R<::glam::U16Vec2>| { + |_self: V<::glam::U16Vec2>| { let output: V<::glam::U8Vec2> = { { let output: V<::glam::U8Vec2> = ::glam::U16Vec2::as_u8vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -27918,10 +27452,12 @@ pub(crate) fn register_u_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_uvec2", - |_self: R<::glam::U16Vec2>| { + |_self: V<::glam::U16Vec2>| { let output: V<::glam::UVec2> = { { - let output: V<::glam::UVec2> = ::glam::U16Vec2::as_uvec2(&_self) + let output: V<::glam::UVec2> = ::glam::U16Vec2::as_uvec2( + _self.into_inner(), + ) .into(); output } @@ -27933,26 +27469,11 @@ pub(crate) fn register_u_16_vec_2_functions(world: &mut World) { ) .register_documented( "as_vec2", - |_self: R<::glam::U16Vec2>| { + |_self: V<::glam::U16Vec2>| { let output: V<::glam::Vec2> = { { - let output: V<::glam::Vec2> = ::glam::U16Vec2::as_vec2(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::U16Vec2>| { - let output: () = { - { - let output: () = <::glam::U16Vec2 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec2> = ::glam::U16Vec2::as_vec2( + _self.into_inner(), ) .into(); output @@ -27960,7 +27481,7 @@ pub(crate) fn register_u_16_vec_2_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -28954,10 +28475,12 @@ pub(crate) fn register_u_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_dvec3", - |_self: R<::glam::U16Vec3>| { + |_self: V<::glam::U16Vec3>| { let output: V<::glam::DVec3> = { { - let output: V<::glam::DVec3> = ::glam::U16Vec3::as_dvec3(&_self) + let output: V<::glam::DVec3> = ::glam::U16Vec3::as_dvec3( + _self.into_inner(), + ) .into(); output } @@ -28969,11 +28492,11 @@ pub(crate) fn register_u_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_i16vec3", - |_self: R<::glam::U16Vec3>| { + |_self: V<::glam::U16Vec3>| { let output: V<::glam::I16Vec3> = { { let output: V<::glam::I16Vec3> = ::glam::U16Vec3::as_i16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -28986,11 +28509,11 @@ pub(crate) fn register_u_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_i64vec3", - |_self: R<::glam::U16Vec3>| { + |_self: V<::glam::U16Vec3>| { let output: V<::glam::I64Vec3> = { { let output: V<::glam::I64Vec3> = ::glam::U16Vec3::as_i64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -29003,11 +28526,11 @@ pub(crate) fn register_u_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_i8vec3", - |_self: R<::glam::U16Vec3>| { + |_self: V<::glam::U16Vec3>| { let output: V<::glam::I8Vec3> = { { let output: V<::glam::I8Vec3> = ::glam::U16Vec3::as_i8vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -29020,10 +28543,12 @@ pub(crate) fn register_u_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_ivec3", - |_self: R<::glam::U16Vec3>| { + |_self: V<::glam::U16Vec3>| { let output: V<::glam::IVec3> = { { - let output: V<::glam::IVec3> = ::glam::U16Vec3::as_ivec3(&_self) + let output: V<::glam::IVec3> = ::glam::U16Vec3::as_ivec3( + _self.into_inner(), + ) .into(); output } @@ -29035,11 +28560,11 @@ pub(crate) fn register_u_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_u64vec3", - |_self: R<::glam::U16Vec3>| { + |_self: V<::glam::U16Vec3>| { let output: V<::glam::U64Vec3> = { { let output: V<::glam::U64Vec3> = ::glam::U16Vec3::as_u64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -29052,11 +28577,11 @@ pub(crate) fn register_u_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_u8vec3", - |_self: R<::glam::U16Vec3>| { + |_self: V<::glam::U16Vec3>| { let output: V<::glam::U8Vec3> = { { let output: V<::glam::U8Vec3> = ::glam::U16Vec3::as_u8vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -29069,10 +28594,12 @@ pub(crate) fn register_u_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_uvec3", - |_self: R<::glam::U16Vec3>| { + |_self: V<::glam::U16Vec3>| { let output: V<::glam::UVec3> = { { - let output: V<::glam::UVec3> = ::glam::U16Vec3::as_uvec3(&_self) + let output: V<::glam::UVec3> = ::glam::U16Vec3::as_uvec3( + _self.into_inner(), + ) .into(); output } @@ -29084,10 +28611,12 @@ pub(crate) fn register_u_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3", - |_self: R<::glam::U16Vec3>| { + |_self: V<::glam::U16Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::U16Vec3::as_vec3(&_self) + let output: V<::glam::Vec3> = ::glam::U16Vec3::as_vec3( + _self.into_inner(), + ) .into(); output } @@ -29099,26 +28628,11 @@ pub(crate) fn register_u_16_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3a", - |_self: R<::glam::U16Vec3>| { + |_self: V<::glam::U16Vec3>| { let output: V<::glam::Vec3A> = { { - let output: V<::glam::Vec3A> = ::glam::U16Vec3::as_vec3a(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::U16Vec3>| { - let output: () = { - { - let output: () = <::glam::U16Vec3 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec3A> = ::glam::U16Vec3::as_vec3a( + _self.into_inner(), ) .into(); output @@ -29126,7 +28640,7 @@ pub(crate) fn register_u_16_vec_3_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -30173,10 +29687,12 @@ pub(crate) fn register_u_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_dvec4", - |_self: R<::glam::U16Vec4>| { + |_self: V<::glam::U16Vec4>| { let output: V<::glam::DVec4> = { { - let output: V<::glam::DVec4> = ::glam::U16Vec4::as_dvec4(&_self) + let output: V<::glam::DVec4> = ::glam::U16Vec4::as_dvec4( + _self.into_inner(), + ) .into(); output } @@ -30188,11 +29704,11 @@ pub(crate) fn register_u_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_i16vec4", - |_self: R<::glam::U16Vec4>| { + |_self: V<::glam::U16Vec4>| { let output: V<::glam::I16Vec4> = { { let output: V<::glam::I16Vec4> = ::glam::U16Vec4::as_i16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -30205,11 +29721,11 @@ pub(crate) fn register_u_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_i64vec4", - |_self: R<::glam::U16Vec4>| { + |_self: V<::glam::U16Vec4>| { let output: V<::glam::I64Vec4> = { { let output: V<::glam::I64Vec4> = ::glam::U16Vec4::as_i64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -30222,11 +29738,11 @@ pub(crate) fn register_u_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_i8vec4", - |_self: R<::glam::U16Vec4>| { + |_self: V<::glam::U16Vec4>| { let output: V<::glam::I8Vec4> = { { let output: V<::glam::I8Vec4> = ::glam::U16Vec4::as_i8vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -30239,10 +29755,12 @@ pub(crate) fn register_u_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_ivec4", - |_self: R<::glam::U16Vec4>| { + |_self: V<::glam::U16Vec4>| { let output: V<::glam::IVec4> = { { - let output: V<::glam::IVec4> = ::glam::U16Vec4::as_ivec4(&_self) + let output: V<::glam::IVec4> = ::glam::U16Vec4::as_ivec4( + _self.into_inner(), + ) .into(); output } @@ -30254,11 +29772,11 @@ pub(crate) fn register_u_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_u64vec4", - |_self: R<::glam::U16Vec4>| { + |_self: V<::glam::U16Vec4>| { let output: V<::glam::U64Vec4> = { { let output: V<::glam::U64Vec4> = ::glam::U16Vec4::as_u64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -30271,11 +29789,11 @@ pub(crate) fn register_u_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_u8vec4", - |_self: R<::glam::U16Vec4>| { + |_self: V<::glam::U16Vec4>| { let output: V<::glam::U8Vec4> = { { let output: V<::glam::U8Vec4> = ::glam::U16Vec4::as_u8vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -30288,10 +29806,12 @@ pub(crate) fn register_u_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_uvec4", - |_self: R<::glam::U16Vec4>| { + |_self: V<::glam::U16Vec4>| { let output: V<::glam::UVec4> = { { - let output: V<::glam::UVec4> = ::glam::U16Vec4::as_uvec4(&_self) + let output: V<::glam::UVec4> = ::glam::U16Vec4::as_uvec4( + _self.into_inner(), + ) .into(); output } @@ -30303,26 +29823,11 @@ pub(crate) fn register_u_16_vec_4_functions(world: &mut World) { ) .register_documented( "as_vec4", - |_self: R<::glam::U16Vec4>| { + |_self: V<::glam::U16Vec4>| { let output: V<::glam::Vec4> = { { - let output: V<::glam::Vec4> = ::glam::U16Vec4::as_vec4(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::U16Vec4>| { - let output: () = { - { - let output: () = <::glam::U16Vec4 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec4> = ::glam::U16Vec4::as_vec4( + _self.into_inner(), ) .into(); output @@ -30330,7 +29835,7 @@ pub(crate) fn register_u_16_vec_4_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -31359,10 +30864,12 @@ pub(crate) fn register_u_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_dvec2", - |_self: R<::glam::U64Vec2>| { + |_self: V<::glam::U64Vec2>| { let output: V<::glam::DVec2> = { { - let output: V<::glam::DVec2> = ::glam::U64Vec2::as_dvec2(&_self) + let output: V<::glam::DVec2> = ::glam::U64Vec2::as_dvec2( + _self.into_inner(), + ) .into(); output } @@ -31374,11 +30881,11 @@ pub(crate) fn register_u_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_i16vec2", - |_self: R<::glam::U64Vec2>| { + |_self: V<::glam::U64Vec2>| { let output: V<::glam::I16Vec2> = { { let output: V<::glam::I16Vec2> = ::glam::U64Vec2::as_i16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -31391,11 +30898,11 @@ pub(crate) fn register_u_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_i64vec2", - |_self: R<::glam::U64Vec2>| { + |_self: V<::glam::U64Vec2>| { let output: V<::glam::I64Vec2> = { { let output: V<::glam::I64Vec2> = ::glam::U64Vec2::as_i64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -31408,11 +30915,11 @@ pub(crate) fn register_u_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_i8vec2", - |_self: R<::glam::U64Vec2>| { + |_self: V<::glam::U64Vec2>| { let output: V<::glam::I8Vec2> = { { let output: V<::glam::I8Vec2> = ::glam::U64Vec2::as_i8vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -31425,10 +30932,12 @@ pub(crate) fn register_u_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_ivec2", - |_self: R<::glam::U64Vec2>| { + |_self: V<::glam::U64Vec2>| { let output: V<::glam::IVec2> = { { - let output: V<::glam::IVec2> = ::glam::U64Vec2::as_ivec2(&_self) + let output: V<::glam::IVec2> = ::glam::U64Vec2::as_ivec2( + _self.into_inner(), + ) .into(); output } @@ -31440,11 +30949,11 @@ pub(crate) fn register_u_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_u16vec2", - |_self: R<::glam::U64Vec2>| { + |_self: V<::glam::U64Vec2>| { let output: V<::glam::U16Vec2> = { { let output: V<::glam::U16Vec2> = ::glam::U64Vec2::as_u16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -31457,11 +30966,11 @@ pub(crate) fn register_u_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_u8vec2", - |_self: R<::glam::U64Vec2>| { + |_self: V<::glam::U64Vec2>| { let output: V<::glam::U8Vec2> = { { let output: V<::glam::U8Vec2> = ::glam::U64Vec2::as_u8vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -31474,10 +30983,12 @@ pub(crate) fn register_u_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_uvec2", - |_self: R<::glam::U64Vec2>| { + |_self: V<::glam::U64Vec2>| { let output: V<::glam::UVec2> = { { - let output: V<::glam::UVec2> = ::glam::U64Vec2::as_uvec2(&_self) + let output: V<::glam::UVec2> = ::glam::U64Vec2::as_uvec2( + _self.into_inner(), + ) .into(); output } @@ -31489,26 +31000,11 @@ pub(crate) fn register_u_64_vec_2_functions(world: &mut World) { ) .register_documented( "as_vec2", - |_self: R<::glam::U64Vec2>| { + |_self: V<::glam::U64Vec2>| { let output: V<::glam::Vec2> = { { - let output: V<::glam::Vec2> = ::glam::U64Vec2::as_vec2(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::U64Vec2>| { - let output: () = { - { - let output: () = <::glam::U64Vec2 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec2> = ::glam::U64Vec2::as_vec2( + _self.into_inner(), ) .into(); output @@ -31516,7 +31012,7 @@ pub(crate) fn register_u_64_vec_2_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -32510,10 +32006,12 @@ pub(crate) fn register_u_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_dvec3", - |_self: R<::glam::U64Vec3>| { + |_self: V<::glam::U64Vec3>| { let output: V<::glam::DVec3> = { { - let output: V<::glam::DVec3> = ::glam::U64Vec3::as_dvec3(&_self) + let output: V<::glam::DVec3> = ::glam::U64Vec3::as_dvec3( + _self.into_inner(), + ) .into(); output } @@ -32525,11 +32023,11 @@ pub(crate) fn register_u_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_i16vec3", - |_self: R<::glam::U64Vec3>| { + |_self: V<::glam::U64Vec3>| { let output: V<::glam::I16Vec3> = { { let output: V<::glam::I16Vec3> = ::glam::U64Vec3::as_i16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -32542,11 +32040,11 @@ pub(crate) fn register_u_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_i64vec3", - |_self: R<::glam::U64Vec3>| { + |_self: V<::glam::U64Vec3>| { let output: V<::glam::I64Vec3> = { { let output: V<::glam::I64Vec3> = ::glam::U64Vec3::as_i64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -32559,11 +32057,11 @@ pub(crate) fn register_u_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_i8vec3", - |_self: R<::glam::U64Vec3>| { + |_self: V<::glam::U64Vec3>| { let output: V<::glam::I8Vec3> = { { let output: V<::glam::I8Vec3> = ::glam::U64Vec3::as_i8vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -32576,10 +32074,12 @@ pub(crate) fn register_u_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_ivec3", - |_self: R<::glam::U64Vec3>| { + |_self: V<::glam::U64Vec3>| { let output: V<::glam::IVec3> = { { - let output: V<::glam::IVec3> = ::glam::U64Vec3::as_ivec3(&_self) + let output: V<::glam::IVec3> = ::glam::U64Vec3::as_ivec3( + _self.into_inner(), + ) .into(); output } @@ -32591,11 +32091,11 @@ pub(crate) fn register_u_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_u16vec3", - |_self: R<::glam::U64Vec3>| { + |_self: V<::glam::U64Vec3>| { let output: V<::glam::U16Vec3> = { { let output: V<::glam::U16Vec3> = ::glam::U64Vec3::as_u16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -32608,11 +32108,11 @@ pub(crate) fn register_u_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_u8vec3", - |_self: R<::glam::U64Vec3>| { + |_self: V<::glam::U64Vec3>| { let output: V<::glam::U8Vec3> = { { let output: V<::glam::U8Vec3> = ::glam::U64Vec3::as_u8vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -32625,10 +32125,12 @@ pub(crate) fn register_u_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_uvec3", - |_self: R<::glam::U64Vec3>| { + |_self: V<::glam::U64Vec3>| { let output: V<::glam::UVec3> = { { - let output: V<::glam::UVec3> = ::glam::U64Vec3::as_uvec3(&_self) + let output: V<::glam::UVec3> = ::glam::U64Vec3::as_uvec3( + _self.into_inner(), + ) .into(); output } @@ -32640,10 +32142,12 @@ pub(crate) fn register_u_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3", - |_self: R<::glam::U64Vec3>| { + |_self: V<::glam::U64Vec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::U64Vec3::as_vec3(&_self) + let output: V<::glam::Vec3> = ::glam::U64Vec3::as_vec3( + _self.into_inner(), + ) .into(); output } @@ -32655,26 +32159,11 @@ pub(crate) fn register_u_64_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3a", - |_self: R<::glam::U64Vec3>| { + |_self: V<::glam::U64Vec3>| { let output: V<::glam::Vec3A> = { { - let output: V<::glam::Vec3A> = ::glam::U64Vec3::as_vec3a(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::U64Vec3>| { - let output: () = { - { - let output: () = <::glam::U64Vec3 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec3A> = ::glam::U64Vec3::as_vec3a( + _self.into_inner(), ) .into(); output @@ -32682,7 +32171,7 @@ pub(crate) fn register_u_64_vec_3_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -33729,10 +33218,12 @@ pub(crate) fn register_u_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_dvec4", - |_self: R<::glam::U64Vec4>| { + |_self: V<::glam::U64Vec4>| { let output: V<::glam::DVec4> = { { - let output: V<::glam::DVec4> = ::glam::U64Vec4::as_dvec4(&_self) + let output: V<::glam::DVec4> = ::glam::U64Vec4::as_dvec4( + _self.into_inner(), + ) .into(); output } @@ -33744,11 +33235,11 @@ pub(crate) fn register_u_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_i16vec4", - |_self: R<::glam::U64Vec4>| { + |_self: V<::glam::U64Vec4>| { let output: V<::glam::I16Vec4> = { { let output: V<::glam::I16Vec4> = ::glam::U64Vec4::as_i16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -33761,11 +33252,11 @@ pub(crate) fn register_u_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_i64vec4", - |_self: R<::glam::U64Vec4>| { + |_self: V<::glam::U64Vec4>| { let output: V<::glam::I64Vec4> = { { let output: V<::glam::I64Vec4> = ::glam::U64Vec4::as_i64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -33778,11 +33269,11 @@ pub(crate) fn register_u_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_i8vec4", - |_self: R<::glam::U64Vec4>| { + |_self: V<::glam::U64Vec4>| { let output: V<::glam::I8Vec4> = { { let output: V<::glam::I8Vec4> = ::glam::U64Vec4::as_i8vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -33795,10 +33286,12 @@ pub(crate) fn register_u_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_ivec4", - |_self: R<::glam::U64Vec4>| { + |_self: V<::glam::U64Vec4>| { let output: V<::glam::IVec4> = { { - let output: V<::glam::IVec4> = ::glam::U64Vec4::as_ivec4(&_self) + let output: V<::glam::IVec4> = ::glam::U64Vec4::as_ivec4( + _self.into_inner(), + ) .into(); output } @@ -33810,11 +33303,11 @@ pub(crate) fn register_u_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_u16vec4", - |_self: R<::glam::U64Vec4>| { + |_self: V<::glam::U64Vec4>| { let output: V<::glam::U16Vec4> = { { let output: V<::glam::U16Vec4> = ::glam::U64Vec4::as_u16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -33827,11 +33320,11 @@ pub(crate) fn register_u_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_u8vec4", - |_self: R<::glam::U64Vec4>| { + |_self: V<::glam::U64Vec4>| { let output: V<::glam::U8Vec4> = { { let output: V<::glam::U8Vec4> = ::glam::U64Vec4::as_u8vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -33844,10 +33337,12 @@ pub(crate) fn register_u_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_uvec4", - |_self: R<::glam::U64Vec4>| { + |_self: V<::glam::U64Vec4>| { let output: V<::glam::UVec4> = { { - let output: V<::glam::UVec4> = ::glam::U64Vec4::as_uvec4(&_self) + let output: V<::glam::UVec4> = ::glam::U64Vec4::as_uvec4( + _self.into_inner(), + ) .into(); output } @@ -33859,26 +33354,11 @@ pub(crate) fn register_u_64_vec_4_functions(world: &mut World) { ) .register_documented( "as_vec4", - |_self: R<::glam::U64Vec4>| { + |_self: V<::glam::U64Vec4>| { let output: V<::glam::Vec4> = { { - let output: V<::glam::Vec4> = ::glam::U64Vec4::as_vec4(&_self) - .into(); - output - } - }; - output - }, - " Casts all elements of `self` to `f32`.", - &["_self"], - ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::U64Vec4>| { - let output: () = { - { - let output: () = <::glam::U64Vec4 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, + let output: V<::glam::Vec4> = ::glam::U64Vec4::as_vec4( + _self.into_inner(), ) .into(); output @@ -33886,7 +33366,7 @@ pub(crate) fn register_u_64_vec_4_functions(world: &mut World) { }; output }, - "", + " Casts all elements of `self` to `f32`.", &["_self"], ) .register_documented( @@ -34949,24 +34429,6 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { "", &["_self", "rhs"], ) - .register_documented( - "angle_between", - |_self: V<::glam::Vec2>, rhs: V<::glam::Vec2>| { - let output: f32 = { - { - let output: f32 = ::glam::Vec2::angle_between( - _self.into_inner(), - rhs.into_inner(), - ) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "angle_to", |_self: V<::glam::Vec2>, rhs: V<::glam::Vec2>| { @@ -34987,10 +34449,12 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { ) .register_documented( "as_dvec2", - |_self: R<::glam::Vec2>| { + |_self: V<::glam::Vec2>| { let output: V<::glam::DVec2> = { { - let output: V<::glam::DVec2> = ::glam::Vec2::as_dvec2(&_self) + let output: V<::glam::DVec2> = ::glam::Vec2::as_dvec2( + _self.into_inner(), + ) .into(); output } @@ -35002,10 +34466,12 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { ) .register_documented( "as_i16vec2", - |_self: R<::glam::Vec2>| { + |_self: V<::glam::Vec2>| { let output: V<::glam::I16Vec2> = { { - let output: V<::glam::I16Vec2> = ::glam::Vec2::as_i16vec2(&_self) + let output: V<::glam::I16Vec2> = ::glam::Vec2::as_i16vec2( + _self.into_inner(), + ) .into(); output } @@ -35017,10 +34483,12 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { ) .register_documented( "as_i64vec2", - |_self: R<::glam::Vec2>| { + |_self: V<::glam::Vec2>| { let output: V<::glam::I64Vec2> = { { - let output: V<::glam::I64Vec2> = ::glam::Vec2::as_i64vec2(&_self) + let output: V<::glam::I64Vec2> = ::glam::Vec2::as_i64vec2( + _self.into_inner(), + ) .into(); output } @@ -35032,10 +34500,12 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { ) .register_documented( "as_i8vec2", - |_self: R<::glam::Vec2>| { + |_self: V<::glam::Vec2>| { let output: V<::glam::I8Vec2> = { { - let output: V<::glam::I8Vec2> = ::glam::Vec2::as_i8vec2(&_self) + let output: V<::glam::I8Vec2> = ::glam::Vec2::as_i8vec2( + _self.into_inner(), + ) .into(); output } @@ -35047,10 +34517,12 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { ) .register_documented( "as_ivec2", - |_self: R<::glam::Vec2>| { + |_self: V<::glam::Vec2>| { let output: V<::glam::IVec2> = { { - let output: V<::glam::IVec2> = ::glam::Vec2::as_ivec2(&_self) + let output: V<::glam::IVec2> = ::glam::Vec2::as_ivec2( + _self.into_inner(), + ) .into(); output } @@ -35062,10 +34534,12 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { ) .register_documented( "as_u16vec2", - |_self: R<::glam::Vec2>| { + |_self: V<::glam::Vec2>| { let output: V<::glam::U16Vec2> = { { - let output: V<::glam::U16Vec2> = ::glam::Vec2::as_u16vec2(&_self) + let output: V<::glam::U16Vec2> = ::glam::Vec2::as_u16vec2( + _self.into_inner(), + ) .into(); output } @@ -35077,10 +34551,12 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { ) .register_documented( "as_u64vec2", - |_self: R<::glam::Vec2>| { + |_self: V<::glam::Vec2>| { let output: V<::glam::U64Vec2> = { { - let output: V<::glam::U64Vec2> = ::glam::Vec2::as_u64vec2(&_self) + let output: V<::glam::U64Vec2> = ::glam::Vec2::as_u64vec2( + _self.into_inner(), + ) .into(); output } @@ -35092,10 +34568,12 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { ) .register_documented( "as_u8vec2", - |_self: R<::glam::Vec2>| { + |_self: V<::glam::Vec2>| { let output: V<::glam::U8Vec2> = { { - let output: V<::glam::U8Vec2> = ::glam::Vec2::as_u8vec2(&_self) + let output: V<::glam::U8Vec2> = ::glam::Vec2::as_u8vec2( + _self.into_inner(), + ) .into(); output } @@ -35107,10 +34585,12 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { ) .register_documented( "as_uvec2", - |_self: R<::glam::Vec2>| { + |_self: V<::glam::Vec2>| { let output: V<::glam::UVec2> = { { - let output: V<::glam::UVec2> = ::glam::Vec2::as_uvec2(&_self) + let output: V<::glam::UVec2> = ::glam::Vec2::as_uvec2( + _self.into_inner(), + ) .into(); output } @@ -35354,6 +34834,23 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { " Returns a vector with signs of `rhs` and the magnitudes of `self`.", &["_self", "rhs"], ) + .register_documented( + "cos", + |_self: V<::glam::Vec2>| { + let output: V<::glam::Vec2> = { + { + let output: V<::glam::Vec2> = ::glam::Vec2::cos( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the cosine for each element of `self`.", + &["_self"], + ) .register_documented( "distance", |_self: V<::glam::Vec2>, rhs: V<::glam::Vec2>| { @@ -35994,11 +35491,11 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { ) .register_documented( "move_towards", - |_self: R<::glam::Vec2>, rhs: V<::glam::Vec2>, d: f32| { + |_self: V<::glam::Vec2>, rhs: V<::glam::Vec2>, d: f32| { let output: V<::glam::Vec2> = { { let output: V<::glam::Vec2> = ::glam::Vec2::move_towards( - &_self, + _self.into_inner(), rhs.into_inner(), d, ) @@ -36432,11 +35929,11 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { ) .register_documented( "rotate_towards", - |_self: R<::glam::Vec2>, rhs: V<::glam::Vec2>, max_angle: f32| { + |_self: V<::glam::Vec2>, rhs: V<::glam::Vec2>, max_angle: f32| { let output: V<::glam::Vec2> = { { let output: V<::glam::Vec2> = ::glam::Vec2::rotate_towards( - &_self, + _self.into_inner(), rhs.into_inner(), max_angle, ) @@ -36466,6 +35963,23 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { " Returns a vector containing the nearest integer to a number for each element of `self`.\n Round half-way cases away from 0.0.", &["_self"], ) + .register_documented( + "saturate", + |_self: V<::glam::Vec2>| { + let output: V<::glam::Vec2> = { + { + let output: V<::glam::Vec2> = ::glam::Vec2::saturate( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing all elements of `self` clamped to the range of `[0, 1]`.", + &["_self"], + ) .register_documented( "select", | @@ -36506,6 +36020,23 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { " Returns a vector with elements representing the sign of `self`.\n - `1.0` if the number is positive, `+0.0` or `INFINITY`\n - `-1.0` if the number is negative, `-0.0` or `NEG_INFINITY`\n - `NAN` if the number is `NAN`", &["_self"], ) + .register_documented( + "sin", + |_self: V<::glam::Vec2>| { + let output: V<::glam::Vec2> = { + { + let output: V<::glam::Vec2> = ::glam::Vec2::sin( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the sine for each element of `self`.", + &["_self"], + ) .register_documented( "splat", |v: f32| { @@ -36520,6 +36051,41 @@ pub(crate) fn register_vec_2_functions(world: &mut World) { " Creates a vector with all elements set to `v`.", &["v"], ) + .register_documented( + "sqrt", + |_self: V<::glam::Vec2>| { + let output: V<::glam::Vec2> = { + { + let output: V<::glam::Vec2> = ::glam::Vec2::sqrt( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the square root for each element of `self`.\n This returns NaN when the element is negative.", + &["_self"], + ) + .register_documented( + "step", + |_self: V<::glam::Vec2>, rhs: V<::glam::Vec2>| { + let output: V<::glam::Vec2> = { + { + let output: V<::glam::Vec2> = ::glam::Vec2::step( + _self.into_inner(), + rhs.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing `0.0` if `rhs < self` and 1.0 otherwise.\n Similar to glsl's step(edge, x), which translates into edge.step(x)", + &["_self", "rhs"], + ) .register_documented( "sub", |_self: V<::glam::Vec2>, rhs: R<::glam::Vec2>| { @@ -36768,11 +36334,11 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { ) .register_documented( "any_orthogonal_vector", - |_self: R<::glam::Vec3A>| { + |_self: V<::glam::Vec3A>| { let output: V<::glam::Vec3A> = { { let output: V<::glam::Vec3A> = ::glam::Vec3A::any_orthogonal_vector( - &_self, + _self.into_inner(), ) .into(); output @@ -36785,11 +36351,11 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { ) .register_documented( "any_orthonormal_vector", - |_self: R<::glam::Vec3A>| { + |_self: V<::glam::Vec3A>| { let output: V<::glam::Vec3A> = { { let output: V<::glam::Vec3A> = ::glam::Vec3A::any_orthonormal_vector( - &_self, + _self.into_inner(), ) .into(); output @@ -36802,10 +36368,12 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { ) .register_documented( "as_dvec3", - |_self: R<::glam::Vec3A>| { + |_self: V<::glam::Vec3A>| { let output: V<::glam::DVec3> = { { - let output: V<::glam::DVec3> = ::glam::Vec3A::as_dvec3(&_self) + let output: V<::glam::DVec3> = ::glam::Vec3A::as_dvec3( + _self.into_inner(), + ) .into(); output } @@ -36817,11 +36385,11 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { ) .register_documented( "as_i16vec3", - |_self: R<::glam::Vec3A>| { + |_self: V<::glam::Vec3A>| { let output: V<::glam::I16Vec3> = { { let output: V<::glam::I16Vec3> = ::glam::Vec3A::as_i16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -36834,11 +36402,11 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { ) .register_documented( "as_i64vec3", - |_self: R<::glam::Vec3A>| { + |_self: V<::glam::Vec3A>| { let output: V<::glam::I64Vec3> = { { let output: V<::glam::I64Vec3> = ::glam::Vec3A::as_i64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -36851,10 +36419,12 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { ) .register_documented( "as_i8vec3", - |_self: R<::glam::Vec3A>| { + |_self: V<::glam::Vec3A>| { let output: V<::glam::I8Vec3> = { { - let output: V<::glam::I8Vec3> = ::glam::Vec3A::as_i8vec3(&_self) + let output: V<::glam::I8Vec3> = ::glam::Vec3A::as_i8vec3( + _self.into_inner(), + ) .into(); output } @@ -36866,10 +36436,12 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { ) .register_documented( "as_ivec3", - |_self: R<::glam::Vec3A>| { + |_self: V<::glam::Vec3A>| { let output: V<::glam::IVec3> = { { - let output: V<::glam::IVec3> = ::glam::Vec3A::as_ivec3(&_self) + let output: V<::glam::IVec3> = ::glam::Vec3A::as_ivec3( + _self.into_inner(), + ) .into(); output } @@ -36881,11 +36453,11 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { ) .register_documented( "as_u16vec3", - |_self: R<::glam::Vec3A>| { + |_self: V<::glam::Vec3A>| { let output: V<::glam::U16Vec3> = { { let output: V<::glam::U16Vec3> = ::glam::Vec3A::as_u16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -36898,11 +36470,11 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { ) .register_documented( "as_u64vec3", - |_self: R<::glam::Vec3A>| { + |_self: V<::glam::Vec3A>| { let output: V<::glam::U64Vec3> = { { let output: V<::glam::U64Vec3> = ::glam::Vec3A::as_u64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -36915,10 +36487,12 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { ) .register_documented( "as_u8vec3", - |_self: R<::glam::Vec3A>| { + |_self: V<::glam::Vec3A>| { let output: V<::glam::U8Vec3> = { { - let output: V<::glam::U8Vec3> = ::glam::Vec3A::as_u8vec3(&_self) + let output: V<::glam::U8Vec3> = ::glam::Vec3A::as_u8vec3( + _self.into_inner(), + ) .into(); output } @@ -36930,10 +36504,12 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { ) .register_documented( "as_uvec3", - |_self: R<::glam::Vec3A>| { + |_self: V<::glam::Vec3A>| { let output: V<::glam::UVec3> = { { - let output: V<::glam::UVec3> = ::glam::Vec3A::as_uvec3(&_self) + let output: V<::glam::UVec3> = ::glam::Vec3A::as_uvec3( + _self.into_inner(), + ) .into(); output } @@ -37177,6 +36753,23 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { " Returns a vector with signs of `rhs` and the magnitudes of `self`.", &["_self", "rhs"], ) + .register_documented( + "cos", + |_self: V<::glam::Vec3A>| { + let output: V<::glam::Vec3A> = { + { + let output: V<::glam::Vec3A> = ::glam::Vec3A::cos( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the cosine for each element of `self`.", + &["_self"], + ) .register_documented( "cross", |_self: V<::glam::Vec3A>, rhs: V<::glam::Vec3A>| { @@ -37855,11 +37448,11 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { ) .register_documented( "move_towards", - |_self: R<::glam::Vec3A>, rhs: V<::glam::Vec3A>, d: f32| { + |_self: V<::glam::Vec3A>, rhs: V<::glam::Vec3A>, d: f32| { let output: V<::glam::Vec3A> = { { let output: V<::glam::Vec3A> = ::glam::Vec3A::move_towards( - &_self, + _self.into_inner(), rhs.into_inner(), d, ) @@ -38348,6 +37941,23 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { " Returns a vector containing the nearest integer to a number for each element of `self`.\n Round half-way cases away from 0.0.", &["_self"], ) + .register_documented( + "saturate", + |_self: V<::glam::Vec3A>| { + let output: V<::glam::Vec3A> = { + { + let output: V<::glam::Vec3A> = ::glam::Vec3A::saturate( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing all elements of `self` clamped to the range of `[0, 1]`.", + &["_self"], + ) .register_documented( "select", | @@ -38388,6 +37998,23 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { " Returns a vector with elements representing the sign of `self`.\n - `1.0` if the number is positive, `+0.0` or `INFINITY`\n - `-1.0` if the number is negative, `-0.0` or `NEG_INFINITY`\n - `NAN` if the number is `NAN`", &["_self"], ) + .register_documented( + "sin", + |_self: V<::glam::Vec3A>| { + let output: V<::glam::Vec3A> = { + { + let output: V<::glam::Vec3A> = ::glam::Vec3A::sin( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the sine for each element of `self`.", + &["_self"], + ) .register_documented( "slerp", |_self: V<::glam::Vec3A>, rhs: V<::glam::Vec3A>, s: f32| { @@ -38421,6 +38048,41 @@ pub(crate) fn register_vec_3_a_functions(world: &mut World) { " Creates a vector with all elements set to `v`.", &["v"], ) + .register_documented( + "sqrt", + |_self: V<::glam::Vec3A>| { + let output: V<::glam::Vec3A> = { + { + let output: V<::glam::Vec3A> = ::glam::Vec3A::sqrt( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the square root for each element of `self`.\n This returns NaN when the element is negative.", + &["_self"], + ) + .register_documented( + "step", + |_self: V<::glam::Vec3A>, rhs: V<::glam::Vec3A>| { + let output: V<::glam::Vec3A> = { + { + let output: V<::glam::Vec3A> = ::glam::Vec3A::step( + _self.into_inner(), + rhs.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing `0.0` if `rhs < self` and 1.0 otherwise.\n Similar to glsl's step(edge, x), which translates into edge.step(x)", + &["_self", "rhs"], + ) .register_documented( "sub", |_self: V<::glam::Vec3A>, rhs: R<::glam::Vec3A>| { @@ -38705,10 +38367,12 @@ pub(crate) fn register_vec_4_functions(world: &mut World) { ) .register_documented( "as_dvec4", - |_self: R<::glam::Vec4>| { + |_self: V<::glam::Vec4>| { let output: V<::glam::DVec4> = { { - let output: V<::glam::DVec4> = ::glam::Vec4::as_dvec4(&_self) + let output: V<::glam::DVec4> = ::glam::Vec4::as_dvec4( + _self.into_inner(), + ) .into(); output } @@ -38720,10 +38384,12 @@ pub(crate) fn register_vec_4_functions(world: &mut World) { ) .register_documented( "as_i16vec4", - |_self: R<::glam::Vec4>| { + |_self: V<::glam::Vec4>| { let output: V<::glam::I16Vec4> = { { - let output: V<::glam::I16Vec4> = ::glam::Vec4::as_i16vec4(&_self) + let output: V<::glam::I16Vec4> = ::glam::Vec4::as_i16vec4( + _self.into_inner(), + ) .into(); output } @@ -38735,10 +38401,12 @@ pub(crate) fn register_vec_4_functions(world: &mut World) { ) .register_documented( "as_i64vec4", - |_self: R<::glam::Vec4>| { + |_self: V<::glam::Vec4>| { let output: V<::glam::I64Vec4> = { { - let output: V<::glam::I64Vec4> = ::glam::Vec4::as_i64vec4(&_self) + let output: V<::glam::I64Vec4> = ::glam::Vec4::as_i64vec4( + _self.into_inner(), + ) .into(); output } @@ -38750,10 +38418,12 @@ pub(crate) fn register_vec_4_functions(world: &mut World) { ) .register_documented( "as_i8vec4", - |_self: R<::glam::Vec4>| { + |_self: V<::glam::Vec4>| { let output: V<::glam::I8Vec4> = { { - let output: V<::glam::I8Vec4> = ::glam::Vec4::as_i8vec4(&_self) + let output: V<::glam::I8Vec4> = ::glam::Vec4::as_i8vec4( + _self.into_inner(), + ) .into(); output } @@ -38765,10 +38435,12 @@ pub(crate) fn register_vec_4_functions(world: &mut World) { ) .register_documented( "as_ivec4", - |_self: R<::glam::Vec4>| { + |_self: V<::glam::Vec4>| { let output: V<::glam::IVec4> = { { - let output: V<::glam::IVec4> = ::glam::Vec4::as_ivec4(&_self) + let output: V<::glam::IVec4> = ::glam::Vec4::as_ivec4( + _self.into_inner(), + ) .into(); output } @@ -38780,10 +38452,12 @@ pub(crate) fn register_vec_4_functions(world: &mut World) { ) .register_documented( "as_u16vec4", - |_self: R<::glam::Vec4>| { + |_self: V<::glam::Vec4>| { let output: V<::glam::U16Vec4> = { { - let output: V<::glam::U16Vec4> = ::glam::Vec4::as_u16vec4(&_self) + let output: V<::glam::U16Vec4> = ::glam::Vec4::as_u16vec4( + _self.into_inner(), + ) .into(); output } @@ -38795,10 +38469,12 @@ pub(crate) fn register_vec_4_functions(world: &mut World) { ) .register_documented( "as_u64vec4", - |_self: R<::glam::Vec4>| { + |_self: V<::glam::Vec4>| { let output: V<::glam::U64Vec4> = { { - let output: V<::glam::U64Vec4> = ::glam::Vec4::as_u64vec4(&_self) + let output: V<::glam::U64Vec4> = ::glam::Vec4::as_u64vec4( + _self.into_inner(), + ) .into(); output } @@ -38810,10 +38486,12 @@ pub(crate) fn register_vec_4_functions(world: &mut World) { ) .register_documented( "as_u8vec4", - |_self: R<::glam::Vec4>| { + |_self: V<::glam::Vec4>| { let output: V<::glam::U8Vec4> = { { - let output: V<::glam::U8Vec4> = ::glam::Vec4::as_u8vec4(&_self) + let output: V<::glam::U8Vec4> = ::glam::Vec4::as_u8vec4( + _self.into_inner(), + ) .into(); output } @@ -38825,10 +38503,12 @@ pub(crate) fn register_vec_4_functions(world: &mut World) { ) .register_documented( "as_uvec4", - |_self: R<::glam::Vec4>| { + |_self: V<::glam::Vec4>| { let output: V<::glam::UVec4> = { { - let output: V<::glam::UVec4> = ::glam::Vec4::as_uvec4(&_self) + let output: V<::glam::UVec4> = ::glam::Vec4::as_uvec4( + _self.into_inner(), + ) .into(); output } @@ -39072,6 +38752,23 @@ pub(crate) fn register_vec_4_functions(world: &mut World) { " Returns a vector with signs of `rhs` and the magnitudes of `self`.", &["_self", "rhs"], ) + .register_documented( + "cos", + |_self: V<::glam::Vec4>| { + let output: V<::glam::Vec4> = { + { + let output: V<::glam::Vec4> = ::glam::Vec4::cos( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the cosine for each element of `self`.", + &["_self"], + ) .register_documented( "distance", |_self: V<::glam::Vec4>, rhs: V<::glam::Vec4>| { @@ -39679,11 +39376,11 @@ pub(crate) fn register_vec_4_functions(world: &mut World) { ) .register_documented( "move_towards", - |_self: R<::glam::Vec4>, rhs: V<::glam::Vec4>, d: f32| { + |_self: V<::glam::Vec4>, rhs: V<::glam::Vec4>, d: f32| { let output: V<::glam::Vec4> = { { let output: V<::glam::Vec4> = ::glam::Vec4::move_towards( - &_self, + _self.into_inner(), rhs.into_inner(), d, ) @@ -40097,6 +39794,23 @@ pub(crate) fn register_vec_4_functions(world: &mut World) { " Returns a vector containing the nearest integer to a number for each element of `self`.\n Round half-way cases away from 0.0.", &["_self"], ) + .register_documented( + "saturate", + |_self: V<::glam::Vec4>| { + let output: V<::glam::Vec4> = { + { + let output: V<::glam::Vec4> = ::glam::Vec4::saturate( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing all elements of `self` clamped to the range of `[0, 1]`.", + &["_self"], + ) .register_documented( "select", | @@ -40137,6 +39851,23 @@ pub(crate) fn register_vec_4_functions(world: &mut World) { " Returns a vector with elements representing the sign of `self`.\n - `1.0` if the number is positive, `+0.0` or `INFINITY`\n - `-1.0` if the number is negative, `-0.0` or `NEG_INFINITY`\n - `NAN` if the number is `NAN`", &["_self"], ) + .register_documented( + "sin", + |_self: V<::glam::Vec4>| { + let output: V<::glam::Vec4> = { + { + let output: V<::glam::Vec4> = ::glam::Vec4::sin( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the sine for each element of `self`.", + &["_self"], + ) .register_documented( "splat", |v: f32| { @@ -40151,6 +39882,41 @@ pub(crate) fn register_vec_4_functions(world: &mut World) { " Creates a vector with all elements set to `v`.", &["v"], ) + .register_documented( + "sqrt", + |_self: V<::glam::Vec4>| { + let output: V<::glam::Vec4> = { + { + let output: V<::glam::Vec4> = ::glam::Vec4::sqrt( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the square root for each element of `self`.\n This returns NaN when the element is negative.", + &["_self"], + ) + .register_documented( + "step", + |_self: V<::glam::Vec4>, rhs: V<::glam::Vec4>| { + let output: V<::glam::Vec4> = { + { + let output: V<::glam::Vec4> = ::glam::Vec4::step( + _self.into_inner(), + rhs.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing `0.0` if `rhs < self` and 1.0 otherwise.\n Similar to glsl's step(edge, x), which translates into edge.step(x)", + &["_self", "rhs"], + ) .register_documented( "sub", |_self: V<::glam::Vec4>, rhs: R<::glam::Vec4>| { @@ -40358,23 +40124,6 @@ pub(crate) fn register_b_vec_2_functions(world: &mut World) { " Returns true if any of the elements are true, false otherwise.", &["_self"], ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::BVec2>| { - let output: () = { - { - let output: () = <::glam::BVec2 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "bitmask", |_self: V<::glam::BVec2>| { @@ -40484,10 +40233,11 @@ pub(crate) fn register_b_vec_2_functions(world: &mut World) { ) .register_documented( "test", - |_self: R<::glam::BVec2>, index: usize| { + |_self: V<::glam::BVec2>, index: usize| { let output: bool = { { - let output: bool = ::glam::BVec2::test(&_self, index).into(); + let output: bool = ::glam::BVec2::test(_self.into_inner(), index) + .into(); output } }; @@ -40532,23 +40282,6 @@ pub(crate) fn register_b_vec_3_functions(world: &mut World) { " Returns true if any of the elements are true, false otherwise.", &["_self"], ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::BVec3>| { - let output: () = { - { - let output: () = <::glam::BVec3 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "bitmask", |_self: V<::glam::BVec3>| { @@ -40659,10 +40392,11 @@ pub(crate) fn register_b_vec_3_functions(world: &mut World) { ) .register_documented( "test", - |_self: R<::glam::BVec3>, index: usize| { + |_self: V<::glam::BVec3>, index: usize| { let output: bool = { { - let output: bool = ::glam::BVec3::test(&_self, index).into(); + let output: bool = ::glam::BVec3::test(_self.into_inner(), index) + .into(); output } }; @@ -40707,23 +40441,6 @@ pub(crate) fn register_b_vec_4_functions(world: &mut World) { " Returns true if any of the elements are true, false otherwise.", &["_self"], ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::BVec4>| { - let output: () = { - { - let output: () = <::glam::BVec4 as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "bitmask", |_self: V<::glam::BVec4>| { @@ -40834,10 +40551,11 @@ pub(crate) fn register_b_vec_4_functions(world: &mut World) { ) .register_documented( "test", - |_self: R<::glam::BVec4>, index: usize| { + |_self: V<::glam::BVec4>, index: usize| { let output: bool = { { - let output: bool = ::glam::BVec4::test(&_self, index).into(); + let output: bool = ::glam::BVec4::test(_self.into_inner(), index) + .into(); output } }; @@ -40941,24 +40659,6 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { "", &["_self", "rhs"], ) - .register_documented( - "angle_between", - |_self: V<::glam::DVec2>, rhs: V<::glam::DVec2>| { - let output: f64 = { - { - let output: f64 = ::glam::DVec2::angle_between( - _self.into_inner(), - rhs.into_inner(), - ) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "angle_to", |_self: V<::glam::DVec2>, rhs: V<::glam::DVec2>| { @@ -40979,11 +40679,11 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { ) .register_documented( "as_i16vec2", - |_self: R<::glam::DVec2>| { + |_self: V<::glam::DVec2>| { let output: V<::glam::I16Vec2> = { { let output: V<::glam::I16Vec2> = ::glam::DVec2::as_i16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -40996,11 +40696,11 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { ) .register_documented( "as_i64vec2", - |_self: R<::glam::DVec2>| { + |_self: V<::glam::DVec2>| { let output: V<::glam::I64Vec2> = { { let output: V<::glam::I64Vec2> = ::glam::DVec2::as_i64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -41013,10 +40713,12 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { ) .register_documented( "as_i8vec2", - |_self: R<::glam::DVec2>| { + |_self: V<::glam::DVec2>| { let output: V<::glam::I8Vec2> = { { - let output: V<::glam::I8Vec2> = ::glam::DVec2::as_i8vec2(&_self) + let output: V<::glam::I8Vec2> = ::glam::DVec2::as_i8vec2( + _self.into_inner(), + ) .into(); output } @@ -41028,10 +40730,12 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { ) .register_documented( "as_ivec2", - |_self: R<::glam::DVec2>| { + |_self: V<::glam::DVec2>| { let output: V<::glam::IVec2> = { { - let output: V<::glam::IVec2> = ::glam::DVec2::as_ivec2(&_self) + let output: V<::glam::IVec2> = ::glam::DVec2::as_ivec2( + _self.into_inner(), + ) .into(); output } @@ -41043,11 +40747,11 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { ) .register_documented( "as_u16vec2", - |_self: R<::glam::DVec2>| { + |_self: V<::glam::DVec2>| { let output: V<::glam::U16Vec2> = { { let output: V<::glam::U16Vec2> = ::glam::DVec2::as_u16vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -41060,11 +40764,11 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { ) .register_documented( "as_u64vec2", - |_self: R<::glam::DVec2>| { + |_self: V<::glam::DVec2>| { let output: V<::glam::U64Vec2> = { { let output: V<::glam::U64Vec2> = ::glam::DVec2::as_u64vec2( - &_self, + _self.into_inner(), ) .into(); output @@ -41077,10 +40781,12 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { ) .register_documented( "as_u8vec2", - |_self: R<::glam::DVec2>| { + |_self: V<::glam::DVec2>| { let output: V<::glam::U8Vec2> = { { - let output: V<::glam::U8Vec2> = ::glam::DVec2::as_u8vec2(&_self) + let output: V<::glam::U8Vec2> = ::glam::DVec2::as_u8vec2( + _self.into_inner(), + ) .into(); output } @@ -41092,10 +40798,12 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { ) .register_documented( "as_uvec2", - |_self: R<::glam::DVec2>| { + |_self: V<::glam::DVec2>| { let output: V<::glam::UVec2> = { { - let output: V<::glam::UVec2> = ::glam::DVec2::as_uvec2(&_self) + let output: V<::glam::UVec2> = ::glam::DVec2::as_uvec2( + _self.into_inner(), + ) .into(); output } @@ -41107,10 +40815,12 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { ) .register_documented( "as_vec2", - |_self: R<::glam::DVec2>| { + |_self: V<::glam::DVec2>| { let output: V<::glam::Vec2> = { { - let output: V<::glam::Vec2> = ::glam::DVec2::as_vec2(&_self) + let output: V<::glam::Vec2> = ::glam::DVec2::as_vec2( + _self.into_inner(), + ) .into(); output } @@ -41354,6 +41064,23 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { " Returns a vector with signs of `rhs` and the magnitudes of `self`.", &["_self", "rhs"], ) + .register_documented( + "cos", + |_self: V<::glam::DVec2>| { + let output: V<::glam::DVec2> = { + { + let output: V<::glam::DVec2> = ::glam::DVec2::cos( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the cosine for each element of `self`.", + &["_self"], + ) .register_documented( "distance", |_self: V<::glam::DVec2>, rhs: V<::glam::DVec2>| { @@ -41995,11 +41722,11 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { ) .register_documented( "move_towards", - |_self: R<::glam::DVec2>, rhs: V<::glam::DVec2>, d: f64| { + |_self: V<::glam::DVec2>, rhs: V<::glam::DVec2>, d: f64| { let output: V<::glam::DVec2> = { { let output: V<::glam::DVec2> = ::glam::DVec2::move_towards( - &_self, + _self.into_inner(), rhs.into_inner(), d, ) @@ -42433,11 +42160,11 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { ) .register_documented( "rotate_towards", - |_self: R<::glam::DVec2>, rhs: V<::glam::DVec2>, max_angle: f64| { + |_self: V<::glam::DVec2>, rhs: V<::glam::DVec2>, max_angle: f64| { let output: V<::glam::DVec2> = { { let output: V<::glam::DVec2> = ::glam::DVec2::rotate_towards( - &_self, + _self.into_inner(), rhs.into_inner(), max_angle, ) @@ -42467,6 +42194,23 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { " Returns a vector containing the nearest integer to a number for each element of `self`.\n Round half-way cases away from 0.0.", &["_self"], ) + .register_documented( + "saturate", + |_self: V<::glam::DVec2>| { + let output: V<::glam::DVec2> = { + { + let output: V<::glam::DVec2> = ::glam::DVec2::saturate( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing all elements of `self` clamped to the range of `[0, 1]`.", + &["_self"], + ) .register_documented( "select", | @@ -42507,6 +42251,23 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { " Returns a vector with elements representing the sign of `self`.\n - `1.0` if the number is positive, `+0.0` or `INFINITY`\n - `-1.0` if the number is negative, `-0.0` or `NEG_INFINITY`\n - `NAN` if the number is `NAN`", &["_self"], ) + .register_documented( + "sin", + |_self: V<::glam::DVec2>| { + let output: V<::glam::DVec2> = { + { + let output: V<::glam::DVec2> = ::glam::DVec2::sin( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the sine for each element of `self`.", + &["_self"], + ) .register_documented( "splat", |v: f64| { @@ -42521,6 +42282,41 @@ pub(crate) fn register_d_vec_2_functions(world: &mut World) { " Creates a vector with all elements set to `v`.", &["v"], ) + .register_documented( + "sqrt", + |_self: V<::glam::DVec2>| { + let output: V<::glam::DVec2> = { + { + let output: V<::glam::DVec2> = ::glam::DVec2::sqrt( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the square root for each element of `self`.\n This returns NaN when the element is negative.", + &["_self"], + ) + .register_documented( + "step", + |_self: V<::glam::DVec2>, rhs: V<::glam::DVec2>| { + let output: V<::glam::DVec2> = { + { + let output: V<::glam::DVec2> = ::glam::DVec2::step( + _self.into_inner(), + rhs.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing `0.0` if `rhs < self` and 1.0 otherwise.\n Similar to glsl's step(edge, x), which translates into edge.step(x)", + &["_self", "rhs"], + ) .register_documented( "sub", |_self: V<::glam::DVec2>, rhs: R<::glam::DVec2>| { @@ -42769,11 +42565,11 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { ) .register_documented( "any_orthogonal_vector", - |_self: R<::glam::DVec3>| { + |_self: V<::glam::DVec3>| { let output: V<::glam::DVec3> = { { let output: V<::glam::DVec3> = ::glam::DVec3::any_orthogonal_vector( - &_self, + _self.into_inner(), ) .into(); output @@ -42786,11 +42582,11 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { ) .register_documented( "any_orthonormal_vector", - |_self: R<::glam::DVec3>| { + |_self: V<::glam::DVec3>| { let output: V<::glam::DVec3> = { { let output: V<::glam::DVec3> = ::glam::DVec3::any_orthonormal_vector( - &_self, + _self.into_inner(), ) .into(); output @@ -42803,11 +42599,11 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { ) .register_documented( "as_i16vec3", - |_self: R<::glam::DVec3>| { + |_self: V<::glam::DVec3>| { let output: V<::glam::I16Vec3> = { { let output: V<::glam::I16Vec3> = ::glam::DVec3::as_i16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -42820,11 +42616,11 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { ) .register_documented( "as_i64vec3", - |_self: R<::glam::DVec3>| { + |_self: V<::glam::DVec3>| { let output: V<::glam::I64Vec3> = { { let output: V<::glam::I64Vec3> = ::glam::DVec3::as_i64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -42837,10 +42633,12 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { ) .register_documented( "as_i8vec3", - |_self: R<::glam::DVec3>| { + |_self: V<::glam::DVec3>| { let output: V<::glam::I8Vec3> = { { - let output: V<::glam::I8Vec3> = ::glam::DVec3::as_i8vec3(&_self) + let output: V<::glam::I8Vec3> = ::glam::DVec3::as_i8vec3( + _self.into_inner(), + ) .into(); output } @@ -42852,10 +42650,12 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { ) .register_documented( "as_ivec3", - |_self: R<::glam::DVec3>| { + |_self: V<::glam::DVec3>| { let output: V<::glam::IVec3> = { { - let output: V<::glam::IVec3> = ::glam::DVec3::as_ivec3(&_self) + let output: V<::glam::IVec3> = ::glam::DVec3::as_ivec3( + _self.into_inner(), + ) .into(); output } @@ -42867,11 +42667,11 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { ) .register_documented( "as_u16vec3", - |_self: R<::glam::DVec3>| { + |_self: V<::glam::DVec3>| { let output: V<::glam::U16Vec3> = { { let output: V<::glam::U16Vec3> = ::glam::DVec3::as_u16vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -42884,11 +42684,11 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { ) .register_documented( "as_u64vec3", - |_self: R<::glam::DVec3>| { + |_self: V<::glam::DVec3>| { let output: V<::glam::U64Vec3> = { { let output: V<::glam::U64Vec3> = ::glam::DVec3::as_u64vec3( - &_self, + _self.into_inner(), ) .into(); output @@ -42901,10 +42701,12 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { ) .register_documented( "as_u8vec3", - |_self: R<::glam::DVec3>| { + |_self: V<::glam::DVec3>| { let output: V<::glam::U8Vec3> = { { - let output: V<::glam::U8Vec3> = ::glam::DVec3::as_u8vec3(&_self) + let output: V<::glam::U8Vec3> = ::glam::DVec3::as_u8vec3( + _self.into_inner(), + ) .into(); output } @@ -42916,10 +42718,12 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { ) .register_documented( "as_uvec3", - |_self: R<::glam::DVec3>| { + |_self: V<::glam::DVec3>| { let output: V<::glam::UVec3> = { { - let output: V<::glam::UVec3> = ::glam::DVec3::as_uvec3(&_self) + let output: V<::glam::UVec3> = ::glam::DVec3::as_uvec3( + _self.into_inner(), + ) .into(); output } @@ -42931,10 +42735,12 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3", - |_self: R<::glam::DVec3>| { + |_self: V<::glam::DVec3>| { let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec3> = ::glam::DVec3::as_vec3(&_self) + let output: V<::glam::Vec3> = ::glam::DVec3::as_vec3( + _self.into_inner(), + ) .into(); output } @@ -42946,10 +42752,12 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { ) .register_documented( "as_vec3a", - |_self: R<::glam::DVec3>| { + |_self: V<::glam::DVec3>| { let output: V<::glam::Vec3A> = { { - let output: V<::glam::Vec3A> = ::glam::DVec3::as_vec3a(&_self) + let output: V<::glam::Vec3A> = ::glam::DVec3::as_vec3a( + _self.into_inner(), + ) .into(); output } @@ -43193,6 +43001,23 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { " Returns a vector with signs of `rhs` and the magnitudes of `self`.", &["_self", "rhs"], ) + .register_documented( + "cos", + |_self: V<::glam::DVec3>| { + let output: V<::glam::DVec3> = { + { + let output: V<::glam::DVec3> = ::glam::DVec3::cos( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the cosine for each element of `self`.", + &["_self"], + ) .register_documented( "cross", |_self: V<::glam::DVec3>, rhs: V<::glam::DVec3>| { @@ -43854,11 +43679,11 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { ) .register_documented( "move_towards", - |_self: R<::glam::DVec3>, rhs: V<::glam::DVec3>, d: f64| { + |_self: V<::glam::DVec3>, rhs: V<::glam::DVec3>, d: f64| { let output: V<::glam::DVec3> = { { let output: V<::glam::DVec3> = ::glam::DVec3::move_towards( - &_self, + _self.into_inner(), rhs.into_inner(), d, ) @@ -44347,6 +44172,23 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { " Returns a vector containing the nearest integer to a number for each element of `self`.\n Round half-way cases away from 0.0.", &["_self"], ) + .register_documented( + "saturate", + |_self: V<::glam::DVec3>| { + let output: V<::glam::DVec3> = { + { + let output: V<::glam::DVec3> = ::glam::DVec3::saturate( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing all elements of `self` clamped to the range of `[0, 1]`.", + &["_self"], + ) .register_documented( "select", | @@ -44387,6 +44229,23 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { " Returns a vector with elements representing the sign of `self`.\n - `1.0` if the number is positive, `+0.0` or `INFINITY`\n - `-1.0` if the number is negative, `-0.0` or `NEG_INFINITY`\n - `NAN` if the number is `NAN`", &["_self"], ) + .register_documented( + "sin", + |_self: V<::glam::DVec3>| { + let output: V<::glam::DVec3> = { + { + let output: V<::glam::DVec3> = ::glam::DVec3::sin( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the sine for each element of `self`.", + &["_self"], + ) .register_documented( "slerp", |_self: V<::glam::DVec3>, rhs: V<::glam::DVec3>, s: f64| { @@ -44420,6 +44279,41 @@ pub(crate) fn register_d_vec_3_functions(world: &mut World) { " Creates a vector with all elements set to `v`.", &["v"], ) + .register_documented( + "sqrt", + |_self: V<::glam::DVec3>| { + let output: V<::glam::DVec3> = { + { + let output: V<::glam::DVec3> = ::glam::DVec3::sqrt( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the square root for each element of `self`.\n This returns NaN when the element is negative.", + &["_self"], + ) + .register_documented( + "step", + |_self: V<::glam::DVec3>, rhs: V<::glam::DVec3>| { + let output: V<::glam::DVec3> = { + { + let output: V<::glam::DVec3> = ::glam::DVec3::step( + _self.into_inner(), + rhs.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing `0.0` if `rhs < self` and 1.0 otherwise.\n Similar to glsl's step(edge, x), which translates into edge.step(x)", + &["_self", "rhs"], + ) .register_documented( "sub", |_self: V<::glam::DVec3>, rhs: R<::glam::DVec3>| { @@ -44687,11 +44581,11 @@ pub(crate) fn register_d_vec_4_functions(world: &mut World) { ) .register_documented( "as_i16vec4", - |_self: R<::glam::DVec4>| { + |_self: V<::glam::DVec4>| { let output: V<::glam::I16Vec4> = { { let output: V<::glam::I16Vec4> = ::glam::DVec4::as_i16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -44704,11 +44598,11 @@ pub(crate) fn register_d_vec_4_functions(world: &mut World) { ) .register_documented( "as_i64vec4", - |_self: R<::glam::DVec4>| { + |_self: V<::glam::DVec4>| { let output: V<::glam::I64Vec4> = { { let output: V<::glam::I64Vec4> = ::glam::DVec4::as_i64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -44721,10 +44615,12 @@ pub(crate) fn register_d_vec_4_functions(world: &mut World) { ) .register_documented( "as_i8vec4", - |_self: R<::glam::DVec4>| { + |_self: V<::glam::DVec4>| { let output: V<::glam::I8Vec4> = { { - let output: V<::glam::I8Vec4> = ::glam::DVec4::as_i8vec4(&_self) + let output: V<::glam::I8Vec4> = ::glam::DVec4::as_i8vec4( + _self.into_inner(), + ) .into(); output } @@ -44736,10 +44632,12 @@ pub(crate) fn register_d_vec_4_functions(world: &mut World) { ) .register_documented( "as_ivec4", - |_self: R<::glam::DVec4>| { + |_self: V<::glam::DVec4>| { let output: V<::glam::IVec4> = { { - let output: V<::glam::IVec4> = ::glam::DVec4::as_ivec4(&_self) + let output: V<::glam::IVec4> = ::glam::DVec4::as_ivec4( + _self.into_inner(), + ) .into(); output } @@ -44751,11 +44649,11 @@ pub(crate) fn register_d_vec_4_functions(world: &mut World) { ) .register_documented( "as_u16vec4", - |_self: R<::glam::DVec4>| { + |_self: V<::glam::DVec4>| { let output: V<::glam::U16Vec4> = { { let output: V<::glam::U16Vec4> = ::glam::DVec4::as_u16vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -44768,11 +44666,11 @@ pub(crate) fn register_d_vec_4_functions(world: &mut World) { ) .register_documented( "as_u64vec4", - |_self: R<::glam::DVec4>| { + |_self: V<::glam::DVec4>| { let output: V<::glam::U64Vec4> = { { let output: V<::glam::U64Vec4> = ::glam::DVec4::as_u64vec4( - &_self, + _self.into_inner(), ) .into(); output @@ -44785,10 +44683,12 @@ pub(crate) fn register_d_vec_4_functions(world: &mut World) { ) .register_documented( "as_u8vec4", - |_self: R<::glam::DVec4>| { + |_self: V<::glam::DVec4>| { let output: V<::glam::U8Vec4> = { { - let output: V<::glam::U8Vec4> = ::glam::DVec4::as_u8vec4(&_self) + let output: V<::glam::U8Vec4> = ::glam::DVec4::as_u8vec4( + _self.into_inner(), + ) .into(); output } @@ -44800,10 +44700,12 @@ pub(crate) fn register_d_vec_4_functions(world: &mut World) { ) .register_documented( "as_uvec4", - |_self: R<::glam::DVec4>| { + |_self: V<::glam::DVec4>| { let output: V<::glam::UVec4> = { { - let output: V<::glam::UVec4> = ::glam::DVec4::as_uvec4(&_self) + let output: V<::glam::UVec4> = ::glam::DVec4::as_uvec4( + _self.into_inner(), + ) .into(); output } @@ -44815,10 +44717,12 @@ pub(crate) fn register_d_vec_4_functions(world: &mut World) { ) .register_documented( "as_vec4", - |_self: R<::glam::DVec4>| { + |_self: V<::glam::DVec4>| { let output: V<::glam::Vec4> = { { - let output: V<::glam::Vec4> = ::glam::DVec4::as_vec4(&_self) + let output: V<::glam::Vec4> = ::glam::DVec4::as_vec4( + _self.into_inner(), + ) .into(); output } @@ -45062,6 +44966,23 @@ pub(crate) fn register_d_vec_4_functions(world: &mut World) { " Returns a vector with signs of `rhs` and the magnitudes of `self`.", &["_self", "rhs"], ) + .register_documented( + "cos", + |_self: V<::glam::DVec4>| { + let output: V<::glam::DVec4> = { + { + let output: V<::glam::DVec4> = ::glam::DVec4::cos( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the cosine for each element of `self`.", + &["_self"], + ) .register_documented( "distance", |_self: V<::glam::DVec4>, rhs: V<::glam::DVec4>| { @@ -45670,11 +45591,11 @@ pub(crate) fn register_d_vec_4_functions(world: &mut World) { ) .register_documented( "move_towards", - |_self: R<::glam::DVec4>, rhs: V<::glam::DVec4>, d: f64| { + |_self: V<::glam::DVec4>, rhs: V<::glam::DVec4>, d: f64| { let output: V<::glam::DVec4> = { { let output: V<::glam::DVec4> = ::glam::DVec4::move_towards( - &_self, + _self.into_inner(), rhs.into_inner(), d, ) @@ -46088,6 +46009,23 @@ pub(crate) fn register_d_vec_4_functions(world: &mut World) { " Returns a vector containing the nearest integer to a number for each element of `self`.\n Round half-way cases away from 0.0.", &["_self"], ) + .register_documented( + "saturate", + |_self: V<::glam::DVec4>| { + let output: V<::glam::DVec4> = { + { + let output: V<::glam::DVec4> = ::glam::DVec4::saturate( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing all elements of `self` clamped to the range of `[0, 1]`.", + &["_self"], + ) .register_documented( "select", | @@ -46128,6 +46066,23 @@ pub(crate) fn register_d_vec_4_functions(world: &mut World) { " Returns a vector with elements representing the sign of `self`.\n - `1.0` if the number is positive, `+0.0` or `INFINITY`\n - `-1.0` if the number is negative, `-0.0` or `NEG_INFINITY`\n - `NAN` if the number is `NAN`", &["_self"], ) + .register_documented( + "sin", + |_self: V<::glam::DVec4>| { + let output: V<::glam::DVec4> = { + { + let output: V<::glam::DVec4> = ::glam::DVec4::sin( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the sine for each element of `self`.", + &["_self"], + ) .register_documented( "splat", |v: f64| { @@ -46142,6 +46097,41 @@ pub(crate) fn register_d_vec_4_functions(world: &mut World) { " Creates a vector with all elements set to `v`.", &["v"], ) + .register_documented( + "sqrt", + |_self: V<::glam::DVec4>| { + let output: V<::glam::DVec4> = { + { + let output: V<::glam::DVec4> = ::glam::DVec4::sqrt( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing the square root for each element of `self`.\n This returns NaN when the element is negative.", + &["_self"], + ) + .register_documented( + "step", + |_self: V<::glam::DVec4>, rhs: V<::glam::DVec4>| { + let output: V<::glam::DVec4> = { + { + let output: V<::glam::DVec4> = ::glam::DVec4::step( + _self.into_inner(), + rhs.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns a vector containing `0.0` if `rhs < self` and 1.0 otherwise.\n Similar to glsl's step(edge, x), which translates into edge.step(x)", + &["_self", "rhs"], + ) .register_documented( "sub", |_self: V<::glam::DVec4>, rhs: R<::glam::DVec4>| { @@ -46467,6 +46457,21 @@ pub(crate) fn register_mat_2_functions(world: &mut World) { " Returns the determinant of `self`.", &["_self"], ) + .register_documented( + "diagonal", + |_self: R<::glam::Mat2>| { + let output: V<::glam::Vec2> = { + { + let output: V<::glam::Vec2> = ::glam::Mat2::diagonal(&_self) + .into(); + output + } + }; + output + }, + " Returns the diagonal of `self`.", + &["_self"], + ) .register_documented( "div", |_self: V<::glam::Mat2>, rhs: f32| { @@ -46674,6 +46679,23 @@ pub(crate) fn register_mat_2_functions(world: &mut World) { " Returns the inverse of `self`.\n If the matrix is not invertible the returned matrix will be invalid.\n # Panics\n Will panic if the determinant of `self` is zero when `glam_assert` is enabled.", &["_self"], ) + .register_documented( + "inverse_or_zero", + |_self: R<::glam::Mat2>| { + let output: V<::glam::Mat2> = { + { + let output: V<::glam::Mat2> = ::glam::Mat2::inverse_or_zero( + &_self, + ) + .into(); + output + } + }; + output + }, + " Returns the inverse of `self` or `Mat2::ZERO` if the matrix is not invertible.", + &["_self"], + ) .register_documented( "is_finite", |_self: R<::glam::Mat2>| { @@ -46755,12 +46777,12 @@ pub(crate) fn register_mat_2_functions(world: &mut World) { ) .register_documented( "mul", - |_self: V<::glam::Mat2>, rhs: V<::glam::Vec2>| { - let output: V<::glam::Vec2> = { + |_self: V<::glam::Mat2>, rhs: f32| { + let output: V<::glam::Mat2> = { { - let output: V<::glam::Vec2> = <::glam::Mat2 as ::core::ops::Mul< - ::glam::Vec2, - >>::mul(_self.into_inner(), rhs.into_inner()) + let output: V<::glam::Mat2> = <::glam::Mat2 as ::core::ops::Mul< + f32, + >>::mul(_self.into_inner(), rhs) .into(); output } @@ -46771,21 +46793,22 @@ pub(crate) fn register_mat_2_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "mul", - |_self: V<::glam::Mat2>, rhs: f32| { + "mul_diagonal_scale", + |_self: R<::glam::Mat2>, scale: V<::glam::Vec2>| { let output: V<::glam::Mat2> = { { - let output: V<::glam::Mat2> = <::glam::Mat2 as ::core::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) + let output: V<::glam::Mat2> = ::glam::Mat2::mul_diagonal_scale( + &_self, + scale.into_inner(), + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Multiply `self` by a scaling vector `scale`.\n This is faster than creating a whole diagonal scaling matrix and then multiplying that.\n This operation is commutative.", + &["_self", "scale"], ) .register_documented( "mul_mat2", @@ -46823,6 +46846,24 @@ pub(crate) fn register_mat_2_functions(world: &mut World) { " Multiplies a 2x2 matrix by a scalar.", &["_self", "rhs"], ) + .register_documented( + "mul_transpose_vec2", + |_self: R<::glam::Mat2>, rhs: V<::glam::Vec2>| { + let output: V<::glam::Vec2> = { + { + let output: V<::glam::Vec2> = ::glam::Mat2::mul_transpose_vec2( + &_self, + rhs.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Transforms a 2D vector by the transpose of `self`.", + &["_self", "rhs"], + ) .register_documented( "mul_vec2", |_self: R<::glam::Mat2>, rhs: V<::glam::Vec2>| { @@ -46842,20 +46883,17 @@ pub(crate) fn register_mat_2_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "neg", - |_self: V<::glam::Mat2>| { + "recip", + |_self: R<::glam::Mat2>| { let output: V<::glam::Mat2> = { { - let output: V<::glam::Mat2> = <::glam::Mat2 as ::core::ops::Neg>::neg( - _self.into_inner(), - ) - .into(); + let output: V<::glam::Mat2> = ::glam::Mat2::recip(&_self).into(); output } }; output }, - "", + " Returns a matrix containing the reciprocal `1.0/n` of each element of `self`.", &["_self"], ) .register_documented( @@ -47126,6 +47164,21 @@ pub(crate) fn register_mat_3_functions(world: &mut World) { " Returns the determinant of `self`.", &["_self"], ) + .register_documented( + "diagonal", + |_self: R<::glam::Mat3>| { + let output: V<::glam::Vec3> = { + { + let output: V<::glam::Vec3> = ::glam::Mat3::diagonal(&_self) + .into(); + output + } + }; + output + }, + " Returns the diagonal of `self`.", + &["_self"], + ) .register_documented( "div", |_self: V<::glam::Mat3>, rhs: f32| { @@ -47456,6 +47509,23 @@ pub(crate) fn register_mat_3_functions(world: &mut World) { " Returns the inverse of `self`.\n If the matrix is not invertible the returned matrix will be invalid.\n # Panics\n Will panic if the determinant of `self` is zero when `glam_assert` is enabled.", &["_self"], ) + .register_documented( + "inverse_or_zero", + |_self: R<::glam::Mat3>| { + let output: V<::glam::Mat3> = { + { + let output: V<::glam::Mat3> = ::glam::Mat3::inverse_or_zero( + &_self, + ) + .into(); + output + } + }; + output + }, + " Returns the inverse of `self` or `Mat3::ZERO` if the matrix is not invertible.", + &["_self"], + ) .register_documented( "is_finite", |_self: R<::glam::Mat3>| { @@ -47662,11 +47732,11 @@ pub(crate) fn register_mat_3_functions(world: &mut World) { ) .register_documented( "mul", - |_self: V<::glam::Mat3>, rhs: V<::glam::Vec3>| { - let output: V<::glam::Vec3> = { + |_self: V<::glam::Mat3>, rhs: V<::glam::Vec3A>| { + let output: V<::glam::Vec3A> = { { - let output: V<::glam::Vec3> = <::glam::Mat3 as ::core::ops::Mul< - ::glam::Vec3, + let output: V<::glam::Vec3A> = <::glam::Mat3 as ::core::ops::Mul< + ::glam::Vec3A, >>::mul(_self.into_inner(), rhs.into_inner()) .into(); output @@ -47679,12 +47749,12 @@ pub(crate) fn register_mat_3_functions(world: &mut World) { ) .register_documented( "mul", - |_self: V<::glam::Mat3>, rhs: V<::glam::Vec3A>| { - let output: V<::glam::Vec3A> = { + |_self: V<::glam::Mat3>, rhs: f32| { + let output: V<::glam::Mat3> = { { - let output: V<::glam::Vec3A> = <::glam::Mat3 as ::core::ops::Mul< - ::glam::Vec3A, - >>::mul(_self.into_inner(), rhs.into_inner()) + let output: V<::glam::Mat3> = <::glam::Mat3 as ::core::ops::Mul< + f32, + >>::mul(_self.into_inner(), rhs) .into(); output } @@ -47695,21 +47765,22 @@ pub(crate) fn register_mat_3_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "mul", - |_self: V<::glam::Mat3>, rhs: f32| { + "mul_diagonal_scale", + |_self: R<::glam::Mat3>, scale: V<::glam::Vec3>| { let output: V<::glam::Mat3> = { { - let output: V<::glam::Mat3> = <::glam::Mat3 as ::core::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) + let output: V<::glam::Mat3> = ::glam::Mat3::mul_diagonal_scale( + &_self, + scale.into_inner(), + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Multiply `self` by a scaling vector `scale`.\n This is faster than creating a whole diagonal scaling matrix and then multiplying that.\n This operation is commutative.", + &["_self", "scale"], ) .register_documented( "mul_mat3", @@ -47747,6 +47818,24 @@ pub(crate) fn register_mat_3_functions(world: &mut World) { " Multiplies a 3x3 matrix by a scalar.", &["_self", "rhs"], ) + .register_documented( + "mul_transpose_vec3", + |_self: R<::glam::Mat3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { + { + let output: V<::glam::Vec3> = ::glam::Mat3::mul_transpose_vec3( + &_self, + rhs.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Transforms a 3D vector by the transpose of `self`.", + &["_self", "rhs"], + ) .register_documented( "mul_vec3", |_self: R<::glam::Mat3>, rhs: V<::glam::Vec3>| { @@ -47784,20 +47873,17 @@ pub(crate) fn register_mat_3_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "neg", - |_self: V<::glam::Mat3>| { + "recip", + |_self: R<::glam::Mat3>| { let output: V<::glam::Mat3> = { { - let output: V<::glam::Mat3> = <::glam::Mat3 as ::core::ops::Neg>::neg( - _self.into_inner(), - ) - .into(); + let output: V<::glam::Mat3> = ::glam::Mat3::recip(&_self).into(); output } }; output }, - "", + " Returns a matrix containing the reciprocal `1.0/n` of each element of `self`.", &["_self"], ) .register_documented( @@ -48122,6 +48208,21 @@ pub(crate) fn register_mat_3_a_functions(world: &mut World) { " Returns the determinant of `self`.", &["_self"], ) + .register_documented( + "diagonal", + |_self: R<::glam::Mat3A>| { + let output: V<::glam::Vec3A> = { + { + let output: V<::glam::Vec3A> = ::glam::Mat3A::diagonal(&_self) + .into(); + output + } + }; + output + }, + " Returns the diagonal of `self`.", + &["_self"], + ) .register_documented( "div", |_self: V<::glam::Mat3A>, rhs: f32| { @@ -48456,6 +48557,23 @@ pub(crate) fn register_mat_3_a_functions(world: &mut World) { " Returns the inverse of `self`.\n If the matrix is not invertible the returned matrix will be invalid.\n # Panics\n Will panic if the determinant of `self` is zero when `glam_assert` is enabled.", &["_self"], ) + .register_documented( + "inverse_or_zero", + |_self: R<::glam::Mat3A>| { + let output: V<::glam::Mat3A> = { + { + let output: V<::glam::Mat3A> = ::glam::Mat3A::inverse_or_zero( + &_self, + ) + .into(); + output + } + }; + output + }, + " Returns the inverse of `self` or `Mat3A::ZERO` if the matrix is not invertible.", + &["_self"], + ) .register_documented( "is_finite", |_self: R<::glam::Mat3A>| { @@ -48679,12 +48797,12 @@ pub(crate) fn register_mat_3_a_functions(world: &mut World) { ) .register_documented( "mul", - |_self: V<::glam::Mat3A>, rhs: V<::glam::Vec3A>| { - let output: V<::glam::Vec3A> = { + |_self: V<::glam::Mat3A>, rhs: f32| { + let output: V<::glam::Mat3A> = { { - let output: V<::glam::Vec3A> = <::glam::Mat3A as ::core::ops::Mul< - ::glam::Vec3A, - >>::mul(_self.into_inner(), rhs.into_inner()) + let output: V<::glam::Mat3A> = <::glam::Mat3A as ::core::ops::Mul< + f32, + >>::mul(_self.into_inner(), rhs) .into(); output } @@ -48695,21 +48813,22 @@ pub(crate) fn register_mat_3_a_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "mul", - |_self: V<::glam::Mat3A>, rhs: f32| { + "mul_diagonal_scale", + |_self: R<::glam::Mat3A>, scale: V<::glam::Vec3>| { let output: V<::glam::Mat3A> = { { - let output: V<::glam::Mat3A> = <::glam::Mat3A as ::core::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) + let output: V<::glam::Mat3A> = ::glam::Mat3A::mul_diagonal_scale( + &_self, + scale.into_inner(), + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Multiply `self` by a scaling vector `scale`.\n This is faster than creating a whole diagonal scaling matrix and then multiplying that.\n This operation is commutative.", + &["_self", "scale"], ) .register_documented( "mul_mat3", @@ -48747,6 +48866,42 @@ pub(crate) fn register_mat_3_a_functions(world: &mut World) { " Multiplies a 3x3 matrix by a scalar.", &["_self", "rhs"], ) + .register_documented( + "mul_transpose_vec3", + |_self: R<::glam::Mat3A>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { + { + let output: V<::glam::Vec3> = ::glam::Mat3A::mul_transpose_vec3( + &_self, + rhs.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Transforms a 3D vector by the transpose of `self`.", + &["_self", "rhs"], + ) + .register_documented( + "mul_transpose_vec3a", + |_self: R<::glam::Mat3A>, rhs: V<::glam::Vec3A>| { + let output: V<::glam::Vec3A> = { + { + let output: V<::glam::Vec3A> = ::glam::Mat3A::mul_transpose_vec3a( + &_self, + rhs.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Transforms a [`Vec3A`] by the transpose of `self`.", + &["_self", "rhs"], + ) .register_documented( "mul_vec3", |_self: R<::glam::Mat3A>, rhs: V<::glam::Vec3>| { @@ -48784,20 +48939,18 @@ pub(crate) fn register_mat_3_a_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "neg", - |_self: V<::glam::Mat3A>| { + "recip", + |_self: R<::glam::Mat3A>| { let output: V<::glam::Mat3A> = { { - let output: V<::glam::Mat3A> = <::glam::Mat3A as ::core::ops::Neg>::neg( - _self.into_inner(), - ) + let output: V<::glam::Mat3A> = ::glam::Mat3A::recip(&_self) .into(); output } }; output }, - "", + " Returns a matrix containing the reciprocal `1.0/n` of each element of `self`.", &["_self"], ) .register_documented( @@ -49122,6 +49275,21 @@ pub(crate) fn register_mat_4_functions(world: &mut World) { " Returns the determinant of `self`.", &["_self"], ) + .register_documented( + "diagonal", + |_self: R<::glam::Mat4>| { + let output: V<::glam::Vec4> = { + { + let output: V<::glam::Vec4> = ::glam::Mat4::diagonal(&_self) + .into(); + output + } + }; + output + }, + " Returns the diagonal of `self`.", + &["_self"], + ) .register_documented( "div", |_self: V<::glam::Mat4>, rhs: f32| { @@ -49530,6 +49698,23 @@ pub(crate) fn register_mat_4_functions(world: &mut World) { " Returns the inverse of `self`.\n If the matrix is not invertible the returned matrix will be invalid.\n # Panics\n Will panic if the determinant of `self` is zero when `glam_assert` is enabled.", &["_self"], ) + .register_documented( + "inverse_or_zero", + |_self: R<::glam::Mat4>| { + let output: V<::glam::Mat4> = { + { + let output: V<::glam::Mat4> = ::glam::Mat4::inverse_or_zero( + &_self, + ) + .into(); + output + } + }; + output + }, + " Returns the inverse of `self` or `Mat4::ZERO` if the matrix is not invertible.", + &["_self"], + ) .register_documented( "is_finite", |_self: R<::glam::Mat4>| { @@ -49634,6 +49819,23 @@ pub(crate) fn register_mat_4_functions(world: &mut World) { " Creates a right-handed view matrix using a camera position, a facing direction, and an up\n direction.\n For a view coordinate system with `+X=right`, `+Y=up` and `+Z=back`.\n # Panics\n Will panic if `dir` or `up` are not normalized when `glam_assert` is enabled.", &["eye", "dir", "up"], ) + .register_documented( + "mul", + |_self: V<::glam::Mat4>, rhs: R<::glam::Affine3>| { + let output: V<::glam::Mat4> = { + { + let output: V<::glam::Mat4> = <::glam::Mat4 as ::core::ops::Mul< + &::glam::Affine3, + >>::mul(_self.into_inner(), &rhs) + .into(); + output + } + }; + output + }, + "", + &["_self", "rhs"], + ) .register_documented( "mul", |_self: V<::glam::Mat4>, rhs: R<::glam::Affine3A>| { @@ -49687,11 +49889,11 @@ pub(crate) fn register_mat_4_functions(world: &mut World) { ) .register_documented( "mul", - |_self: V<::glam::Mat4>, rhs: V<::glam::Affine3A>| { + |_self: V<::glam::Mat4>, rhs: V<::glam::Affine3>| { let output: V<::glam::Mat4> = { { let output: V<::glam::Mat4> = <::glam::Mat4 as ::core::ops::Mul< - ::glam::Affine3A, + ::glam::Affine3, >>::mul(_self.into_inner(), rhs.into_inner()) .into(); output @@ -49704,11 +49906,11 @@ pub(crate) fn register_mat_4_functions(world: &mut World) { ) .register_documented( "mul", - |_self: V<::glam::Mat4>, rhs: V<::glam::Mat4>| { + |_self: V<::glam::Mat4>, rhs: V<::glam::Affine3A>| { let output: V<::glam::Mat4> = { { let output: V<::glam::Mat4> = <::glam::Mat4 as ::core::ops::Mul< - ::glam::Mat4, + ::glam::Affine3A, >>::mul(_self.into_inner(), rhs.into_inner()) .into(); output @@ -49721,11 +49923,11 @@ pub(crate) fn register_mat_4_functions(world: &mut World) { ) .register_documented( "mul", - |_self: V<::glam::Mat4>, rhs: V<::glam::Vec4>| { - let output: V<::glam::Vec4> = { + |_self: V<::glam::Mat4>, rhs: V<::glam::Mat4>| { + let output: V<::glam::Mat4> = { { - let output: V<::glam::Vec4> = <::glam::Mat4 as ::core::ops::Mul< - ::glam::Vec4, + let output: V<::glam::Mat4> = <::glam::Mat4 as ::core::ops::Mul< + ::glam::Mat4, >>::mul(_self.into_inner(), rhs.into_inner()) .into(); output @@ -49753,6 +49955,24 @@ pub(crate) fn register_mat_4_functions(world: &mut World) { "", &["_self", "rhs"], ) + .register_documented( + "mul_diagonal_scale", + |_self: R<::glam::Mat4>, scale: V<::glam::Vec4>| { + let output: V<::glam::Mat4> = { + { + let output: V<::glam::Mat4> = ::glam::Mat4::mul_diagonal_scale( + &_self, + scale.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Multiply `self` by a scaling vector `scale`.\n This is faster than creating a whole diagonal scaling matrix and then multiplying that.\n This operation is commutative.", + &["_self", "scale"], + ) .register_documented( "mul_mat4", |_self: R<::glam::Mat4>, rhs: R<::glam::Mat4>| { @@ -49790,11 +50010,11 @@ pub(crate) fn register_mat_4_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "mul_vec4", + "mul_transpose_vec4", |_self: R<::glam::Mat4>, rhs: V<::glam::Vec4>| { let output: V<::glam::Vec4> = { { - let output: V<::glam::Vec4> = ::glam::Mat4::mul_vec4( + let output: V<::glam::Vec4> = ::glam::Mat4::mul_transpose_vec4( &_self, rhs.into_inner(), ) @@ -49804,16 +50024,17 @@ pub(crate) fn register_mat_4_functions(world: &mut World) { }; output }, - " Transforms a 4D vector.", + " Transforms a 4D vector by the transpose of `self`.", &["_self", "rhs"], ) .register_documented( - "neg", - |_self: V<::glam::Mat4>| { - let output: V<::glam::Mat4> = { + "mul_vec4", + |_self: R<::glam::Mat4>, rhs: V<::glam::Vec4>| { + let output: V<::glam::Vec4> = { { - let output: V<::glam::Mat4> = <::glam::Mat4 as ::core::ops::Neg>::neg( - _self.into_inner(), + let output: V<::glam::Vec4> = ::glam::Mat4::mul_vec4( + &_self, + rhs.into_inner(), ) .into(); output @@ -49821,8 +50042,8 @@ pub(crate) fn register_mat_4_functions(world: &mut World) { }; output }, - "", - &["_self"], + " Transforms a 4D vector.", + &["_self", "rhs"], ) .register_documented( "orthographic_lh", @@ -50062,6 +50283,20 @@ pub(crate) fn register_mat_4_functions(world: &mut World) { " Transforms the given [`Vec3A`] as a 3D point, applying perspective correction.\n This is the equivalent of multiplying the [`Vec3A`] as a 4D vector where `w` is `1.0`.\n The perspective divide is performed meaning the resulting 3D vector is divided by `w`.\n This method assumes that `self` contains a projective transform.", &["_self", "rhs"], ) + .register_documented( + "recip", + |_self: R<::glam::Mat4>| { + let output: V<::glam::Mat4> = { + { + let output: V<::glam::Mat4> = ::glam::Mat4::recip(&_self).into(); + output + } + }; + output + }, + " Returns a matrix containing the reciprocal `1.0/n` of each element of `self`.", + &["_self"], + ) .register_documented( "row", |_self: R<::glam::Mat4>, index: usize| { @@ -50420,6 +50655,21 @@ pub(crate) fn register_d_mat_2_functions(world: &mut World) { " Returns the determinant of `self`.", &["_self"], ) + .register_documented( + "diagonal", + |_self: R<::glam::DMat2>| { + let output: V<::glam::DVec2> = { + { + let output: V<::glam::DVec2> = ::glam::DMat2::diagonal(&_self) + .into(); + output + } + }; + output + }, + " Returns the diagonal of `self`.", + &["_self"], + ) .register_documented( "div", |_self: V<::glam::DMat2>, rhs: f64| { @@ -50591,6 +50841,23 @@ pub(crate) fn register_d_mat_2_functions(world: &mut World) { " Returns the inverse of `self`.\n If the matrix is not invertible the returned matrix will be invalid.\n # Panics\n Will panic if the determinant of `self` is zero when `glam_assert` is enabled.", &["_self"], ) + .register_documented( + "inverse_or_zero", + |_self: R<::glam::DMat2>| { + let output: V<::glam::DMat2> = { + { + let output: V<::glam::DMat2> = ::glam::DMat2::inverse_or_zero( + &_self, + ) + .into(); + output + } + }; + output + }, + " Returns the inverse of `self` or `DMat2::ZERO` if the matrix is not invertible.", + &["_self"], + ) .register_documented( "is_finite", |_self: R<::glam::DMat2>| { @@ -50672,12 +50939,12 @@ pub(crate) fn register_d_mat_2_functions(world: &mut World) { ) .register_documented( "mul", - |_self: V<::glam::DMat2>, rhs: V<::glam::DVec2>| { - let output: V<::glam::DVec2> = { + |_self: V<::glam::DMat2>, rhs: f64| { + let output: V<::glam::DMat2> = { { - let output: V<::glam::DVec2> = <::glam::DMat2 as ::core::ops::Mul< - ::glam::DVec2, - >>::mul(_self.into_inner(), rhs.into_inner()) + let output: V<::glam::DMat2> = <::glam::DMat2 as ::core::ops::Mul< + f64, + >>::mul(_self.into_inner(), rhs) .into(); output } @@ -50688,21 +50955,22 @@ pub(crate) fn register_d_mat_2_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "mul", - |_self: V<::glam::DMat2>, rhs: f64| { + "mul_diagonal_scale", + |_self: R<::glam::DMat2>, scale: V<::glam::DVec2>| { let output: V<::glam::DMat2> = { { - let output: V<::glam::DMat2> = <::glam::DMat2 as ::core::ops::Mul< - f64, - >>::mul(_self.into_inner(), rhs) + let output: V<::glam::DMat2> = ::glam::DMat2::mul_diagonal_scale( + &_self, + scale.into_inner(), + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Multiply `self` by a scaling vector `scale`.\n This is faster than creating a whole diagonal scaling matrix and then multiplying that.\n This operation is commutative.", + &["_self", "scale"], ) .register_documented( "mul_mat2", @@ -50740,6 +51008,24 @@ pub(crate) fn register_d_mat_2_functions(world: &mut World) { " Multiplies a 2x2 matrix by a scalar.", &["_self", "rhs"], ) + .register_documented( + "mul_transpose_vec2", + |_self: R<::glam::DMat2>, rhs: V<::glam::DVec2>| { + let output: V<::glam::DVec2> = { + { + let output: V<::glam::DVec2> = ::glam::DMat2::mul_transpose_vec2( + &_self, + rhs.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Transforms a 2D vector by the transpose of `self`.", + &["_self", "rhs"], + ) .register_documented( "mul_vec2", |_self: R<::glam::DMat2>, rhs: V<::glam::DVec2>| { @@ -50759,20 +51045,18 @@ pub(crate) fn register_d_mat_2_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "neg", - |_self: V<::glam::DMat2>| { + "recip", + |_self: R<::glam::DMat2>| { let output: V<::glam::DMat2> = { { - let output: V<::glam::DMat2> = <::glam::DMat2 as ::core::ops::Neg>::neg( - _self.into_inner(), - ) + let output: V<::glam::DMat2> = ::glam::DMat2::recip(&_self) .into(); output } }; output }, - "", + " Returns a matrix containing the reciprocal `1.0/n` of each element of `self`.", &["_self"], ) .register_documented( @@ -51043,6 +51327,21 @@ pub(crate) fn register_d_mat_3_functions(world: &mut World) { " Returns the determinant of `self`.", &["_self"], ) + .register_documented( + "diagonal", + |_self: R<::glam::DMat3>| { + let output: V<::glam::DVec3> = { + { + let output: V<::glam::DVec3> = ::glam::DMat3::diagonal(&_self) + .into(); + output + } + }; + output + }, + " Returns the diagonal of `self`.", + &["_self"], + ) .register_documented( "div", |_self: V<::glam::DMat3>, rhs: f64| { @@ -51377,6 +51676,23 @@ pub(crate) fn register_d_mat_3_functions(world: &mut World) { " Returns the inverse of `self`.\n If the matrix is not invertible the returned matrix will be invalid.\n # Panics\n Will panic if the determinant of `self` is zero when `glam_assert` is enabled.", &["_self"], ) + .register_documented( + "inverse_or_zero", + |_self: R<::glam::DMat3>| { + let output: V<::glam::DMat3> = { + { + let output: V<::glam::DMat3> = ::glam::DMat3::inverse_or_zero( + &_self, + ) + .into(); + output + } + }; + output + }, + " Returns the inverse of `self` or `DMat3::ZERO` if the matrix is not invertible.", + &["_self"], + ) .register_documented( "is_finite", |_self: R<::glam::DMat3>| { @@ -51566,12 +51882,12 @@ pub(crate) fn register_d_mat_3_functions(world: &mut World) { ) .register_documented( "mul", - |_self: V<::glam::DMat3>, rhs: V<::glam::DVec3>| { - let output: V<::glam::DVec3> = { + |_self: V<::glam::DMat3>, rhs: f64| { + let output: V<::glam::DMat3> = { { - let output: V<::glam::DVec3> = <::glam::DMat3 as ::core::ops::Mul< - ::glam::DVec3, - >>::mul(_self.into_inner(), rhs.into_inner()) + let output: V<::glam::DMat3> = <::glam::DMat3 as ::core::ops::Mul< + f64, + >>::mul(_self.into_inner(), rhs) .into(); output } @@ -51582,21 +51898,22 @@ pub(crate) fn register_d_mat_3_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "mul", - |_self: V<::glam::DMat3>, rhs: f64| { + "mul_diagonal_scale", + |_self: R<::glam::DMat3>, scale: V<::glam::DVec3>| { let output: V<::glam::DMat3> = { { - let output: V<::glam::DMat3> = <::glam::DMat3 as ::core::ops::Mul< - f64, - >>::mul(_self.into_inner(), rhs) + let output: V<::glam::DMat3> = ::glam::DMat3::mul_diagonal_scale( + &_self, + scale.into_inner(), + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Multiply `self` by a scaling vector `scale`.\n This is faster than creating a whole diagonal scaling matrix and then multiplying that.\n This operation is commutative.", + &["_self", "scale"], ) .register_documented( "mul_mat3", @@ -51634,6 +51951,24 @@ pub(crate) fn register_d_mat_3_functions(world: &mut World) { " Multiplies a 3x3 matrix by a scalar.", &["_self", "rhs"], ) + .register_documented( + "mul_transpose_vec3", + |_self: R<::glam::DMat3>, rhs: V<::glam::DVec3>| { + let output: V<::glam::DVec3> = { + { + let output: V<::glam::DVec3> = ::glam::DMat3::mul_transpose_vec3( + &_self, + rhs.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Transforms a 3D vector by the transpose of `self`.", + &["_self", "rhs"], + ) .register_documented( "mul_vec3", |_self: R<::glam::DMat3>, rhs: V<::glam::DVec3>| { @@ -51653,20 +51988,18 @@ pub(crate) fn register_d_mat_3_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "neg", - |_self: V<::glam::DMat3>| { + "recip", + |_self: R<::glam::DMat3>| { let output: V<::glam::DMat3> = { { - let output: V<::glam::DMat3> = <::glam::DMat3 as ::core::ops::Neg>::neg( - _self.into_inner(), - ) + let output: V<::glam::DMat3> = ::glam::DMat3::recip(&_self) .into(); output } }; output }, - "", + " Returns a matrix containing the reciprocal `1.0/n` of each element of `self`.", &["_self"], ) .register_documented( @@ -51991,6 +52324,21 @@ pub(crate) fn register_d_mat_4_functions(world: &mut World) { " Returns the determinant of `self`.", &["_self"], ) + .register_documented( + "diagonal", + |_self: R<::glam::DMat4>| { + let output: V<::glam::DVec4> = { + { + let output: V<::glam::DVec4> = ::glam::DMat4::diagonal(&_self) + .into(); + output + } + }; + output + }, + " Returns the diagonal of `self`.", + &["_self"], + ) .register_documented( "div", |_self: V<::glam::DMat4>, rhs: f64| { @@ -52382,6 +52730,23 @@ pub(crate) fn register_d_mat_4_functions(world: &mut World) { " Returns the inverse of `self`.\n If the matrix is not invertible the returned matrix will be invalid.\n # Panics\n Will panic if the determinant of `self` is zero when `glam_assert` is enabled.", &["_self"], ) + .register_documented( + "inverse_or_zero", + |_self: R<::glam::DMat4>| { + let output: V<::glam::DMat4> = { + { + let output: V<::glam::DMat4> = ::glam::DMat4::inverse_or_zero( + &_self, + ) + .into(); + output + } + }; + output + }, + " Returns the inverse of `self` or `DMat4::ZERO` if the matrix is not invertible.", + &["_self"], + ) .register_documented( "is_finite", |_self: R<::glam::DMat4>| { @@ -52573,12 +52938,12 @@ pub(crate) fn register_d_mat_4_functions(world: &mut World) { ) .register_documented( "mul", - |_self: V<::glam::DMat4>, rhs: V<::glam::DVec4>| { - let output: V<::glam::DVec4> = { + |_self: V<::glam::DMat4>, rhs: f64| { + let output: V<::glam::DMat4> = { { - let output: V<::glam::DVec4> = <::glam::DMat4 as ::core::ops::Mul< - ::glam::DVec4, - >>::mul(_self.into_inner(), rhs.into_inner()) + let output: V<::glam::DMat4> = <::glam::DMat4 as ::core::ops::Mul< + f64, + >>::mul(_self.into_inner(), rhs) .into(); output } @@ -52589,21 +52954,22 @@ pub(crate) fn register_d_mat_4_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "mul", - |_self: V<::glam::DMat4>, rhs: f64| { + "mul_diagonal_scale", + |_self: R<::glam::DMat4>, scale: V<::glam::DVec4>| { let output: V<::glam::DMat4> = { { - let output: V<::glam::DMat4> = <::glam::DMat4 as ::core::ops::Mul< - f64, - >>::mul(_self.into_inner(), rhs) + let output: V<::glam::DMat4> = ::glam::DMat4::mul_diagonal_scale( + &_self, + scale.into_inner(), + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Multiply `self` by a scaling vector `scale`.\n This is faster than creating a whole diagonal scaling matrix and then multiplying that.\n This operation is commutative.", + &["_self", "scale"], ) .register_documented( "mul_mat4", @@ -52642,11 +53008,11 @@ pub(crate) fn register_d_mat_4_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "mul_vec4", + "mul_transpose_vec4", |_self: R<::glam::DMat4>, rhs: V<::glam::DVec4>| { let output: V<::glam::DVec4> = { { - let output: V<::glam::DVec4> = ::glam::DMat4::mul_vec4( + let output: V<::glam::DVec4> = ::glam::DMat4::mul_transpose_vec4( &_self, rhs.into_inner(), ) @@ -52656,16 +53022,17 @@ pub(crate) fn register_d_mat_4_functions(world: &mut World) { }; output }, - " Transforms a 4D vector.", + " Transforms a 4D vector by the transpose of `self`.", &["_self", "rhs"], ) .register_documented( - "neg", - |_self: V<::glam::DMat4>| { - let output: V<::glam::DMat4> = { + "mul_vec4", + |_self: R<::glam::DMat4>, rhs: V<::glam::DVec4>| { + let output: V<::glam::DVec4> = { { - let output: V<::glam::DMat4> = <::glam::DMat4 as ::core::ops::Neg>::neg( - _self.into_inner(), + let output: V<::glam::DVec4> = ::glam::DMat4::mul_vec4( + &_self, + rhs.into_inner(), ) .into(); output @@ -52673,8 +53040,8 @@ pub(crate) fn register_d_mat_4_functions(world: &mut World) { }; output }, - "", - &["_self"], + " Transforms a 4D vector.", + &["_self", "rhs"], ) .register_documented( "orthographic_lh", @@ -52896,6 +53263,21 @@ pub(crate) fn register_d_mat_4_functions(world: &mut World) { " Transforms the given 3D vector as a point, applying perspective correction.\n This is the equivalent of multiplying the 3D vector as a 4D vector where `w` is `1.0`.\n The perspective divide is performed meaning the resulting 3D vector is divided by `w`.\n This method assumes that `self` contains a projective transform.", &["_self", "rhs"], ) + .register_documented( + "recip", + |_self: R<::glam::DMat4>| { + let output: V<::glam::DMat4> = { + { + let output: V<::glam::DMat4> = ::glam::DMat4::recip(&_self) + .into(); + output + } + }; + output + }, + " Returns a matrix containing the reciprocal `1.0/n` of each element of `self`.", + &["_self"], + ) .register_documented( "row", |_self: R<::glam::DMat4>, index: usize| { @@ -53036,7 +53418,437 @@ pub(crate) fn register_d_mat_4_functions(world: &mut World) { |_self: R<::glam::DMat4>, rhs: V<::glam::DVec3>| { let output: V<::glam::DVec3> = { { - let output: V<::glam::DVec3> = ::glam::DMat4::transform_vector3( + let output: V<::glam::DVec3> = ::glam::DMat4::transform_vector3( + &_self, + rhs.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Transforms the give 3D vector as a direction.\n This is the equivalent of multiplying the 3D vector as a 4D vector where `w` is\n `0.0`.\n This method assumes that `self` contains a valid affine transform.\n # Panics\n Will panic if the 3rd row of `self` is not `(0, 0, 0, 1)` when `glam_assert` is enabled.", + &["_self", "rhs"], + ) + .register_documented( + "transpose", + |_self: R<::glam::DMat4>| { + let output: V<::glam::DMat4> = { + { + let output: V<::glam::DMat4> = ::glam::DMat4::transpose(&_self) + .into(); + output + } + }; + output + }, + " Returns the transpose of `self`.", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry.register_type_data::<::glam::DMat4, bevy_mod_scripting_bindings::MarkAsGenerated>(); +} +pub(crate) fn register_affine_2_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::glam::Affine2, + >::new(world) + .register_documented( + "abs_diff_eq", + |_self: R<::glam::Affine2>, rhs: V<::glam::Affine2>, max_abs_diff: f32| { + let output: bool = { + { + let output: bool = ::glam::Affine2::abs_diff_eq( + &_self, + rhs.into_inner(), + max_abs_diff, + ) + .into(); + output + } + }; + output + }, + " Returns true if the absolute difference of all elements between `self` and `rhs`\n is less than or equal to `max_abs_diff`.\n This can be used to compare if two 3x4 matrices contain similar elements. It works\n best when comparing with a known value. The `max_abs_diff` that should be used used\n depends on the values being compared against.\n For more see\n [comparing floating point numbers](https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/).", + &["_self", "rhs", "max_abs_diff"], + ) + .register_documented( + "as_daffine2", + |_self: R<::glam::Affine2>| { + let output: V<::glam::DAffine2> = { + { + let output: V<::glam::DAffine2> = ::glam::Affine2::as_daffine2( + &_self, + ) + .into(); + output + } + }; + output + }, + " Casts all elements of `self` to `f64`.", + &["_self"], + ) + .register_documented( + "clone", + |_self: R<::glam::Affine2>| { + let output: V<::glam::Affine2> = { + { + let output: V<::glam::Affine2> = <::glam::Affine2 as ::core::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::glam::Affine2>, rhs: R<::glam::Affine2>| { + let output: bool = { + { + let output: bool = <::glam::Affine2 as ::core::cmp::PartialEq< + ::glam::Affine2, + >>::eq(&_self, &rhs) + .into(); + output + } + }; + output + }, + "", + &["_self", "rhs"], + ) + .register_documented( + "from_angle", + |angle: f32| { + let output: V<::glam::Affine2> = { + { + let output: V<::glam::Affine2> = ::glam::Affine2::from_angle( + angle, + ) + .into(); + output + } + }; + output + }, + " Creates an affine transform from the given rotation `angle`.", + &["angle"], + ) + .register_documented( + "from_angle_translation", + |angle: f32, translation: V<::glam::Vec2>| { + let output: V<::glam::Affine2> = { + { + let output: V<::glam::Affine2> = ::glam::Affine2::from_angle_translation( + angle, + translation.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Creates an affine transform from the given 2D rotation `angle` (in radians) and\n `translation`.\n Equivalent to `Affine2::from_translation(translation) * Affine2::from_angle(angle)`", + &["angle", "translation"], + ) + .register_documented( + "from_cols", + |x_axis: V<::glam::Vec2>, y_axis: V<::glam::Vec2>, z_axis: V<::glam::Vec2>| { + let output: V<::glam::Affine2> = { + { + let output: V<::glam::Affine2> = ::glam::Affine2::from_cols( + x_axis.into_inner(), + y_axis.into_inner(), + z_axis.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Creates an affine transform from three column vectors.", + &["x_axis", "y_axis", "z_axis"], + ) + .register_documented( + "from_mat2", + |matrix2: V<::glam::Mat2>| { + let output: V<::glam::Affine2> = { + { + let output: V<::glam::Affine2> = ::glam::Affine2::from_mat2( + matrix2.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Creates an affine transform from a 2x2 matrix (expressing scale, shear and rotation)", + &["matrix2"], + ) + .register_documented( + "from_mat2_translation", + |matrix2: V<::glam::Mat2>, translation: V<::glam::Vec2>| { + let output: V<::glam::Affine2> = { + { + let output: V<::glam::Affine2> = ::glam::Affine2::from_mat2_translation( + matrix2.into_inner(), + translation.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Creates an affine transform from a 2x2 matrix (expressing scale, shear and rotation) and a\n translation vector.\n Equivalent to\n `Affine2::from_translation(translation) * Affine2::from_mat2(mat2)`", + &["matrix2", "translation"], + ) + .register_documented( + "from_mat3", + |m: V<::glam::Mat3>| { + let output: V<::glam::Affine2> = { + { + let output: V<::glam::Affine2> = ::glam::Affine2::from_mat3( + m.into_inner(), + ) + .into(); + output + } + }; + output + }, + " The given `Mat3` must be an affine transform,", + &["m"], + ) + .register_documented( + "from_mat3a", + |m: V<::glam::Mat3A>| { + let output: V<::glam::Affine2> = { + { + let output: V<::glam::Affine2> = ::glam::Affine2::from_mat3a( + m.into_inner(), + ) + .into(); + output + } + }; + output + }, + " The given [`Mat3A`] must be an affine transform,", + &["m"], + ) + .register_documented( + "from_scale", + |scale: V<::glam::Vec2>| { + let output: V<::glam::Affine2> = { + { + let output: V<::glam::Affine2> = ::glam::Affine2::from_scale( + scale.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Creates an affine transform that changes scale.\n Note that if any scale is zero the transform will be non-invertible.", + &["scale"], + ) + .register_documented( + "from_scale_angle_translation", + |scale: V<::glam::Vec2>, angle: f32, translation: V<::glam::Vec2>| { + let output: V<::glam::Affine2> = { + { + let output: V<::glam::Affine2> = ::glam::Affine2::from_scale_angle_translation( + scale.into_inner(), + angle, + translation.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Creates an affine transform from the given 2D `scale`, rotation `angle` (in radians) and\n `translation`.\n Equivalent to `Affine2::from_translation(translation) *\n Affine2::from_angle(angle) * Affine2::from_scale(scale)`", + &["scale", "angle", "translation"], + ) + .register_documented( + "from_translation", + |translation: V<::glam::Vec2>| { + let output: V<::glam::Affine2> = { + { + let output: V<::glam::Affine2> = ::glam::Affine2::from_translation( + translation.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Creates an affine transformation from the given 2D `translation`.", + &["translation"], + ) + .register_documented( + "inverse", + |_self: R<::glam::Affine2>| { + let output: V<::glam::Affine2> = { + { + let output: V<::glam::Affine2> = ::glam::Affine2::inverse(&_self) + .into(); + output + } + }; + output + }, + " Return the inverse of this transform.\n Note that if the transform is not invertible the result will be invalid.", + &["_self"], + ) + .register_documented( + "is_finite", + |_self: R<::glam::Affine2>| { + let output: bool = { + { + let output: bool = ::glam::Affine2::is_finite(&_self).into(); + output + } + }; + output + }, + " Returns `true` if, and only if, all elements are finite.\n If any element is either `NaN`, positive or negative infinity, this will return\n `false`.", + &["_self"], + ) + .register_documented( + "is_nan", + |_self: R<::glam::Affine2>| { + let output: bool = { + { + let output: bool = ::glam::Affine2::is_nan(&_self).into(); + output + } + }; + output + }, + " Returns `true` if any elements are `NaN`.", + &["_self"], + ) + .register_documented( + "mul", + |_self: V<::glam::Affine2>, rhs: R<::glam::Affine2>| { + let output: V<::glam::Affine2> = { + { + let output: V<::glam::Affine2> = <::glam::Affine2 as ::core::ops::Mul< + &::glam::Affine2, + >>::mul(_self.into_inner(), &rhs) + .into(); + output + } + }; + output + }, + "", + &["_self", "rhs"], + ) + .register_documented( + "mul", + |_self: V<::glam::Affine2>, rhs: R<::glam::Mat3>| { + let output: V<::glam::Mat3> = { + { + let output: V<::glam::Mat3> = <::glam::Affine2 as ::core::ops::Mul< + &::glam::Mat3, + >>::mul(_self.into_inner(), &rhs) + .into(); + output + } + }; + output + }, + "", + &["_self", "rhs"], + ) + .register_documented( + "mul", + |_self: V<::glam::Affine2>, rhs: R<::glam::Mat3A>| { + let output: V<::glam::Mat3A> = { + { + let output: V<::glam::Mat3A> = <::glam::Affine2 as ::core::ops::Mul< + &::glam::Mat3A, + >>::mul(_self.into_inner(), &rhs) + .into(); + output + } + }; + output + }, + "", + &["_self", "rhs"], + ) + .register_documented( + "mul", + |_self: V<::glam::Affine2>, rhs: V<::glam::Affine2>| { + let output: V<::glam::Affine2> = { + { + let output: V<::glam::Affine2> = <::glam::Affine2 as ::core::ops::Mul< + ::glam::Affine2, + >>::mul(_self.into_inner(), rhs.into_inner()) + .into(); + output + } + }; + output + }, + "", + &["_self", "rhs"], + ) + .register_documented( + "to_cols_array", + |_self: R<::glam::Affine2>| { + let output: [f32; 6] = { + { + let output: [f32; 6] = ::glam::Affine2::to_cols_array(&_self) + .into(); + output + } + }; + output + }, + " Creates a `[f32; 6]` array storing data in column major order.", + &["_self"], + ) + .register_documented( + "to_cols_array_2d", + |_self: R<::glam::Affine2>| { + let output: [[f32; 2]; 3] = { + { + let output: [[f32; 2]; 3] = ::glam::Affine2::to_cols_array_2d( + &_self, + ) + .into(); + output + } + }; + output + }, + " Creates a `[[f32; 2]; 3]` 2D array storing data in\n column major order.\n If you require data in row major order `transpose` the matrix first.", + &["_self"], + ) + .register_documented( + "transform_point2", + |_self: R<::glam::Affine2>, rhs: V<::glam::Vec2>| { + let output: V<::glam::Vec2> = { + { + let output: V<::glam::Vec2> = ::glam::Affine2::transform_point2( &_self, rhs.into_inner(), ) @@ -53046,38 +53858,41 @@ pub(crate) fn register_d_mat_4_functions(world: &mut World) { }; output }, - " Transforms the give 3D vector as a direction.\n This is the equivalent of multiplying the 3D vector as a 4D vector where `w` is\n `0.0`.\n This method assumes that `self` contains a valid affine transform.\n # Panics\n Will panic if the 3rd row of `self` is not `(0, 0, 0, 1)` when `glam_assert` is enabled.", + " Transforms the given 2D point, applying shear, scale, rotation and translation.", &["_self", "rhs"], ) .register_documented( - "transpose", - |_self: R<::glam::DMat4>| { - let output: V<::glam::DMat4> = { + "transform_vector2", + |_self: R<::glam::Affine2>, rhs: V<::glam::Vec2>| { + let output: V<::glam::Vec2> = { { - let output: V<::glam::DMat4> = ::glam::DMat4::transpose(&_self) + let output: V<::glam::Vec2> = ::glam::Affine2::transform_vector2( + &_self, + rhs.into_inner(), + ) .into(); output } }; output }, - " Returns the transpose of `self`.", - &["_self"], + " Transforms the given 2D vector, applying shear, scale and rotation (but NOT\n translation).\n To also apply translation, use [`Self::transform_point2()`] instead.", + &["_self", "rhs"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); - registry.register_type_data::<::glam::DMat4, bevy_mod_scripting_bindings::MarkAsGenerated>(); + registry.register_type_data::<::glam::Affine2, bevy_mod_scripting_bindings::MarkAsGenerated>(); } -pub(crate) fn register_affine_2_functions(world: &mut World) { +pub(crate) fn register_affine_3_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::glam::Affine2, + ::glam::Affine3, >::new(world) .register_documented( "abs_diff_eq", - |_self: R<::glam::Affine2>, rhs: V<::glam::Affine2>, max_abs_diff: f32| { + |_self: R<::glam::Affine3>, rhs: V<::glam::Affine3>, max_abs_diff: f32| { let output: bool = { { - let output: bool = ::glam::Affine2::abs_diff_eq( + let output: bool = ::glam::Affine3::abs_diff_eq( &_self, rhs.into_inner(), max_abs_diff, @@ -53092,11 +53907,11 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { &["_self", "rhs", "max_abs_diff"], ) .register_documented( - "as_daffine2", - |_self: R<::glam::Affine2>| { - let output: V<::glam::DAffine2> = { + "as_daffine3", + |_self: R<::glam::Affine3>| { + let output: V<::glam::DAffine3> = { { - let output: V<::glam::DAffine2> = ::glam::Affine2::as_daffine2( + let output: V<::glam::DAffine3> = ::glam::Affine3::as_daffine3( &_self, ) .into(); @@ -53110,10 +53925,10 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { ) .register_documented( "clone", - |_self: R<::glam::Affine2>| { - let output: V<::glam::Affine2> = { + |_self: R<::glam::Affine3>| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Affine2> = <::glam::Affine2 as ::core::clone::Clone>::clone( + let output: V<::glam::Affine3> = <::glam::Affine3 as ::core::clone::Clone>::clone( &_self, ) .into(); @@ -53127,11 +53942,11 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { ) .register_documented( "eq", - |_self: R<::glam::Affine2>, rhs: R<::glam::Affine2>| { + |_self: R<::glam::Affine3>, rhs: R<::glam::Affine3>| { let output: bool = { { - let output: bool = <::glam::Affine2 as ::core::cmp::PartialEq< - ::glam::Affine2, + let output: bool = <::glam::Affine3 as ::core::cmp::PartialEq< + ::glam::Affine3, >>::eq(&_self, &rhs) .into(); output @@ -53143,11 +53958,12 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { &["_self", "rhs"], ) .register_documented( - "from_angle", - |angle: f32| { - let output: V<::glam::Affine2> = { + "from_axis_angle", + |axis: V<::glam::Vec3>, angle: f32| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Affine2> = ::glam::Affine2::from_angle( + let output: V<::glam::Affine3> = ::glam::Affine3::from_axis_angle( + axis.into_inner(), angle, ) .into(); @@ -53156,16 +53972,58 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { }; output }, - " Creates an affine transform from the given rotation `angle`.", - &["angle"], + " Creates an affine transform containing a 3D rotation around a normalized\n rotation `axis` of `angle` (in radians).", + &["axis", "angle"], ) .register_documented( - "from_angle_translation", - |angle: f32, translation: V<::glam::Vec2>| { - let output: V<::glam::Affine2> = { + "from_cols", + | + x_axis: V<::glam::Vec3>, + y_axis: V<::glam::Vec3>, + z_axis: V<::glam::Vec3>, + w_axis: V<::glam::Vec3>| + { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Affine2> = ::glam::Affine2::from_angle_translation( - angle, + let output: V<::glam::Affine3> = ::glam::Affine3::from_cols( + x_axis.into_inner(), + y_axis.into_inner(), + z_axis.into_inner(), + w_axis.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Creates an affine transform from three column vectors.", + &["x_axis", "y_axis", "z_axis", "w_axis"], + ) + .register_documented( + "from_mat3", + |mat3: V<::glam::Mat3>| { + let output: V<::glam::Affine3> = { + { + let output: V<::glam::Affine3> = ::glam::Affine3::from_mat3( + mat3.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Creates an affine transform from a 3x3 matrix (expressing scale, shear and\n rotation)", + &["mat3"], + ) + .register_documented( + "from_mat3_translation", + |mat3: V<::glam::Mat3>, translation: V<::glam::Vec3>| { + let output: V<::glam::Affine3> = { + { + let output: V<::glam::Affine3> = ::glam::Affine3::from_mat3_translation( + mat3.into_inner(), translation.into_inner(), ) .into(); @@ -53174,18 +54032,16 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { }; output }, - " Creates an affine transform from the given 2D rotation `angle` (in radians) and\n `translation`.\n Equivalent to `Affine2::from_translation(translation) * Affine2::from_angle(angle)`", - &["angle", "translation"], + " Creates an affine transform from a 3x3 matrix (expressing scale, shear and rotation)\n and a translation vector.\n Equivalent to `Affine3::from_translation(translation) * Affine3::from_mat3(mat3)`", + &["mat3", "translation"], ) .register_documented( - "from_cols", - |x_axis: V<::glam::Vec2>, y_axis: V<::glam::Vec2>, z_axis: V<::glam::Vec2>| { - let output: V<::glam::Affine2> = { + "from_mat4", + |m: V<::glam::Mat4>| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Affine2> = ::glam::Affine2::from_cols( - x_axis.into_inner(), - y_axis.into_inner(), - z_axis.into_inner(), + let output: V<::glam::Affine3> = ::glam::Affine3::from_mat4( + m.into_inner(), ) .into(); output @@ -53193,16 +54049,16 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { }; output }, - " Creates an affine transform from three column vectors.", - &["x_axis", "y_axis", "z_axis"], + " The given `Mat4` must be an affine transform,\n i.e. contain no perspective transform.", + &["m"], ) .register_documented( - "from_mat2", - |matrix2: V<::glam::Mat2>| { - let output: V<::glam::Affine2> = { + "from_quat", + |rotation: V<::glam::Quat>| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Affine2> = ::glam::Affine2::from_mat2( - matrix2.into_inner(), + let output: V<::glam::Affine3> = ::glam::Affine3::from_quat( + rotation.into_inner(), ) .into(); output @@ -53210,16 +54066,16 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { }; output }, - " Creates an affine transform from a 2x2 matrix (expressing scale, shear and rotation)", - &["matrix2"], + " Creates an affine transform from the given `rotation` quaternion.", + &["rotation"], ) .register_documented( - "from_mat2_translation", - |matrix2: V<::glam::Mat2>, translation: V<::glam::Vec2>| { - let output: V<::glam::Affine2> = { + "from_rotation_translation", + |rotation: V<::glam::Quat>, translation: V<::glam::Vec3>| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Affine2> = ::glam::Affine2::from_mat2_translation( - matrix2.into_inner(), + let output: V<::glam::Affine3> = ::glam::Affine3::from_rotation_translation( + rotation.into_inner(), translation.into_inner(), ) .into(); @@ -53228,16 +54084,16 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { }; output }, - " Creates an affine transform from a 2x2 matrix (expressing scale, shear and rotation) and a\n translation vector.\n Equivalent to\n `Affine2::from_translation(translation) * Affine2::from_mat2(mat2)`", - &["matrix2", "translation"], + " Creates an affine transform from the given 3D `rotation` and `translation`.\n Equivalent to `Affine3::from_translation(translation) * Affine3::from_quat(rotation)`", + &["rotation", "translation"], ) .register_documented( - "from_mat3", - |m: V<::glam::Mat3>| { - let output: V<::glam::Affine2> = { + "from_rotation_x", + |angle: f32| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Affine2> = ::glam::Affine2::from_mat3( - m.into_inner(), + let output: V<::glam::Affine3> = ::glam::Affine3::from_rotation_x( + angle, ) .into(); output @@ -53245,16 +54101,16 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { }; output }, - " The given `Mat3` must be an affine transform,", - &["m"], + " Creates an affine transform containing a 3D rotation around the x axis of\n `angle` (in radians).", + &["angle"], ) .register_documented( - "from_mat3a", - |m: V<::glam::Mat3A>| { - let output: V<::glam::Affine2> = { + "from_rotation_y", + |angle: f32| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Affine2> = ::glam::Affine2::from_mat3a( - m.into_inner(), + let output: V<::glam::Affine3> = ::glam::Affine3::from_rotation_y( + angle, ) .into(); output @@ -53262,15 +54118,32 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { }; output }, - " The given [`Mat3A`] must be an affine transform,", - &["m"], + " Creates an affine transform containing a 3D rotation around the y axis of\n `angle` (in radians).", + &["angle"], + ) + .register_documented( + "from_rotation_z", + |angle: f32| { + let output: V<::glam::Affine3> = { + { + let output: V<::glam::Affine3> = ::glam::Affine3::from_rotation_z( + angle, + ) + .into(); + output + } + }; + output + }, + " Creates an affine transform containing a 3D rotation around the z axis of\n `angle` (in radians).", + &["angle"], ) .register_documented( "from_scale", - |scale: V<::glam::Vec2>| { - let output: V<::glam::Affine2> = { + |scale: V<::glam::Vec3>| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Affine2> = ::glam::Affine2::from_scale( + let output: V<::glam::Affine3> = ::glam::Affine3::from_scale( scale.into_inner(), ) .into(); @@ -53283,13 +54156,17 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { &["scale"], ) .register_documented( - "from_scale_angle_translation", - |scale: V<::glam::Vec2>, angle: f32, translation: V<::glam::Vec2>| { - let output: V<::glam::Affine2> = { + "from_scale_rotation_translation", + | + scale: V<::glam::Vec3>, + rotation: V<::glam::Quat>, + translation: V<::glam::Vec3>| + { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Affine2> = ::glam::Affine2::from_scale_angle_translation( + let output: V<::glam::Affine3> = ::glam::Affine3::from_scale_rotation_translation( scale.into_inner(), - angle, + rotation.into_inner(), translation.into_inner(), ) .into(); @@ -53298,15 +54175,15 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { }; output }, - " Creates an affine transform from the given 2D `scale`, rotation `angle` (in radians) and\n `translation`.\n Equivalent to `Affine2::from_translation(translation) *\n Affine2::from_angle(angle) * Affine2::from_scale(scale)`", - &["scale", "angle", "translation"], + " Creates an affine transform from the given 3D `scale`, `rotation` and\n `translation`.\n Equivalent to `Affine3::from_translation(translation) *\n Affine3::from_quat(rotation) * Affine3::from_scale(scale)`", + &["scale", "rotation", "translation"], ) .register_documented( "from_translation", - |translation: V<::glam::Vec2>| { - let output: V<::glam::Affine2> = { + |translation: V<::glam::Vec3>| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Affine2> = ::glam::Affine2::from_translation( + let output: V<::glam::Affine3> = ::glam::Affine3::from_translation( translation.into_inner(), ) .into(); @@ -53315,15 +54192,15 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { }; output }, - " Creates an affine transformation from the given 2D `translation`.", + " Creates an affine transformation from the given 3D `translation`.", &["translation"], ) .register_documented( "inverse", - |_self: R<::glam::Affine2>| { - let output: V<::glam::Affine2> = { + |_self: R<::glam::Affine3>| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Affine2> = ::glam::Affine2::inverse(&_self) + let output: V<::glam::Affine3> = ::glam::Affine3::inverse(&_self) .into(); output } @@ -53335,10 +54212,10 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { ) .register_documented( "is_finite", - |_self: R<::glam::Affine2>| { + |_self: R<::glam::Affine3>| { let output: bool = { { - let output: bool = ::glam::Affine2::is_finite(&_self).into(); + let output: bool = ::glam::Affine3::is_finite(&_self).into(); output } }; @@ -53349,10 +54226,10 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { ) .register_documented( "is_nan", - |_self: R<::glam::Affine2>| { + |_self: R<::glam::Affine3>| { let output: bool = { { - let output: bool = ::glam::Affine2::is_nan(&_self).into(); + let output: bool = ::glam::Affine3::is_nan(&_self).into(); output } }; @@ -53362,64 +54239,89 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { &["_self"], ) .register_documented( - "mul", - |_self: V<::glam::Affine2>, rhs: R<::glam::Affine2>| { - let output: V<::glam::Affine2> = { + "look_at_lh", + |eye: V<::glam::Vec3>, center: V<::glam::Vec3>, up: V<::glam::Vec3>| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Affine2> = <::glam::Affine2 as ::core::ops::Mul< - &::glam::Affine2, - >>::mul(_self.into_inner(), &rhs) + let output: V<::glam::Affine3> = ::glam::Affine3::look_at_lh( + eye.into_inner(), + center.into_inner(), + up.into_inner(), + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Creates a left-handed view transform using a camera position, an up direction, and a focal\n point.\n For a view coordinate system with `+X=right`, `+Y=up` and `+Z=forward`.\n # Panics\n Will panic if `up` is not normalized when `glam_assert` is enabled.", + &["eye", "center", "up"], ) .register_documented( - "mul", - |_self: V<::glam::Affine2>, rhs: R<::glam::Mat3>| { - let output: V<::glam::Mat3> = { + "look_at_rh", + |eye: V<::glam::Vec3>, center: V<::glam::Vec3>, up: V<::glam::Vec3>| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Mat3> = <::glam::Affine2 as ::core::ops::Mul< - &::glam::Mat3, - >>::mul(_self.into_inner(), &rhs) + let output: V<::glam::Affine3> = ::glam::Affine3::look_at_rh( + eye.into_inner(), + center.into_inner(), + up.into_inner(), + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Creates a right-handed view transform using a camera position, an up direction, and a focal\n point.\n For a view coordinate system with `+X=right`, `+Y=up` and `+Z=back`.\n # Panics\n Will panic if `up` is not normalized when `glam_assert` is enabled.", + &["eye", "center", "up"], ) .register_documented( - "mul", - |_self: V<::glam::Affine2>, rhs: R<::glam::Mat3A>| { - let output: V<::glam::Mat3A> = { + "look_to_lh", + |eye: V<::glam::Vec3>, dir: V<::glam::Vec3>, up: V<::glam::Vec3>| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Mat3A> = <::glam::Affine2 as ::core::ops::Mul< - &::glam::Mat3A, - >>::mul(_self.into_inner(), &rhs) + let output: V<::glam::Affine3> = ::glam::Affine3::look_to_lh( + eye.into_inner(), + dir.into_inner(), + up.into_inner(), + ) .into(); output } }; output }, - "", - &["_self", "rhs"], + " Creates a left-handed view transform using a camera position, an up direction, and a facing\n direction.\n For a view coordinate system with `+X=right`, `+Y=up` and `+Z=forward`.", + &["eye", "dir", "up"], + ) + .register_documented( + "look_to_rh", + |eye: V<::glam::Vec3>, dir: V<::glam::Vec3>, up: V<::glam::Vec3>| { + let output: V<::glam::Affine3> = { + { + let output: V<::glam::Affine3> = ::glam::Affine3::look_to_rh( + eye.into_inner(), + dir.into_inner(), + up.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Creates a right-handed view transform using a camera position, an up direction, and a facing\n direction.\n For a view coordinate system with `+X=right`, `+Y=up` and `+Z=back`.", + &["eye", "dir", "up"], ) .register_documented( "mul", - |_self: V<::glam::Affine2>, rhs: V<::glam::Affine2>| { - let output: V<::glam::Affine2> = { + |_self: V<::glam::Affine3>, rhs: R<::glam::Affine3>| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Affine2> = <::glam::Affine2 as ::core::ops::Mul< - ::glam::Affine2, - >>::mul(_self.into_inner(), rhs.into_inner()) + let output: V<::glam::Affine3> = <::glam::Affine3 as ::core::ops::Mul< + &::glam::Affine3, + >>::mul(_self.into_inner(), &rhs) .into(); output } @@ -53431,12 +54333,12 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { ) .register_documented( "mul", - |_self: V<::glam::Affine2>, rhs: V<::glam::Mat3>| { - let output: V<::glam::Mat3> = { + |_self: V<::glam::Affine3>, rhs: R<::glam::Mat4>| { + let output: V<::glam::Mat4> = { { - let output: V<::glam::Mat3> = <::glam::Affine2 as ::core::ops::Mul< - ::glam::Mat3, - >>::mul(_self.into_inner(), rhs.into_inner()) + let output: V<::glam::Mat4> = <::glam::Affine3 as ::core::ops::Mul< + &::glam::Mat4, + >>::mul(_self.into_inner(), &rhs) .into(); output } @@ -53448,11 +54350,11 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { ) .register_documented( "mul", - |_self: V<::glam::Affine2>, rhs: V<::glam::Mat3A>| { - let output: V<::glam::Mat3A> = { + |_self: V<::glam::Affine3>, rhs: V<::glam::Affine3>| { + let output: V<::glam::Affine3> = { { - let output: V<::glam::Mat3A> = <::glam::Affine2 as ::core::ops::Mul< - ::glam::Mat3A, + let output: V<::glam::Affine3> = <::glam::Affine3 as ::core::ops::Mul< + ::glam::Affine3, >>::mul(_self.into_inner(), rhs.into_inner()) .into(); output @@ -53465,25 +54367,25 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { ) .register_documented( "to_cols_array", - |_self: R<::glam::Affine2>| { - let output: [f32; 6] = { + |_self: R<::glam::Affine3>| { + let output: [f32; 12] = { { - let output: [f32; 6] = ::glam::Affine2::to_cols_array(&_self) + let output: [f32; 12] = ::glam::Affine3::to_cols_array(&_self) .into(); output } }; output }, - " Creates a `[f32; 6]` array storing data in column major order.", + " Creates a `[f32; 12]` array storing data in column major order.", &["_self"], ) .register_documented( "to_cols_array_2d", - |_self: R<::glam::Affine2>| { - let output: [[f32; 2]; 3] = { + |_self: R<::glam::Affine3>| { + let output: [[f32; 3]; 4] = { { - let output: [[f32; 2]; 3] = ::glam::Affine2::to_cols_array_2d( + let output: [[f32; 3]; 4] = ::glam::Affine3::to_cols_array_2d( &_self, ) .into(); @@ -53492,15 +54394,15 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { }; output }, - " Creates a `[[f32; 2]; 3]` 2D array storing data in\n column major order.\n If you require data in row major order `transpose` the matrix first.", + " Creates a `[[f32; 3]; 4]` 3D array storing data in\n column major order.\n If you require data in row major order `transpose` the matrix first.", &["_self"], ) .register_documented( - "transform_point2", - |_self: R<::glam::Affine2>, rhs: V<::glam::Vec2>| { - let output: V<::glam::Vec2> = { + "transform_point3", + |_self: R<::glam::Affine3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec2> = ::glam::Affine2::transform_point2( + let output: V<::glam::Vec3> = ::glam::Affine3::transform_point3( &_self, rhs.into_inner(), ) @@ -53510,15 +54412,15 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { }; output }, - " Transforms the given 2D point, applying shear, scale, rotation and translation.", + " Transforms the given 3D points, applying shear, scale, rotation and translation.", &["_self", "rhs"], ) .register_documented( - "transform_vector2", - |_self: R<::glam::Affine2>, rhs: V<::glam::Vec2>| { - let output: V<::glam::Vec2> = { + "transform_vector3", + |_self: R<::glam::Affine3>, rhs: V<::glam::Vec3>| { + let output: V<::glam::Vec3> = { { - let output: V<::glam::Vec2> = ::glam::Affine2::transform_vector2( + let output: V<::glam::Vec3> = ::glam::Affine3::transform_vector3( &_self, rhs.into_inner(), ) @@ -53528,12 +54430,12 @@ pub(crate) fn register_affine_2_functions(world: &mut World) { }; output }, - " Transforms the given 2D vector, applying shear, scale and rotation (but NOT\n translation).\n To also apply translation, use [`Self::transform_point2()`] instead.", + " Transforms the given 3D vector, applying shear, scale and rotation (but NOT\n translation).\n To also apply translation, use [`Self::transform_point3()`] instead.", &["_self", "rhs"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); - registry.register_type_data::<::glam::Affine2, bevy_mod_scripting_bindings::MarkAsGenerated>(); + registry.register_type_data::<::glam::Affine3, bevy_mod_scripting_bindings::MarkAsGenerated>(); } pub(crate) fn register_affine_3_a_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< @@ -54019,23 +54921,6 @@ pub(crate) fn register_affine_3_a_functions(world: &mut World) { "", &["_self", "rhs"], ) - .register_documented( - "mul", - |_self: V<::glam::Affine3A>, rhs: V<::glam::Mat4>| { - let output: V<::glam::Mat4> = { - { - let output: V<::glam::Mat4> = <::glam::Affine3A as ::core::ops::Mul< - ::glam::Mat4, - >>::mul(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "to_cols_array", |_self: R<::glam::Affine3A>| { @@ -54477,23 +55362,6 @@ pub(crate) fn register_d_affine_2_functions(world: &mut World) { "", &["_self", "rhs"], ) - .register_documented( - "mul", - |_self: V<::glam::DAffine2>, rhs: V<::glam::DMat3>| { - let output: V<::glam::DMat3> = { - { - let output: V<::glam::DMat3> = <::glam::DAffine2 as ::core::ops::Mul< - ::glam::DMat3, - >>::mul(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "to_cols_array", |_self: R<::glam::DAffine2>| { @@ -54589,6 +55457,23 @@ pub(crate) fn register_d_affine_3_functions(world: &mut World) { " Returns true if the absolute difference of all elements between `self` and `rhs`\n is less than or equal to `max_abs_diff`.\n This can be used to compare if two 3x4 matrices contain similar elements. It works\n best when comparing with a known value. The `max_abs_diff` that should be used used\n depends on the values being compared against.\n For more see\n [comparing floating point numbers](https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/).", &["_self", "rhs", "max_abs_diff"], ) + .register_documented( + "as_affine3", + |_self: R<::glam::DAffine3>| { + let output: V<::glam::Affine3> = { + { + let output: V<::glam::Affine3> = ::glam::DAffine3::as_affine3( + &_self, + ) + .into(); + output + } + }; + output + }, + " Casts all elements of `self` to `f32`.", + &["_self"], + ) .register_documented( "as_affine3a", |_self: R<::glam::DAffine3>| { @@ -55050,23 +55935,6 @@ pub(crate) fn register_d_affine_3_functions(world: &mut World) { "", &["_self", "rhs"], ) - .register_documented( - "mul", - |_self: V<::glam::DAffine3>, rhs: V<::glam::DMat4>| { - let output: V<::glam::DMat4> = { - { - let output: V<::glam::DMat4> = <::glam::DAffine3 as ::core::ops::Mul< - ::glam::DMat4, - >>::mul(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "to_cols_array", |_self: R<::glam::DAffine3>| { @@ -55469,6 +56337,29 @@ pub(crate) fn register_d_quat_functions(world: &mut World) { " Gets the minimal rotation for transforming `from` to either `to` or `-to`. This means\n that the resulting quaternion will rotate `from` so that it is colinear with `to`.\n The rotation is in the plane spanned by the two vectors. Will rotate at most 90\n degrees.\n The inputs must be unit vectors.\n `to.dot(from_rotation_arc_colinear(from, to) * from).abs() ≈ 1`.\n # Panics\n Will panic if `from` or `to` are not normalized when `glam_assert` is enabled.", &["from", "to"], ) + .register_documented( + "from_rotation_axes", + | + x_axis: V<::glam::DVec3>, + y_axis: V<::glam::DVec3>, + z_axis: V<::glam::DVec3>| + { + let output: V<::glam::DQuat> = { + { + let output: V<::glam::DQuat> = ::glam::DQuat::from_rotation_axes( + x_axis.into_inner(), + y_axis.into_inner(), + z_axis.into_inner(), + ) + .into(); + output + } + }; + output + }, + " From the columns of a 3x3 rotation matrix.\n Note if the input axes contain scales, shears, or other non-rotation transformations then\n the output of this function is ill-defined.\n # Panics\n Will panic if any axis is not normalized when `glam_assert` is enabled.", + &["x_axis", "y_axis", "z_axis"], + ) .register_documented( "from_rotation_x", |angle: f64| { @@ -55846,23 +56737,6 @@ pub(crate) fn register_d_quat_functions(world: &mut World) { " Multiplies two quaternions. If they each represent a rotation, the result will\n represent the combined rotation.\n Note that due to floating point rounding the result may not be perfectly\n normalized.\n # Panics\n Will panic if `self` or `rhs` are not normalized when `glam_assert` is enabled.", &["_self", "rhs"], ) - .register_documented( - "mul", - |_self: V<::glam::DQuat>, rhs: V<::glam::DVec3>| { - let output: V<::glam::DVec3> = { - { - let output: V<::glam::DVec3> = <::glam::DQuat as ::core::ops::Mul< - ::glam::DVec3, - >>::mul(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - " Multiplies a quaternion and a 3D vector, returning the rotated vector.\n # Panics\n Will panic if `self` is not normalized when `glam_assert` is enabled.", - &["_self", "rhs"], - ) .register_documented( "mul", |_self: V<::glam::DQuat>, rhs: f64| { @@ -55952,11 +56826,11 @@ pub(crate) fn register_d_quat_functions(world: &mut World) { ) .register_documented( "rotate_towards", - |_self: R<::glam::DQuat>, rhs: V<::glam::DQuat>, max_angle: f64| { + |_self: V<::glam::DQuat>, rhs: V<::glam::DQuat>, max_angle: f64| { let output: V<::glam::DQuat> = { { let output: V<::glam::DQuat> = ::glam::DQuat::rotate_towards( - &_self, + _self.into_inner(), rhs.into_inner(), max_angle, ) @@ -56024,10 +56898,13 @@ pub(crate) fn register_d_quat_functions(world: &mut World) { ) .register_documented( "to_array", - |_self: R<::glam::DQuat>| { + |_self: V<::glam::DQuat>| { let output: [f64; 4] = { { - let output: [f64; 4] = ::glam::DQuat::to_array(&_self).into(); + let output: [f64; 4] = ::glam::DQuat::to_array( + _self.into_inner(), + ) + .into(); output } }; @@ -56096,22 +56973,6 @@ pub(crate) fn register_euler_rot_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::glam::EulerRot>::new( world, ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::glam::EulerRot>| { - let output: () = { - { - let output: () = - <::glam::EulerRot as ::core::cmp::Eq>::assert_receiver_is_total_eq(&_self) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::glam::EulerRot>| { @@ -56292,10 +57153,14 @@ pub(crate) fn register_b_vec_3_a_functions(world: &mut World) { ) .register_documented( "test", - |_self: R<::glam::BVec3A>, index: usize| { + |_self: V<::glam::BVec3A>, index: usize| { let output: bool = { { - let output: bool = ::glam::BVec3A::test(&_self, index).into(); + let output: bool = ::glam::BVec3A::test( + _self.into_inner(), + index, + ) + .into(); output } }; @@ -56452,10 +57317,14 @@ pub(crate) fn register_b_vec_4_a_functions(world: &mut World) { ) .register_documented( "test", - |_self: R<::glam::BVec4A>, index: usize| { + |_self: V<::glam::BVec4A>, index: usize| { let output: bool = { { - let output: bool = ::glam::BVec4A::test(&_self, index).into(); + let output: bool = ::glam::BVec4A::test( + _self.into_inner(), + index, + ) + .into(); output } }; @@ -56599,23 +57468,6 @@ pub(crate) fn register_uuid_functions(world: &mut World) { " Returns two 64bit values containing the value.\n The bytes in the UUID will be split into two `u64`.\n The first u64 represents the 64 most significant bits,\n the second one represents the 64 least significant.\n # Examples\n ```\n # use uuid::Uuid;\n # fn main() -> Result<(), uuid::Error> {\n let uuid = Uuid::parse_str(\"a1a2a3a4-b1b2-c1c2-d1d2-d3d4d5d6d7d8\")?;\n assert_eq!(\n uuid.as_u64_pair(),\n (0xa1a2a3a4b1b2c1c2, 0xd1d2d3d4d5d6d7d8),\n );\n # Ok(())\n # }\n ```", &["_self"], ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::uuid::Uuid>| { - let output: () = { - { - let output: () = <::uuid::Uuid as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::uuid::Uuid>| { @@ -56912,24 +57764,6 @@ pub(crate) fn register_non_nil_uuid_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::uuid::NonNilUuid>::new( world, ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::uuid::NonNilUuid>| { - let output: () = { - { - let output: () = - <::uuid::NonNilUuid as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::uuid::NonNilUuid>| { @@ -57020,23 +57854,6 @@ pub(crate) fn register_texture_format_functions(world: &mut World) { " Adds an `Srgb` suffix to the given texture format, if the format supports it.", &["_self"], ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::wgpu_types::TextureFormat>| { - let output: () = { - { - let output: () = <::wgpu_types::TextureFormat as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "block_dimensions", |_self: R<::wgpu_types::TextureFormat>| { @@ -57339,9 +58156,27 @@ pub(crate) fn register_texture_format_functions(world: &mut World) { }; output }, - " Returns the size multiple requirement for a texture using this format.", + " Returns the size multiple requirement for a texture using this format.\n `create_texture` currently enforces a stricter restriction than this for\n mipmapped multi-planar formats.\n TODO(): Remove this note.", &["_self"], ) + .register_documented( + "subsampling_factors", + |_self: R<::wgpu_types::TextureFormat>, plane: ::core::option::Option| { + let output: (u32, u32) = { + { + let output: (u32, u32) = ::wgpu_types::TextureFormat::subsampling_factors( + &_self, + plane, + ) + .into(); + output + } + }; + output + }, + " Returns the subsampling factor for the indicated plane of a multi-planar format.", + &["_self", "plane"], + ) .register_documented( "target_component_alignment", |_self: R<::wgpu_types::TextureFormat>| { @@ -57388,23 +58223,6 @@ pub(crate) fn register_blend_state_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::wgpu_types::BlendState, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::wgpu_types::BlendState>| { - let output: () = { - { - let output: () = <::wgpu_types::BlendState as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::wgpu_types::BlendState>| { @@ -57450,24 +58268,15 @@ pub(crate) fn register_blend_state_functions(world: &mut World) { impl Plugin for BevyReflectScriptingPlugin { fn build(&self, app: &mut App) { let mut world = app.world_mut(); - register_atomic_bool_functions(&mut world); - register_atomic_i_8_functions(&mut world); - register_atomic_i_16_functions(&mut world); - register_atomic_i_32_functions(&mut world); - register_atomic_i_64_functions(&mut world); - register_atomic_isize_functions(&mut world); - register_atomic_u_8_functions(&mut world); - register_atomic_u_16_functions(&mut world); - register_atomic_u_32_functions(&mut world); - register_atomic_u_64_functions(&mut world); - register_atomic_usize_functions(&mut world); - register_duration_functions(&mut world); - register_instant_functions(&mut world); register_range_full_functions(&mut world); register_type_id_functions(&mut world); register_quat_functions(&mut world); register_vec_3_functions(&mut world); + register_offset_access_functions(&mut world); + register_parsed_path_functions(&mut world); + register_instant_functions(&mut world); register_socket_addr_functions(&mut world); + register_duration_functions(&mut world); register_i_vec_2_functions(&mut world); register_i_vec_3_functions(&mut world); register_i_vec_4_functions(&mut world); @@ -57509,6 +58318,7 @@ impl Plugin for BevyReflectScriptingPlugin { register_d_mat_3_functions(&mut world); register_d_mat_4_functions(&mut world); register_affine_2_functions(&mut world); + register_affine_3_functions(&mut world); register_affine_3_a_functions(&mut world); register_d_affine_2_functions(&mut world); register_d_affine_3_functions(&mut world); diff --git a/crates/bindings/bevy_render_bms_bindings/Cargo.toml b/crates/bindings/bevy_render_bms_bindings/Cargo.toml index 69abdef6de..ed19b15423 100644 --- a/crates/bindings/bevy_render_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_render_bms_bindings/Cargo.toml @@ -20,48 +20,54 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_render = { version = "0.18.1", features = ["morph", "multi_threaded", "webgl"], default-features = true} +bevy_render = { version = "0.19.0", features = ["morph", "multi_threaded", "reflect_auto_register", "webgl"], default-features = true} async-channel = { version = "^2.3.0", features = [], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_camera = { version = "^0.18.0", features = [], default-features = true} +bevy_camera = { version = "^0.19.0", features = [], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_diagnostic = { version = "^0.18.0", features = ["std", "sysinfo", "sysinfo_plugin"], default-features = true} +bevy_diagnostic = { version = "^0.19.0", features = ["std", "sysinfo", "sysinfo_plugin"], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_encase_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_encase_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_image = { version = "^0.18.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} +bevy_image = { version = "^0.19.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_log = { version = "^0.19.0", features = [], default-features = true} -bevy_mesh = { version = "^0.18.0", features = ["bevy_mikktspace", "morph"], default-features = true} +bevy_material = { version = "^0.19.0", features = [], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_material_macros = { version = "^0.19.0", features = [], default-features = true} -bevy_render_macros = { version = "^0.18.0", features = [], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_shader = { version = "^0.18.0", features = [], default-features = true} +bevy_mesh = { version = "^0.19.0", features = ["bevy_mikktspace", "morph"], default-features = true} -bevy_tasks = { version = "^0.18.0", features = ["async_executor", "futures-lite", "multi_threaded"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_time = { version = "^0.18.0", features = ["bevy_reflect", "std"], default-features = true} +bevy_render_macros = { version = "^0.19.0", features = [], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_shader = { version = "^0.19.0", features = [], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} +bevy_tasks = { version = "^0.19.0", features = ["async_executor", "futures-lite", "multi_threaded"], default-features = true} -bevy_window = { version = "^0.18.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} +bevy_time = { version = "^0.19.0", features = ["bevy_reflect", "std"], default-features = true} + +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} + +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} + +bevy_window = { version = "^0.19.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} bitflags = { version = "^2", features = [], default-features = true} @@ -69,13 +75,13 @@ bytemuck = { version = "^1.5", features = [], default-features = true} encase = { version = "^0.12", features = [], default-features = true} -fixedbitset = { version = "^0.5", features = [], default-features = true} - indexmap = { version = "^2", features = [], default-features = true} +itertools = { version = "^0.14", features = [], default-features = true} + js-sys = { version = "^0.3.83", features = [], default-features = true} -naga = { version = "^27", features = [], default-features = true} +naga = { version = "^29.0.3", features = [], default-features = true} nonmax = { version = "^0.5", features = [], default-features = true} @@ -87,8 +93,10 @@ variadics_please = { version = "^1.1", features = [], default-features = true} wasm-bindgen = { version = "^0.2", features = [], default-features = true} +weak-table = { version = "^0.3", features = [], default-features = true} + web-sys = { version = "^0.3.67", features = [], default-features = true} -wgpu = { version = "^27", features = ["webgl"], default-features = false} +wgpu = { version = "^29.0.3", features = ["webgl"], default-features = false} diff --git a/crates/bindings/bevy_render_bms_bindings/src/lib.rs b/crates/bindings/bevy_render_bms_bindings/src/lib.rs index 235a8dc94b..df30a2998c 100644 --- a/crates/bindings/bevy_render_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_render_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -12,72 +13,10 @@ use bevy_mod_scripting_bindings::{ }; use bevy_mod_scripting_derive::script_bindings; pub struct BevyRenderScriptingPlugin; -pub(crate) fn register_alpha_mode_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_render::alpha::AlphaMode, - >::new(world) - .register_documented( - "clone", - |_self: R<::bevy_render::alpha::AlphaMode>| { - let output: V<::bevy_render::alpha::AlphaMode> = { - { - let output: V<::bevy_render::alpha::AlphaMode> = - <::bevy_render::alpha::AlphaMode as ::std::clone::Clone>::clone(&_self) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - |_self: R<::bevy_render::alpha::AlphaMode>, other: R<::bevy_render::alpha::AlphaMode>| { - let output: bool = { - { - let output: bool = <::bevy_render::alpha::AlphaMode as ::std::cmp::PartialEq< - ::bevy_render::alpha::AlphaMode, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_render::alpha::AlphaMode, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} pub(crate) fn register_msaa_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_render::view::Msaa, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_render::view::Msaa>| { - let output: () = { - { - let output: () = <::bevy_render::view::Msaa as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_render::view::Msaa>| { @@ -96,13 +35,11 @@ pub(crate) fn register_msaa_functions(world: &mut World) { &["_self"], ) .register_documented( - "eq", - |_self: R<::bevy_render::view::Msaa>, other: R<::bevy_render::view::Msaa>| { - let output: bool = { + "default_off", + || { + let output: V<::bevy_render::view::Msaa> = { { - let output: bool = <::bevy_render::view::Msaa as ::std::cmp::PartialEq< - ::bevy_render::view::Msaa, - >>::eq(&_self, &other) + let output: V<::bevy_render::view::Msaa> = ::bevy_render::view::Msaa::default_off() .into(); output } @@ -110,16 +47,14 @@ pub(crate) fn register_msaa_functions(world: &mut World) { output }, "", - &["_self", "other"], + &[], ) .register_documented( - "from_samples", - |samples: u32| { + "default_sample2", + || { let output: V<::bevy_render::view::Msaa> = { { - let output: V<::bevy_render::view::Msaa> = ::bevy_render::view::Msaa::from_samples( - samples, - ) + let output: V<::bevy_render::view::Msaa> = ::bevy_render::view::Msaa::default_sample2() .into(); output } @@ -127,14 +62,14 @@ pub(crate) fn register_msaa_functions(world: &mut World) { output }, "", - &["samples"], + &[], ) .register_documented( - "samples", - |_self: R<::bevy_render::view::Msaa>| { - let output: u32 = { + "default_sample4", + || { + let output: V<::bevy_render::view::Msaa> = { { - let output: u32 = ::bevy_render::view::Msaa::samples(&_self) + let output: V<::bevy_render::view::Msaa> = ::bevy_render::view::Msaa::default_sample4() .into(); output } @@ -142,28 +77,14 @@ pub(crate) fn register_msaa_functions(world: &mut World) { output }, "", - &["_self"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_render::view::Msaa, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_main_entity_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_render::sync_world::MainEntity, - >::new(world) + &[], + ) .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_render::sync_world::MainEntity>| { - let output: () = { + "default_sample8", + || { + let output: V<::bevy_render::view::Msaa> = { { - let output: () = <::bevy_render::sync_world::MainEntity as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) + let output: V<::bevy_render::view::Msaa> = ::bevy_render::view::Msaa::default_sample8() .into(); output } @@ -171,16 +92,16 @@ pub(crate) fn register_main_entity_functions(world: &mut World) { output }, "", - &["_self"], + &[], ) .register_documented( - "clone", - |_self: R<::bevy_render::sync_world::MainEntity>| { - let output: V<::bevy_render::sync_world::MainEntity> = { + "eq", + |_self: R<::bevy_render::view::Msaa>, other: R<::bevy_render::view::Msaa>| { + let output: bool = { { - let output: V<::bevy_render::sync_world::MainEntity> = <::bevy_render::sync_world::MainEntity as ::std::clone::Clone>::clone( - &_self, - ) + let output: bool = <::bevy_render::view::Msaa as ::std::cmp::PartialEq< + ::bevy_render::view::Msaa, + >>::eq(&_self, &other) .into(); output } @@ -188,19 +109,16 @@ pub(crate) fn register_main_entity_functions(world: &mut World) { output }, "", - &["_self"], + &["_self", "other"], ) .register_documented( - "eq", - | - _self: R<::bevy_render::sync_world::MainEntity>, - other: R<::bevy_render::sync_world::MainEntity>| - { - let output: bool = { + "from_samples", + |samples: u32| { + let output: V<::bevy_render::view::Msaa> = { { - let output: bool = <::bevy_render::sync_world::MainEntity as ::std::cmp::PartialEq< - ::bevy_render::sync_world::MainEntity, - >>::eq(&_self, &other) + let output: V<::bevy_render::view::Msaa> = ::bevy_render::view::Msaa::from_samples( + samples, + ) .into(); output } @@ -208,16 +126,14 @@ pub(crate) fn register_main_entity_functions(world: &mut World) { output }, "", - &["_self", "other"], + &["samples"], ) .register_documented( - "id", - |_self: R<::bevy_render::sync_world::MainEntity>| { - let output: V<::bevy_ecs::entity::Entity> = { + "samples", + |_self: R<::bevy_render::view::Msaa>| { + let output: u32 = { { - let output: V<::bevy_ecs::entity::Entity> = ::bevy_render::sync_world::MainEntity::id( - &_self, - ) + let output: u32 = ::bevy_render::view::Msaa::samples(&_self) .into(); output } @@ -229,6 +145,70 @@ pub(crate) fn register_main_entity_functions(world: &mut World) { ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_render::view::Msaa, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_main_entity_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_render::sync_world::MainEntity, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_render::sync_world::MainEntity>| { + let output: V<::bevy_render::sync_world::MainEntity> = { + { + let output: V<::bevy_render::sync_world::MainEntity> = + <::bevy_render::sync_world::MainEntity as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_render::sync_world::MainEntity>, + other: R<::bevy_render::sync_world::MainEntity>| { + let output: bool = { + { + let output: bool = + <::bevy_render::sync_world::MainEntity as ::std::cmp::PartialEq< + ::bevy_render::sync_world::MainEntity, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "id", + |_self: R<::bevy_render::sync_world::MainEntity>| { + let output: V<::bevy_ecs::entity::Entity> = { + { + let output: V<::bevy_ecs::entity::Entity> = + ::bevy_render::sync_world::MainEntity::id(&_self).into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); registry .register_type_data::< ::bevy_render::sync_world::MainEntity, @@ -237,18 +217,16 @@ pub(crate) fn register_main_entity_functions(world: &mut World) { } pub(crate) fn register_occlusion_culling_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_render::experimental::occlusion_culling::OcclusionCulling, + ::bevy_render::occlusion_culling::OcclusionCulling, >::new(world) .register_documented( "clone", - |_self: R<::bevy_render::experimental::occlusion_culling::OcclusionCulling>| { - let output: V< - ::bevy_render::experimental::occlusion_culling::OcclusionCulling, - > = { + |_self: R<::bevy_render::occlusion_culling::OcclusionCulling>| { + let output: V<::bevy_render::occlusion_culling::OcclusionCulling> = { { let output: V< - ::bevy_render::experimental::occlusion_culling::OcclusionCulling, - > = <::bevy_render::experimental::occlusion_culling::OcclusionCulling as ::std::clone::Clone>::clone( + ::bevy_render::occlusion_culling::OcclusionCulling, + > = <::bevy_render::occlusion_culling::OcclusionCulling as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -264,7 +242,7 @@ pub(crate) fn register_occlusion_culling_functions(world: &mut World) { let mut registry = registry.write(); registry .register_type_data::< - ::bevy_render::experimental::occlusion_culling::OcclusionCulling, + ::bevy_render::occlusion_culling::OcclusionCulling, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } @@ -272,77 +250,58 @@ pub(crate) fn register_render_entity_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_render::sync_world::RenderEntity, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_render::sync_world::RenderEntity>| { - let output: () = { - { - let output: () = <::bevy_render::sync_world::RenderEntity as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_render::sync_world::RenderEntity>| { - let output: V<::bevy_render::sync_world::RenderEntity> = { - { - let output: V<::bevy_render::sync_world::RenderEntity> = <::bevy_render::sync_world::RenderEntity as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_render::sync_world::RenderEntity>, - other: R<::bevy_render::sync_world::RenderEntity>| - { - let output: bool = { - { - let output: bool = <::bevy_render::sync_world::RenderEntity as ::std::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_render::sync_world::RenderEntity>| { + let output: V<::bevy_render::sync_world::RenderEntity> = { + { + let output: V<::bevy_render::sync_world::RenderEntity> = + <::bevy_render::sync_world::RenderEntity as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_render::sync_world::RenderEntity>, + other: R<::bevy_render::sync_world::RenderEntity>| { + let output: bool = { + { + let output: bool = + <::bevy_render::sync_world::RenderEntity as ::std::cmp::PartialEq< ::bevy_render::sync_world::RenderEntity, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "id", - |_self: R<::bevy_render::sync_world::RenderEntity>| { - let output: V<::bevy_ecs::entity::Entity> = { - { - let output: V<::bevy_ecs::entity::Entity> = ::bevy_render::sync_world::RenderEntity::id( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "id", + |_self: R<::bevy_render::sync_world::RenderEntity>| { + let output: V<::bevy_ecs::entity::Entity> = { + { + let output: V<::bevy_ecs::entity::Entity> = + ::bevy_render::sync_world::RenderEntity::id(&_self).into(); + output + } + }; + output + }, + "", + &["_self"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -430,16 +389,16 @@ pub(crate) fn register_color_grading_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_hdr_functions(world: &mut World) { +pub(crate) fn register_render_visible_entities_class_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_render::view::Hdr, + ::bevy_render::view::RenderVisibleEntitiesClass, >::new(world) .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_render::view::Hdr>| { - let output: () = { + "clone", + |_self: R<::bevy_render::view::RenderVisibleEntitiesClass>| { + let output: V<::bevy_render::view::RenderVisibleEntitiesClass> = { { - let output: () = <::bevy_render::view::Hdr as ::std::cmp::Eq>::assert_receiver_is_total_eq( + let output: V<::bevy_render::view::RenderVisibleEntitiesClass> = <::bevy_render::view::RenderVisibleEntitiesClass as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -452,12 +411,18 @@ pub(crate) fn register_hdr_functions(world: &mut World) { &["_self"], ) .register_documented( - "clone", - |_self: R<::bevy_render::view::Hdr>| { - let output: V<::bevy_render::view::Hdr> = { + "entity_pair_is_visible", + | + _self: R<::bevy_render::view::RenderVisibleEntitiesClass>, + entity: V<::bevy_ecs::entity::Entity>, + main_entity: V<::bevy_render::sync_world::MainEntity>| + { + let output: bool = { { - let output: V<::bevy_render::view::Hdr> = <::bevy_render::view::Hdr as ::std::clone::Clone>::clone( + let output: bool = ::bevy_render::view::RenderVisibleEntitiesClass::entity_pair_is_visible( &_self, + entity.into_inner(), + main_entity.into_inner(), ) .into(); output @@ -465,61 +430,48 @@ pub(crate) fn register_hdr_functions(world: &mut World) { }; output }, - "", + " Returns true if the given entity pair is known to be visible.\n This checks both the CPU culling visible entries table and the\n no-CPU-culling visible entries table.", + &["_self", "entity", "main_entity"], + ) + .register_documented( + "prepare_for_new_frame", + |mut _self: M<::bevy_render::view::RenderVisibleEntitiesClass>| { + let output: () = { + { + let output: () = ::bevy_render::view::RenderVisibleEntitiesClass::prepare_for_new_frame( + &mut _self, + ) + .into(); + output + } + }; + output + }, + " Clears out the lists of added and removed entities in preparation for a\n new frame.", &["_self"], ) .register_documented( - "eq", - |_self: R<::bevy_render::view::Hdr>, other: R<::bevy_render::view::Hdr>| { - let output: bool = { + "sort_added_entities", + |mut _self: M<::bevy_render::view::RenderVisibleEntitiesClass>| { + let output: () = { { - let output: bool = <::bevy_render::view::Hdr as ::std::cmp::PartialEq< - ::bevy_render::view::Hdr, - >>::eq(&_self, &other) + let output: () = ::bevy_render::view::RenderVisibleEntitiesClass::sort_added_entities( + &mut _self, + ) .into(); output } }; output }, - "", - &["_self", "other"], + " Sorts the [`Self::added_entities`] list.\n You must call this after adding entities to the list via\n [`Self::add_entity`].", + &["_self"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_render::view::Hdr, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_render_visible_entities_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_render::view::RenderVisibleEntities, - >::new(world) - .register_documented( - "clone", - |_self: R<::bevy_render::view::RenderVisibleEntities>| { - let output: V<::bevy_render::view::RenderVisibleEntities> = { - { - let output: V<::bevy_render::view::RenderVisibleEntities> = - <::bevy_render::view::RenderVisibleEntities as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_render::view::RenderVisibleEntities, + ::bevy_render::view::RenderVisibleEntitiesClass, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } @@ -662,16 +614,16 @@ pub(crate) fn register_globals_uniform_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_shader_storage_buffer_functions(world: &mut World) { +pub(crate) fn register_shader_buffer_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_render::storage::ShaderStorageBuffer, + ::bevy_render::storage::ShaderBuffer, >::new(world) .register_documented( "clone", - |_self: R<::bevy_render::storage::ShaderStorageBuffer>| { - let output: V<::bevy_render::storage::ShaderStorageBuffer> = { + |_self: R<::bevy_render::storage::ShaderBuffer>| { + let output: V<::bevy_render::storage::ShaderBuffer> = { { - let output: V<::bevy_render::storage::ShaderStorageBuffer> = <::bevy_render::storage::ShaderStorageBuffer as ::std::clone::Clone>::clone( + let output: V<::bevy_render::storage::ShaderBuffer> = <::bevy_render::storage::ShaderBuffer as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -683,12 +635,48 @@ pub(crate) fn register_shader_storage_buffer_functions(world: &mut World) { "", &["_self"], ) + .register_documented( + "resize", + |mut _self: M<::bevy_render::storage::ShaderBuffer>, size: u64| { + let output: () = { + { + let output: () = ::bevy_render::storage::ShaderBuffer::resize( + &mut _self, + size, + ) + .into(); + output + } + }; + output + }, + " Resizes the buffer to the new size.\n If CPU data is present, it will be truncated or zero-extended.\n Does not preserve GPU data when the descriptor changes.", + &["_self", "size"], + ) + .register_documented( + "resize_in_place", + |mut _self: M<::bevy_render::storage::ShaderBuffer>, size: u64| { + let output: () = { + { + let output: () = ::bevy_render::storage::ShaderBuffer::resize_in_place( + &mut _self, + size, + ) + .into(); + output + } + }; + output + }, + " Resizes the buffer to the new size, preserving existing data.\n If CPU data is present, it will be truncated or zero-extended.\n If no CPU data is present, sets `copy_on_resize` to preserve GPU data.", + &["_self", "size"], + ) .register_documented( "with_size", |size: usize, asset_usage: V<::bevy_asset::RenderAssetUsages>| { - let output: V<::bevy_render::storage::ShaderStorageBuffer> = { + let output: V<::bevy_render::storage::ShaderBuffer> = { { - let output: V<::bevy_render::storage::ShaderStorageBuffer> = ::bevy_render::storage::ShaderStorageBuffer::with_size( + let output: V<::bevy_render::storage::ShaderBuffer> = ::bevy_render::storage::ShaderBuffer::with_size( size, asset_usage.into_inner(), ) @@ -705,7 +693,7 @@ pub(crate) fn register_shader_storage_buffer_functions(world: &mut World) { let mut registry = registry.write(); registry .register_type_data::< - ::bevy_render::storage::ShaderStorageBuffer, + ::bevy_render::storage::ShaderBuffer, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } @@ -831,6 +819,37 @@ pub(crate) fn register_color_grading_section_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_render_shadow_map_visible_entities_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_render::view::RenderShadowMapVisibleEntities, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_render::view::RenderShadowMapVisibleEntities>| { + let output: V<::bevy_render::view::RenderShadowMapVisibleEntities> = { + { + let output: V< + ::bevy_render::view::RenderShadowMapVisibleEntities, + > = <::bevy_render::view::RenderShadowMapVisibleEntities as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_render::view::RenderShadowMapVisibleEntities, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_screenshot_captured_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_render::view::screenshot::ScreenshotCaptured, @@ -907,24 +926,23 @@ pub(crate) fn register_screenshot_functions(world: &mut World) { impl Plugin for BevyRenderScriptingPlugin { fn build(&self, app: &mut App) { let mut world = app.world_mut(); - register_alpha_mode_functions(&mut world); register_msaa_functions(&mut world); register_main_entity_functions(&mut world); register_occlusion_culling_functions(&mut world); register_render_entity_functions(&mut world); register_sync_to_render_world_functions(&mut world); register_color_grading_functions(&mut world); - register_hdr_functions(&mut world); - register_render_visible_entities_functions(&mut world); + register_render_visible_entities_class_functions(&mut world); register_camera_render_graph_functions(&mut world); register_temporal_jitter_functions(&mut world); register_mip_bias_functions(&mut world); register_globals_uniform_functions(&mut world); - register_shader_storage_buffer_functions(&mut world); + register_shader_buffer_functions(&mut world); register_readback_complete_functions(&mut world); register_temporary_render_entity_functions(&mut world); register_color_grading_global_functions(&mut world); register_color_grading_section_functions(&mut world); + register_render_shadow_map_visible_entities_functions(&mut world); register_screenshot_captured_functions(&mut world); register_screenshot_functions(&mut world); } diff --git a/crates/bindings/bevy_scene_bms_bindings/Cargo.toml b/crates/bindings/bevy_scene_bms_bindings/Cargo.toml index 4556a64b1d..715bd8dbd8 100644 --- a/crates/bindings/bevy_scene_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_scene_bms_bindings/Cargo.toml @@ -20,29 +20,27 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_scene = { version = "0.18.1", features = ["serialize"], default-features = true} +bevy_scene = { version = "0.19.0", features = [], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_camera = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_log = { version = "^0.19.0", features = [], default-features = true} -bevy_platform = { version = "^0.18.0", features = ["alloc", "serialize", "std"], default-features = true} +bevy_platform = { version = "^0.19.0", features = ["alloc", "futures-lite", "serialize", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_scene_macros = { version = "^0.19.0", features = [], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} -serde = { version = "^1.0", features = [], default-features = true} - -uuid = { version = "^1.13.1", features = ["serde"], default-features = false} +variadics_please = { version = "^1.0", features = [], default-features = true} diff --git a/crates/bindings/bevy_scene_bms_bindings/src/lib.rs b/crates/bindings/bevy_scene_bms_bindings/src/lib.rs index 34f4f49fa9..167ada24f2 100644 --- a/crates/bindings/bevy_scene_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_scene_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -12,270 +13,37 @@ use bevy_mod_scripting_bindings::{ }; use bevy_mod_scripting_derive::script_bindings; pub struct BevySceneScriptingPlugin; -pub(crate) fn register_dynamic_scene_root_functions(world: &mut World) { +pub(crate) fn register_scene_component_info_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_scene::DynamicSceneRoot, + ::bevy_scene::SceneComponentInfo, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_scene::DynamicSceneRoot>| { - let output: () = { - { - let output: () = <::bevy_scene::DynamicSceneRoot as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_scene::DynamicSceneRoot>| { - let output: V<::bevy_scene::DynamicSceneRoot> = { - { - let output: V<::bevy_scene::DynamicSceneRoot> = <::bevy_scene::DynamicSceneRoot as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_scene::DynamicSceneRoot>, - other: R<::bevy_scene::DynamicSceneRoot>| - { - let output: bool = { - { - let output: bool = <::bevy_scene::DynamicSceneRoot as ::std::cmp::PartialEq< - ::bevy_scene::DynamicSceneRoot, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_scene::DynamicSceneRoot, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_scene_root_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_scene::SceneRoot, - >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_scene::SceneRoot>| { - let output: () = { - { - let output: () = <::bevy_scene::SceneRoot as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_scene::SceneRoot>| { - let output: V<::bevy_scene::SceneRoot> = { - { - let output: V<::bevy_scene::SceneRoot> = <::bevy_scene::SceneRoot as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - |_self: R<::bevy_scene::SceneRoot>, other: R<::bevy_scene::SceneRoot>| { - let output: bool = { - { - let output: bool = <::bevy_scene::SceneRoot as ::std::cmp::PartialEq< - ::bevy_scene::SceneRoot, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_scene::SceneRoot, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_scene_instance_ready_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_scene::SceneInstanceReady, - >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_scene::SceneInstanceReady>| { - let output: () = { - { - let output: () = <::bevy_scene::SceneInstanceReady as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_scene::SceneInstanceReady>| { - let output: V<::bevy_scene::SceneInstanceReady> = { - { - let output: V<::bevy_scene::SceneInstanceReady> = <::bevy_scene::SceneInstanceReady as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_scene::SceneInstanceReady>, - other: R<::bevy_scene::SceneInstanceReady>| - { - let output: bool = { - { - let output: bool = <::bevy_scene::SceneInstanceReady as ::std::cmp::PartialEq< - ::bevy_scene::SceneInstanceReady, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_scene::SceneInstanceReady, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_instance_id_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_scene::InstanceId, - >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_scene::InstanceId>| { - let output: () = { - { - let output: () = <::bevy_scene::InstanceId as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_scene::InstanceId>| { - let output: V<::bevy_scene::InstanceId> = { - { - let output: V<::bevy_scene::InstanceId> = <::bevy_scene::InstanceId as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - |_self: R<::bevy_scene::InstanceId>, other: R<::bevy_scene::InstanceId>| { - let output: bool = { - { - let output: bool = <::bevy_scene::InstanceId as ::std::cmp::PartialEq< - ::bevy_scene::InstanceId, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .register_documented( + "clone", + |_self: R<::bevy_scene::SceneComponentInfo>| { + let output: V<::bevy_scene::SceneComponentInfo> = { + { + let output: V<::bevy_scene::SceneComponentInfo> = + <::bevy_scene::SceneComponentInfo as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_scene::InstanceId, + ::bevy_scene::SceneComponentInfo, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } impl Plugin for BevySceneScriptingPlugin { fn build(&self, app: &mut App) { let mut world = app.world_mut(); - register_dynamic_scene_root_functions(&mut world); - register_scene_root_functions(&mut world); - register_scene_instance_ready_functions(&mut world); - register_instance_id_functions(&mut world); + register_scene_component_info_functions(&mut world); } } diff --git a/crates/bindings/bevy_sprite_bms_bindings/Cargo.toml b/crates/bindings/bevy_sprite_bms_bindings/Cargo.toml index ae0bf6e3a8..87f1b033eb 100644 --- a/crates/bindings/bevy_sprite_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_sprite_bms_bindings/Cargo.toml @@ -20,36 +20,38 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_sprite = { version = "0.18.1", features = ["bevy_picking", "bevy_text", "bevy_window"], default-features = true} +bevy_sprite = { version = "0.19.0", features = ["bevy_picking", "bevy_text", "bevy_window"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_camera = { version = "^0.18.0", features = [], default-features = true} +bevy_camera = { version = "^0.19.0", features = [], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_image = { version = "^0.18.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} +bevy_image = { version = "^0.19.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_log = { version = "^0.19.0", features = [], default-features = true} -bevy_mesh = { version = "^0.18.0", features = ["bevy_mikktspace", "morph"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_picking = { version = "^0.18.0", features = ["mesh_picking"], default-features = true} +bevy_mesh = { version = "^0.19.0", features = ["bevy_mikktspace", "morph"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_picking = { version = "^0.19.0", features = ["mesh_picking"], default-features = true} -bevy_text = { version = "^0.18.0", features = ["default_font"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_text = { version = "^0.19.0", features = ["default_font"], default-features = true} -bevy_window = { version = "^0.18.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} + +bevy_window = { version = "^0.19.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} radsort = { version = "^0.1", features = [], default-features = true} diff --git a/crates/bindings/bevy_sprite_bms_bindings/src/lib.rs b/crates/bindings/bevy_sprite_bms_bindings/src/lib.rs index ebe68ad253..f6bfaeb1fd 100644 --- a/crates/bindings/bevy_sprite_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_sprite_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -217,18 +218,35 @@ pub(crate) fn register_sprite_image_mode_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_border_rect_functions(world: &mut World) { +pub(crate) fn register_sprite_mesh_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_sprite::BorderRect, + ::bevy_sprite::SpriteMesh, >::new(world) .register_documented( - "add", - |_self: V<::bevy_sprite::BorderRect>, rhs: V<::bevy_sprite::BorderRect>| { - let output: V<::bevy_sprite::BorderRect> = { + "clone", + |_self: R<::bevy_sprite::SpriteMesh>| { + let output: V<::bevy_sprite::SpriteMesh> = { { - let output: V<::bevy_sprite::BorderRect> = <::bevy_sprite::BorderRect as ::std::ops::Add< - ::bevy_sprite::BorderRect, - >>::add(_self.into_inner(), rhs.into_inner()) + let output: V<::bevy_sprite::SpriteMesh> = <::bevy_sprite::SpriteMesh as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_sprite::SpriteMesh>, other: R<::bevy_sprite::SpriteMesh>| { + let output: bool = { + { + let output: bool = <::bevy_sprite::SpriteMesh as ::std::cmp::PartialEq< + ::bevy_sprite::SpriteMesh, + >>::eq(&_self, &other) .into(); output } @@ -236,8 +254,37 @@ pub(crate) fn register_border_rect_functions(world: &mut World) { output }, "", - &["_self", "rhs"], + &["_self", "other"], ) + .register_documented( + "sized", + |custom_size: V<::bevy_math::Vec2>| { + let output: V<::bevy_sprite::SpriteMesh> = { + { + let output: V<::bevy_sprite::SpriteMesh> = ::bevy_sprite::SpriteMesh::sized( + custom_size.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Create a Sprite with a custom size", + &["custom_size"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_sprite::SpriteMesh, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_border_rect_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_sprite::BorderRect, + >::new(world) .register_documented( "all", |inset: f32| { @@ -290,23 +337,6 @@ pub(crate) fn register_border_rect_functions(world: &mut World) { "", &["_self"], ) - .register_documented( - "div", - |_self: V<::bevy_sprite::BorderRect>, rhs: f32| { - let output: V<::bevy_sprite::BorderRect> = { - { - let output: V<::bevy_sprite::BorderRect> = <::bevy_sprite::BorderRect as ::std::ops::Div< - f32, - >>::div(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "eq", |_self: R<::bevy_sprite::BorderRect>, other: R<::bevy_sprite::BorderRect>| { @@ -323,40 +353,6 @@ pub(crate) fn register_border_rect_functions(world: &mut World) { }, "", &["_self", "other"], - ) - .register_documented( - "mul", - |_self: V<::bevy_sprite::BorderRect>, rhs: f32| { - let output: V<::bevy_sprite::BorderRect> = { - { - let output: V<::bevy_sprite::BorderRect> = <::bevy_sprite::BorderRect as ::std::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "sub", - |_self: V<::bevy_sprite::BorderRect>, rhs: V<::bevy_sprite::BorderRect>| { - let output: V<::bevy_sprite::BorderRect> = { - { - let output: V<::bevy_sprite::BorderRect> = <::bevy_sprite::BorderRect as ::std::ops::Sub< - ::bevy_sprite::BorderRect, - >>::sub(_self.into_inner(), rhs.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); @@ -562,6 +558,51 @@ pub(crate) fn register_anchor_functions(world: &mut World) { .register_type_data::<::bevy_sprite::Anchor, bevy_mod_scripting_bindings::MarkAsGenerated>( ); } +pub(crate) fn register_sprite_alpha_mode_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_sprite::SpriteAlphaMode, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_sprite::SpriteAlphaMode>| { + let output: V<::bevy_sprite::SpriteAlphaMode> = { + { + let output: V<::bevy_sprite::SpriteAlphaMode> = + <::bevy_sprite::SpriteAlphaMode as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_sprite::SpriteAlphaMode>, other: R<::bevy_sprite::SpriteAlphaMode>| { + let output: bool = { + { + let output: bool = <::bevy_sprite::SpriteAlphaMode as ::std::cmp::PartialEq< + ::bevy_sprite::SpriteAlphaMode, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_sprite::SpriteAlphaMode, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_text_2_d_shadow_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_sprite::Text2dShadow, @@ -620,11 +661,13 @@ impl Plugin for BevySpriteScriptingPlugin { register_text_2_d_functions(&mut world); register_sprite_functions(&mut world); register_sprite_image_mode_functions(&mut world); + register_sprite_mesh_functions(&mut world); register_border_rect_functions(&mut world); register_slice_scale_mode_functions(&mut world); register_texture_slicer_functions(&mut world); register_sprite_scaling_mode_functions(&mut world); register_anchor_functions(&mut world); + register_sprite_alpha_mode_functions(&mut world); register_text_2_d_shadow_functions(&mut world); } } diff --git a/crates/bindings/bevy_sprite_render_bms_bindings/Cargo.toml b/crates/bindings/bevy_sprite_render_bms_bindings/Cargo.toml index b00e53fed5..d34936c646 100644 --- a/crates/bindings/bevy_sprite_render_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_sprite_render_bms_bindings/Cargo.toml @@ -20,42 +20,44 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_sprite_render = { version = "0.18.1", features = ["bevy_text", "webgl"], default-features = true} +bevy_sprite_render = { version = "0.19.0", features = ["bevy_text", "webgl"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_camera = { version = "^0.18.0", features = [], default-features = true} +bevy_camera = { version = "^0.19.0", features = [], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_core_pipeline = { version = "^0.18.0", features = ["tonemapping_luts", "webgl"], default-features = true} +bevy_core_pipeline = { version = "^0.19.0", features = ["tonemapping_luts", "webgl"], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_image = { version = "^0.18.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} +bevy_image = { version = "^0.19.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_material = { version = "^0.19.0", features = [], default-features = true} -bevy_mesh = { version = "^0.18.0", features = ["bevy_mikktspace", "morph"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_mesh = { version = "^0.19.0", features = ["bevy_mikktspace", "morph"], default-features = true} -bevy_render = { version = "^0.18.0", features = ["morph", "multi_threaded", "webgl"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_shader = { version = "^0.18.0", features = [], default-features = true} +bevy_render = { version = "^0.19.0", features = ["morph", "multi_threaded", "reflect_auto_register", "webgl"], default-features = true} -bevy_sprite = { version = "^0.18.0", features = ["bevy_picking", "bevy_text", "bevy_window"], default-features = true} +bevy_shader = { version = "^0.19.0", features = [], default-features = true} -bevy_text = { version = "^0.18.0", features = ["default_font"], default-features = true} +bevy_sprite = { version = "^0.19.0", features = ["bevy_picking", "bevy_text", "bevy_window"], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_text = { version = "^0.19.0", features = ["default_font"], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} + +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} bitflags = { version = "^2.3", features = [], default-features = true} diff --git a/crates/bindings/bevy_sprite_render_bms_bindings/src/lib.rs b/crates/bindings/bevy_sprite_render_bms_bindings/src/lib.rs index b1a996d084..a54770fa1a 100644 --- a/crates/bindings/bevy_sprite_render_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_sprite_render_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -40,6 +41,71 @@ pub(crate) fn register_color_material_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_sprite_material_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_sprite_render::SpriteMaterial, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_sprite_render::SpriteMaterial>| { + let output: V<::bevy_sprite_render::SpriteMaterial> = { + { + let output: V<::bevy_sprite_render::SpriteMaterial> = + <::bevy_sprite_render::SpriteMaterial as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_sprite_render::SpriteMaterial>, + other: R<::bevy_sprite_render::SpriteMaterial>| { + let output: bool = { + { + let output: bool = + <::bevy_sprite_render::SpriteMaterial as ::std::cmp::PartialEq< + ::bevy_sprite_render::SpriteMaterial, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "from_sprite_mesh", + |sprite: V<::bevy_sprite::SpriteMesh>| { + let output: V<::bevy_sprite_render::SpriteMaterial> = { + { + let output: V<::bevy_sprite_render::SpriteMaterial> = + ::bevy_sprite_render::SpriteMaterial::from_sprite_mesh(sprite.into_inner()) + .into(); + output + } + }; + output + }, + " Use the [`SpriteMesh`] to build a new material.", + &["sprite"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_sprite_render::SpriteMaterial, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_alpha_mode_2_d_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_sprite_render::AlphaMode2d, @@ -151,60 +217,41 @@ pub(crate) fn register_wireframe_2_d_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_sprite_render::Wireframe2d, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_sprite_render::Wireframe2d>| { - let output: () = { - { - let output: () = <::bevy_sprite_render::Wireframe2d as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_sprite_render::Wireframe2d>| { - let output: V<::bevy_sprite_render::Wireframe2d> = { - { - let output: V<::bevy_sprite_render::Wireframe2d> = <::bevy_sprite_render::Wireframe2d as ::std::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_sprite_render::Wireframe2d>| { + let output: V<::bevy_sprite_render::Wireframe2d> = { + { + let output: V<::bevy_sprite_render::Wireframe2d> = + <::bevy_sprite_render::Wireframe2d as ::std::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_sprite_render::Wireframe2d>, - other: R<::bevy_sprite_render::Wireframe2d>| - { - let output: bool = { - { - let output: bool = <::bevy_sprite_render::Wireframe2d as ::std::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_sprite_render::Wireframe2d>, + other: R<::bevy_sprite_render::Wireframe2d>| { + let output: bool = { + { + let output: bool = + <::bevy_sprite_render::Wireframe2d as ::std::cmp::PartialEq< ::bevy_sprite_render::Wireframe2d, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -247,60 +294,41 @@ pub(crate) fn register_no_wireframe_2_d_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_sprite_render::NoWireframe2d, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_sprite_render::NoWireframe2d>| { - let output: () = { - { - let output: () = <::bevy_sprite_render::NoWireframe2d as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_sprite_render::NoWireframe2d>| { - let output: V<::bevy_sprite_render::NoWireframe2d> = { - { - let output: V<::bevy_sprite_render::NoWireframe2d> = <::bevy_sprite_render::NoWireframe2d as ::std::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_sprite_render::NoWireframe2d>| { + let output: V<::bevy_sprite_render::NoWireframe2d> = { + { + let output: V<::bevy_sprite_render::NoWireframe2d> = + <::bevy_sprite_render::NoWireframe2d as ::std::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_sprite_render::NoWireframe2d>, - other: R<::bevy_sprite_render::NoWireframe2d>| - { - let output: bool = { - { - let output: bool = <::bevy_sprite_render::NoWireframe2d as ::std::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_sprite_render::NoWireframe2d>, + other: R<::bevy_sprite_render::NoWireframe2d>| { + let output: bool = { + { + let output: bool = + <::bevy_sprite_render::NoWireframe2d as ::std::cmp::PartialEq< ::bevy_sprite_render::NoWireframe2d, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -313,60 +341,43 @@ pub(crate) fn register_mesh_2_d_wireframe_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_sprite_render::Mesh2dWireframe, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_sprite_render::Mesh2dWireframe>| { - let output: () = { - { - let output: () = <::bevy_sprite_render::Mesh2dWireframe as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_sprite_render::Mesh2dWireframe>| { - let output: V<::bevy_sprite_render::Mesh2dWireframe> = { - { - let output: V<::bevy_sprite_render::Mesh2dWireframe> = <::bevy_sprite_render::Mesh2dWireframe as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_sprite_render::Mesh2dWireframe>, - other: R<::bevy_sprite_render::Mesh2dWireframe>| - { - let output: bool = { - { - let output: bool = <::bevy_sprite_render::Mesh2dWireframe as ::std::cmp::PartialEq< + .register_documented( + "clone", + |_self: R<::bevy_sprite_render::Mesh2dWireframe>| { + let output: V<::bevy_sprite_render::Mesh2dWireframe> = { + { + let output: V<::bevy_sprite_render::Mesh2dWireframe> = + <::bevy_sprite_render::Mesh2dWireframe as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_sprite_render::Mesh2dWireframe>, + other: R<::bevy_sprite_render::Mesh2dWireframe>| { + let output: bool = { + { + let output: bool = + <::bevy_sprite_render::Mesh2dWireframe as ::std::cmp::PartialEq< ::bevy_sprite_render::Mesh2dWireframe, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -477,6 +488,184 @@ pub(crate) fn register_tile_data_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_tile_orientation_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_sprite_render::TileOrientation, + >::new(world) + .register_documented( + "and_then", + | + _self: R<::bevy_sprite_render::TileOrientation>, + then: V<::bevy_sprite_render::TileOrientation>| + { + let output: V<::bevy_sprite_render::TileOrientation> = { + { + let output: V<::bevy_sprite_render::TileOrientation> = ::bevy_sprite_render::TileOrientation::and_then( + &_self, + then.into_inner(), + ) + .into(); + output + } + }; + output + }, + " This method treats each [`TileOrientation`] as the transform from\n [`TileOrientation::Default`] to that orientation.\n Produce a [`TileOrientation`] that will give the same effect as\n applying this transform, then applying `then`.", + &["_self", "then"], + ) + .register_documented( + "apply_to_ivec2", + | + _self: R<::bevy_sprite_render::TileOrientation>, + pos: R<::bevy_math::IVec2>| + { + let output: V<::bevy_math::IVec2> = { + { + let output: V<::bevy_math::IVec2> = ::bevy_sprite_render::TileOrientation::apply_to_ivec2( + &_self, + &pos, + ) + .into(); + output + } + }; + output + }, + " This method treats the [`TileOrientation`] as the transform from\n [`TileOrientation::Default`] to this orientation.\n Apply this transformation to an [`IVec2`]", + &["_self", "pos"], + ) + .register_documented( + "clone", + |_self: R<::bevy_sprite_render::TileOrientation>| { + let output: V<::bevy_sprite_render::TileOrientation> = { + { + let output: V<::bevy_sprite_render::TileOrientation> = <::bevy_sprite_render::TileOrientation as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_sprite_render::TileOrientation>, + other: R<::bevy_sprite_render::TileOrientation>| + { + let output: bool = { + { + let output: bool = <::bevy_sprite_render::TileOrientation as ::std::cmp::PartialEq< + ::bevy_sprite_render::TileOrientation, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "from_bools", + |mirror_h: bool, mirror_v: bool, mirror_d: bool| { + let output: V<::bevy_sprite_render::TileOrientation> = { + { + let output: V<::bevy_sprite_render::TileOrientation> = ::bevy_sprite_render::TileOrientation::from_bools( + mirror_h, + mirror_v, + mirror_d, + ) + .into(); + output + } + }; + output + }, + " Create a [`TileOrientation`] based on whether each mirror is applied", + &["mirror_h", "mirror_v", "mirror_d"], + ) + .register_documented( + "inverse", + |_self: R<::bevy_sprite_render::TileOrientation>| { + let output: V<::bevy_sprite_render::TileOrientation> = { + { + let output: V<::bevy_sprite_render::TileOrientation> = ::bevy_sprite_render::TileOrientation::inverse( + &_self, + ) + .into(); + output + } + }; + output + }, + " This method treats each [`TileOrientation`] as the transform from\n [`TileOrientation::Default`] to that orientation.\n Find the [`TileOrientation`] that when applied will undo the effect\n of this [`TileOrientation`]", + &["_self"], + ) + .register_documented( + "mirror_d", + |_self: R<::bevy_sprite_render::TileOrientation>| { + let output: bool = { + { + let output: bool = ::bevy_sprite_render::TileOrientation::mirror_d( + &_self, + ) + .into(); + output + } + }; + output + }, + " True if the tile is mirrored diagonally", + &["_self"], + ) + .register_documented( + "mirror_h", + |_self: R<::bevy_sprite_render::TileOrientation>| { + let output: bool = { + { + let output: bool = ::bevy_sprite_render::TileOrientation::mirror_h( + &_self, + ) + .into(); + output + } + }; + output + }, + " True if the tile is mirrored horizontally", + &["_self"], + ) + .register_documented( + "mirror_v", + |_self: R<::bevy_sprite_render::TileOrientation>| { + let output: bool = { + { + let output: bool = ::bevy_sprite_render::TileOrientation::mirror_v( + &_self, + ) + .into(); + output + } + }; + output + }, + " True if the tile is mirrored vertically", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_sprite_render::TileOrientation, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_tilemap_chunk_tile_data_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_sprite_render::TilemapChunkTileData, @@ -511,6 +700,7 @@ impl Plugin for BevySpriteRenderScriptingPlugin { fn build(&self, app: &mut App) { let mut world = app.world_mut(); register_color_material_functions(&mut world); + register_sprite_material_functions(&mut world); register_alpha_mode_2_d_functions(&mut world); register_wireframe_2_d_material_functions(&mut world); register_wireframe_2_d_config_functions(&mut world); @@ -521,6 +711,7 @@ impl Plugin for BevySpriteRenderScriptingPlugin { register_tilemap_chunk_mesh_cache_functions(&mut world); register_tilemap_chunk_functions(&mut world); register_tile_data_functions(&mut world); + register_tile_orientation_functions(&mut world); register_tilemap_chunk_tile_data_functions(&mut world); } } diff --git a/crates/bindings/bevy_text_bms_bindings/Cargo.toml b/crates/bindings/bevy_text_bms_bindings/Cargo.toml index ae327b3f4e..9a670ec96d 100644 --- a/crates/bindings/bevy_text_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_text_bms_bindings/Cargo.toml @@ -20,33 +20,33 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_text = { version = "0.18.1", features = ["default_font"], default-features = true} +bevy_text = { version = "0.19.0", features = ["default_font"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_image = { version = "^0.18.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} +bevy_image = { version = "^0.19.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} -bevy_log = { version = "^0.18.0", features = [], default-features = true} +bevy_log = { version = "^0.19.0", features = [], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} - -cosmic-text = { version = "^0.16", features = [], default-features = true} +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} serde = { version = "^1", features = [], default-features = true} +swash = { version = "^0.2.6", features = [], default-features = true} + sys-locale = { version = "^0.3.0", features = [], default-features = true} diff --git a/crates/bindings/bevy_text_bms_bindings/src/lib.rs b/crates/bindings/bevy_text_bms_bindings/src/lib.rs index ebe77ce180..3712ad2842 100644 --- a/crates/bindings/bevy_text_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_text_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -49,6 +50,23 @@ pub(crate) fn register_font_hinting_functions(world: &mut World) { }, "", &["_self", "other"], + ) + .register_documented( + "is_enabled", + |_self: V<::bevy_text::FontHinting>| { + let output: bool = { + { + let output: bool = ::bevy_text::FontHinting::is_enabled( + _self.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Returns true if font hinting is enabled.", + &["_self"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); @@ -58,16 +76,175 @@ pub(crate) fn register_font_hinting_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_font_weight_functions(world: &mut World) { +pub(crate) fn register_font_size_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_text::FontWeight, + ::bevy_text::FontSize, >::new(world) .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_text::FontWeight>| { - let output: () = { + "clone", + |_self: R<::bevy_text::FontSize>| { + let output: V<::bevy_text::FontSize> = { + { + let output: V<::bevy_text::FontSize> = <::bevy_text::FontSize as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_text::FontSize>, other: R<::bevy_text::FontSize>| { + let output: bool = { + { + let output: bool = <::bevy_text::FontSize as ::std::cmp::PartialEq< + ::bevy_text::FontSize, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "eval", + | + _self: V<::bevy_text::FontSize>, + logical_viewport_size: V<::bevy_math::Vec2>, + rem_size: f32| + { + let output: f32 = { + { + let output: f32 = ::bevy_text::FontSize::eval( + _self.into_inner(), + logical_viewport_size.into_inner(), + rem_size, + ) + .into(); + output + } + }; + output + }, + " Evaluate the font size to a value in logical pixels", + &["_self", "logical_viewport_size", "rem_size"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::bevy_text::FontSize, bevy_mod_scripting_bindings::MarkAsGenerated>( + ); +} +pub(crate) fn register_font_smoothing_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_text::FontSmoothing, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_text::FontSmoothing>| { + let output: V<::bevy_text::FontSmoothing> = { + { + let output: V<::bevy_text::FontSmoothing> = <::bevy_text::FontSmoothing as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_text::FontSmoothing>, other: R<::bevy_text::FontSmoothing>| { + let output: bool = { + { + let output: bool = <::bevy_text::FontSmoothing as ::std::cmp::PartialEq< + ::bevy_text::FontSmoothing, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_text::FontSmoothing, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_font_source_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_text::FontSource, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_text::FontSource>| { + let output: V<::bevy_text::FontSource> = { + { + let output: V<::bevy_text::FontSource> = <::bevy_text::FontSource as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_text::FontSource>, other: R<::bevy_text::FontSource>| { + let output: bool = { + { + let output: bool = <::bevy_text::FontSource as ::std::cmp::PartialEq< + ::bevy_text::FontSource, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_text::FontSource, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_font_style_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_text::FontStyle, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_text::FontStyle>| { + let output: V<::bevy_text::FontStyle> = { { - let output: () = <::bevy_text::FontWeight as ::std::cmp::Eq>::assert_receiver_is_total_eq( + let output: V<::bevy_text::FontStyle> = <::bevy_text::FontStyle as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -79,6 +256,33 @@ pub(crate) fn register_font_weight_functions(world: &mut World) { "", &["_self"], ) + .register_documented( + "eq", + |_self: R<::bevy_text::FontStyle>, other: R<::bevy_text::FontStyle>| { + let output: bool = { + { + let output: bool = <::bevy_text::FontStyle as ::std::cmp::PartialEq< + ::bevy_text::FontStyle, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::bevy_text::FontStyle, bevy_mod_scripting_bindings::MarkAsGenerated>( + ); +} +pub(crate) fn register_font_weight_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_text::FontWeight, + >::new(world) .register_documented( "clamp", |_self: V<::bevy_text::FontWeight>| { @@ -138,16 +342,16 @@ pub(crate) fn register_font_weight_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_justify_functions(world: &mut World) { +pub(crate) fn register_font_width_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_text::Justify, + ::bevy_text::FontWidth, >::new(world) .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_text::Justify>| { - let output: () = { + "clone", + |_self: R<::bevy_text::FontWidth>| { + let output: V<::bevy_text::FontWidth> = { { - let output: () = <::bevy_text::Justify as ::std::cmp::Eq>::assert_receiver_is_total_eq( + let output: V<::bevy_text::FontWidth> = <::bevy_text::FontWidth as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -159,6 +363,33 @@ pub(crate) fn register_justify_functions(world: &mut World) { "", &["_self"], ) + .register_documented( + "eq", + |_self: R<::bevy_text::FontWidth>, other: R<::bevy_text::FontWidth>| { + let output: bool = { + { + let output: bool = <::bevy_text::FontWidth as ::std::cmp::PartialEq< + ::bevy_text::FontWidth, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::bevy_text::FontWidth, bevy_mod_scripting_bindings::MarkAsGenerated>( + ); +} +pub(crate) fn register_justify_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_text::Justify, + >::new(world) .register_documented( "clone", |_self: R<::bevy_text::Justify>| { @@ -202,23 +433,6 @@ pub(crate) fn register_line_break_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_text::LineBreak, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_text::LineBreak>| { - let output: () = { - { - let output: () = <::bevy_text::LineBreak as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_text::LineBreak>| { @@ -415,41 +629,6 @@ pub(crate) fn register_text_font_functions(world: &mut World) { "", &["_self", "other"], ) - .register_documented( - "from_font_size", - |font_size: f32| { - let output: V<::bevy_text::TextFont> = { - { - let output: V<::bevy_text::TextFont> = ::bevy_text::TextFont::from_font_size( - font_size, - ) - .into(); - output - } - }; - output - }, - " Returns a new [`TextFont`] with the specified font size.", - &["font_size"], - ) - .register_documented( - "with_font_size", - |_self: V<::bevy_text::TextFont>, font_size: f32| { - let output: V<::bevy_text::TextFont> = { - { - let output: V<::bevy_text::TextFont> = ::bevy_text::TextFont::with_font_size( - _self.into_inner(), - font_size, - ) - .into(); - output - } - }; - output - }, - " Returns this [`TextFont`] with the specified font size.", - &["_self", "font_size"], - ) .register_documented( "with_font_smoothing", | @@ -499,13 +678,12 @@ pub(crate) fn register_text_layout_functions(world: &mut World) { &["_self"], ) .register_documented( - "new", - |justify: V<::bevy_text::Justify>, linebreak: V<::bevy_text::LineBreak>| { + "justify", + |justify: V<::bevy_text::Justify>| { let output: V<::bevy_text::TextLayout> = { { - let output: V<::bevy_text::TextLayout> = ::bevy_text::TextLayout::new( + let output: V<::bevy_text::TextLayout> = ::bevy_text::TextLayout::justify( justify.into_inner(), - linebreak.into_inner(), ) .into(); output @@ -513,16 +691,16 @@ pub(crate) fn register_text_layout_functions(world: &mut World) { }; output }, - " Makes a new [`TextLayout`].", - &["justify", "linebreak"], + " Makes a new [`TextLayout`] with the specified [`Justify`].", + &["justify"], ) .register_documented( - "new_with_justify", - |justify: V<::bevy_text::Justify>| { + "linebreak", + |linebreak: V<::bevy_text::LineBreak>| { let output: V<::bevy_text::TextLayout> = { { - let output: V<::bevy_text::TextLayout> = ::bevy_text::TextLayout::new_with_justify( - justify.into_inner(), + let output: V<::bevy_text::TextLayout> = ::bevy_text::TextLayout::linebreak( + linebreak.into_inner(), ) .into(); output @@ -530,15 +708,16 @@ pub(crate) fn register_text_layout_functions(world: &mut World) { }; output }, - " Makes a new [`TextLayout`] with the specified [`Justify`].", - &["justify"], + " Makes a new [`TextLayout`] with the specified [`LineBreak`].", + &["linebreak"], ) .register_documented( - "new_with_linebreak", - |linebreak: V<::bevy_text::LineBreak>| { + "new", + |justify: V<::bevy_text::Justify>, linebreak: V<::bevy_text::LineBreak>| { let output: V<::bevy_text::TextLayout> = { { - let output: V<::bevy_text::TextLayout> = ::bevy_text::TextLayout::new_with_linebreak( + let output: V<::bevy_text::TextLayout> = ::bevy_text::TextLayout::new( + justify.into_inner(), linebreak.into_inner(), ) .into(); @@ -547,15 +726,15 @@ pub(crate) fn register_text_layout_functions(world: &mut World) { }; output }, - " Makes a new [`TextLayout`] with the specified [`LineBreak`].", - &["linebreak"], + " Makes a new [`TextLayout`].", + &["justify", "linebreak"], ) .register_documented( - "new_with_no_wrap", + "no_wrap", || { let output: V<::bevy_text::TextLayout> = { { - let output: V<::bevy_text::TextLayout> = ::bevy_text::TextLayout::new_with_no_wrap() + let output: V<::bevy_text::TextLayout> = ::bevy_text::TextLayout::no_wrap() .into(); output } @@ -810,16 +989,31 @@ pub(crate) fn register_text_bounds_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_font_smoothing_functions(world: &mut World) { +pub(crate) fn register_text_edit_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_text::FontSmoothing, + ::bevy_text::TextEdit, >::new(world) .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_text::FontSmoothing>| { - let output: () = { + "clear_ime_compose", + || { + let output: V<::bevy_text::TextEdit> = { + { + let output: V<::bevy_text::TextEdit> = ::bevy_text::TextEdit::clear_ime_compose() + .into(); + output + } + }; + output + }, + " Convenience constructor for a [`TextEdit::ImeSetCompose`] that clears the preedit.", + &[], + ) + .register_documented( + "clone", + |_self: R<::bevy_text::TextEdit>| { + let output: V<::bevy_text::TextEdit> = { { - let output: () = <::bevy_text::FontSmoothing as ::std::cmp::Eq>::assert_receiver_is_total_eq( + let output: V<::bevy_text::TextEdit> = <::bevy_text::TextEdit as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -831,12 +1025,39 @@ pub(crate) fn register_font_smoothing_functions(world: &mut World) { "", &["_self"], ) + .register_documented( + "eq", + |_self: R<::bevy_text::TextEdit>, other: R<::bevy_text::TextEdit>| { + let output: bool = { + { + let output: bool = <::bevy_text::TextEdit as ::std::cmp::PartialEq< + ::bevy_text::TextEdit, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::bevy_text::TextEdit, bevy_mod_scripting_bindings::MarkAsGenerated>( + ); +} +pub(crate) fn register_line_height_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_text::LineHeight, + >::new(world) .register_documented( "clone", - |_self: R<::bevy_text::FontSmoothing>| { - let output: V<::bevy_text::FontSmoothing> = { + |_self: R<::bevy_text::LineHeight>| { + let output: V<::bevy_text::LineHeight> = { { - let output: V<::bevy_text::FontSmoothing> = <::bevy_text::FontSmoothing as ::std::clone::Clone>::clone( + let output: V<::bevy_text::LineHeight> = <::bevy_text::LineHeight as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -850,11 +1071,11 @@ pub(crate) fn register_font_smoothing_functions(world: &mut World) { ) .register_documented( "eq", - |_self: R<::bevy_text::FontSmoothing>, other: R<::bevy_text::FontSmoothing>| { + |_self: R<::bevy_text::LineHeight>, other: R<::bevy_text::LineHeight>| { let output: bool = { { - let output: bool = <::bevy_text::FontSmoothing as ::std::cmp::PartialEq< - ::bevy_text::FontSmoothing, + let output: bool = <::bevy_text::LineHeight as ::std::cmp::PartialEq< + ::bevy_text::LineHeight, >>::eq(&_self, &other) .into(); output @@ -869,7 +1090,7 @@ pub(crate) fn register_font_smoothing_functions(world: &mut World) { let mut registry = registry.write(); registry .register_type_data::< - ::bevy_text::FontSmoothing, + ::bevy_text::LineHeight, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } @@ -980,11 +1201,17 @@ pub(crate) fn register_computed_text_block_functions(world: &mut World) { ) .register_documented( "needs_rerender", - |_self: R<::bevy_text::ComputedTextBlock>| { + | + _self: R<::bevy_text::ComputedTextBlock>, + is_viewport_size_changed: bool, + is_rem_size_changed: bool| + { let output: bool = { { let output: bool = ::bevy_text::ComputedTextBlock::needs_rerender( &_self, + is_viewport_size_changed, + is_rem_size_changed, ) .into(); output @@ -993,7 +1220,7 @@ pub(crate) fn register_computed_text_block_functions(world: &mut World) { output }, " Indicates if the text needs to be refreshed in [`TextLayoutInfo`].\n Updated automatically by [`detect_text_needs_rerender`] and cleared\n by [`TextPipeline`](crate::TextPipeline) methods.", - &["_self"], + &["_self", "is_viewport_size_changed", "is_rem_size_changed"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); @@ -1003,16 +1230,16 @@ pub(crate) fn register_computed_text_block_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_line_height_functions(world: &mut World) { +pub(crate) fn register_letter_spacing_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_text::LineHeight, + ::bevy_text::LetterSpacing, >::new(world) .register_documented( "clone", - |_self: R<::bevy_text::LineHeight>| { - let output: V<::bevy_text::LineHeight> = { + |_self: R<::bevy_text::LetterSpacing>| { + let output: V<::bevy_text::LetterSpacing> = { { - let output: V<::bevy_text::LineHeight> = <::bevy_text::LineHeight as ::std::clone::Clone>::clone( + let output: V<::bevy_text::LetterSpacing> = <::bevy_text::LetterSpacing as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -1026,11 +1253,11 @@ pub(crate) fn register_line_height_functions(world: &mut World) { ) .register_documented( "eq", - |_self: R<::bevy_text::LineHeight>, other: R<::bevy_text::LineHeight>| { + |_self: R<::bevy_text::LetterSpacing>, other: R<::bevy_text::LetterSpacing>| { let output: bool = { { - let output: bool = <::bevy_text::LineHeight as ::std::cmp::PartialEq< - ::bevy_text::LineHeight, + let output: bool = <::bevy_text::LetterSpacing as ::std::cmp::PartialEq< + ::bevy_text::LetterSpacing, >>::eq(&_self, &other) .into(); output @@ -1045,7 +1272,7 @@ pub(crate) fn register_line_height_functions(world: &mut World) { let mut registry = registry.write(); registry .register_type_data::< - ::bevy_text::LineHeight, + ::bevy_text::LetterSpacing, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } @@ -1078,6 +1305,101 @@ pub(crate) fn register_text_entity_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_font_features_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_text::FontFeatures, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_text::FontFeatures>| { + let output: V<::bevy_text::FontFeatures> = { + { + let output: V<::bevy_text::FontFeatures> = <::bevy_text::FontFeatures as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_text::FontFeatures>, other: R<::bevy_text::FontFeatures>| { + let output: bool = { + { + let output: bool = <::bevy_text::FontFeatures as ::std::cmp::PartialEq< + ::bevy_text::FontFeatures, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_text::FontFeatures, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_font_variations_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_text::FontVariations, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_text::FontVariations>| { + let output: V<::bevy_text::FontVariations> = { + { + let output: V<::bevy_text::FontVariations> = <::bevy_text::FontVariations as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_text::FontVariations>, + other: R<::bevy_text::FontVariations>| + { + let output: bool = { + { + let output: bool = <::bevy_text::FontVariations as ::std::cmp::PartialEq< + ::bevy_text::FontVariations, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_text::FontVariations, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_text_layout_info_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_text::TextLayoutInfo, @@ -1191,7 +1513,7 @@ pub(crate) fn register_run_geometry_functions(world: &mut World) { }; output }, - " Get the center of the underline in the text layout.", + " Returns the center of the underline in the text layout.", &["_self"], ) .register_documented( @@ -1219,73 +1541,10 @@ pub(crate) fn register_run_geometry_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_font_features_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_text::FontFeatures, - >::new(world) - .register_documented( - "clone", - |_self: R<::bevy_text::FontFeatures>| { - let output: V<::bevy_text::FontFeatures> = { - { - let output: V<::bevy_text::FontFeatures> = <::bevy_text::FontFeatures as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - |_self: R<::bevy_text::FontFeatures>, other: R<::bevy_text::FontFeatures>| { - let output: bool = { - { - let output: bool = <::bevy_text::FontFeatures as ::std::cmp::PartialEq< - ::bevy_text::FontFeatures, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_text::FontFeatures, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} pub(crate) fn register_font_feature_tag_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_text::FontFeatureTag, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_text::FontFeatureTag>| { - let output: () = { - { - let output: () = <::bevy_text::FontFeatureTag as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_text::FontFeatureTag>| { @@ -1331,6 +1590,51 @@ pub(crate) fn register_font_feature_tag_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_font_variation_tag_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_text::FontVariationTag, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_text::FontVariationTag>| { + let output: V<::bevy_text::FontVariationTag> = { + { + let output: V<::bevy_text::FontVariationTag> = + <::bevy_text::FontVariationTag as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_text::FontVariationTag>, other: R<::bevy_text::FontVariationTag>| { + let output: bool = { + { + let output: bool = <::bevy_text::FontVariationTag as ::std::cmp::PartialEq< + ::bevy_text::FontVariationTag, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_text::FontVariationTag, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_text_background_color_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_text::TextBackgroundColor, @@ -1377,11 +1681,62 @@ pub(crate) fn register_text_background_color_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } +pub(crate) fn register_preedit_cursor_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_text::PreeditCursor, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_text::PreeditCursor>| { + let output: V<::bevy_text::PreeditCursor> = { + { + let output: V<::bevy_text::PreeditCursor> = <::bevy_text::PreeditCursor as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_text::PreeditCursor>, other: R<::bevy_text::PreeditCursor>| { + let output: bool = { + { + let output: bool = <::bevy_text::PreeditCursor as ::std::cmp::PartialEq< + ::bevy_text::PreeditCursor, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_text::PreeditCursor, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} impl Plugin for BevyTextScriptingPlugin { fn build(&self, app: &mut App) { let mut world = app.world_mut(); register_font_hinting_functions(&mut world); + register_font_size_functions(&mut world); + register_font_smoothing_functions(&mut world); + register_font_source_functions(&mut world); + register_font_style_functions(&mut world); register_font_weight_functions(&mut world); + register_font_width_functions(&mut world); register_justify_functions(&mut world); register_line_break_functions(&mut world); register_strikethrough_functions(&mut world); @@ -1393,17 +1748,21 @@ impl Plugin for BevyTextScriptingPlugin { register_underline_functions(&mut world); register_underline_color_functions(&mut world); register_text_bounds_functions(&mut world); - register_font_smoothing_functions(&mut world); + register_text_edit_functions(&mut world); + register_line_height_functions(&mut world); register_glyph_atlas_info_functions(&mut world); register_glyph_atlas_location_functions(&mut world); register_positioned_glyph_functions(&mut world); register_computed_text_block_functions(&mut world); - register_line_height_functions(&mut world); + register_letter_spacing_functions(&mut world); register_text_entity_functions(&mut world); + register_font_features_functions(&mut world); + register_font_variations_functions(&mut world); register_text_layout_info_functions(&mut world); register_run_geometry_functions(&mut world); - register_font_features_functions(&mut world); register_font_feature_tag_functions(&mut world); + register_font_variation_tag_functions(&mut world); register_text_background_color_functions(&mut world); + register_preedit_cursor_functions(&mut world); } } diff --git a/crates/bindings/bevy_time_bms_bindings/Cargo.toml b/crates/bindings/bevy_time_bms_bindings/Cargo.toml index 1cda7364a7..78dfcc262f 100644 --- a/crates/bindings/bevy_time_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_time_bms_bindings/Cargo.toml @@ -20,15 +20,15 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_time = { version = "0.18.1", features = ["bevy_reflect", "std"], default-features = true} +bevy_time = { version = "0.19.0", features = ["bevy_reflect", "std"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_platform = { version = "^0.18.0", features = ["alloc", "serialize", "std"], default-features = true} +bevy_platform = { version = "^0.19.0", features = ["alloc", "futures-lite", "serialize", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} diff --git a/crates/bindings/bevy_time_bms_bindings/src/lib.rs b/crates/bindings/bevy_time_bms_bindings/src/lib.rs index 98e7ac70a8..712796d0ed 100644 --- a/crates/bindings/bevy_time_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_time_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -79,23 +80,6 @@ pub(crate) fn register_timer_functions(world: &mut World) { " Almost finishes the timer leaving 1 ns of remaining time.\n This can be useful when needing an immediate action without having\n to wait for the set duration of the timer in the first tick.\n # Examples\n ```\n # use bevy_time::*;\n use std::time::Duration;\n let mut timer = Timer::from_seconds(1.5, TimerMode::Once);\n timer.almost_finish();\n assert!(!timer.is_finished());\n assert_eq!(timer.remaining(), Duration::from_nanos(1));\n ```", &["_self"], ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_time::Timer>| { - let output: () = { - { - let output: () = <::bevy_time::Timer as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_time::Timer>| { @@ -488,23 +472,6 @@ pub(crate) fn register_timer_mode_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_time::TimerMode, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_time::TimerMode>| { - let output: () = { - { - let output: () = <::bevy_time::TimerMode as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_time::TimerMode>| { @@ -571,27 +538,22 @@ pub(crate) fn register_virtual_functions(world: &mut World) { registry .register_type_data::<::bevy_time::Virtual, bevy_mod_scripting_bindings::MarkAsGenerated>(); } +pub(crate) fn register_delayed_command_queue_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_time::DelayedCommandQueue, + >::new(world); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_time::DelayedCommandQueue, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_stopwatch_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_time::Stopwatch, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_time::Stopwatch>| { - let output: () = { - { - let output: () = <::bevy_time::Stopwatch as ::core::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_time::Stopwatch>| { @@ -782,6 +744,7 @@ impl Plugin for BevyTimeScriptingPlugin { register_timer_functions(&mut world); register_timer_mode_functions(&mut world); register_virtual_functions(&mut world); + register_delayed_command_queue_functions(&mut world); register_stopwatch_functions(&mut world); } } diff --git a/crates/bindings/bevy_transform_bms_bindings/Cargo.toml b/crates/bindings/bevy_transform_bms_bindings/Cargo.toml index c5697ae442..8dbb89f9ef 100644 --- a/crates/bindings/bevy_transform_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_transform_bms_bindings/Cargo.toml @@ -20,19 +20,19 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_transform = { version = "0.18.1", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_transform = { version = "0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_tasks = { version = "^0.18.0", features = ["async_executor", "futures-lite", "multi_threaded"], default-features = true} +bevy_tasks = { version = "^0.19.0", features = ["async_executor", "futures-lite", "multi_threaded"], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} diff --git a/crates/bindings/bevy_transform_bms_bindings/src/lib.rs b/crates/bindings/bevy_transform_bms_bindings/src/lib.rs index 6a410bdbec..9dd15510f6 100644 --- a/crates/bindings/bevy_transform_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_transform_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -17,42 +18,32 @@ pub(crate) fn register_static_transform_optimizations_functions(world: &mut Worl ::bevy_transform::StaticTransformOptimizations, >::new(world) .register_documented( - "disabled", - || { - let output: V<::bevy_transform::StaticTransformOptimizations> = { - { - let output: V<::bevy_transform::StaticTransformOptimizations> = ::bevy_transform::StaticTransformOptimizations::disabled() - .into(); - output - } - }; - output - }, - " Unconditionally disable static scene optimizations.", - &[], - ) - .register_documented( - "enabled", - || { - let output: V<::bevy_transform::StaticTransformOptimizations> = { + "eq", + | + _self: R<::bevy_transform::StaticTransformOptimizations>, + other: R<::bevy_transform::StaticTransformOptimizations>| + { + let output: bool = { { - let output: V<::bevy_transform::StaticTransformOptimizations> = ::bevy_transform::StaticTransformOptimizations::enabled() + let output: bool = <::bevy_transform::StaticTransformOptimizations as ::core::cmp::PartialEq< + ::bevy_transform::StaticTransformOptimizations, + >>::eq(&_self, &other) .into(); output } }; output }, - " Unconditionally enable static scene optimizations.", - &[], + "", + &["_self", "other"], ) .register_documented( - "from_threshold", - |threshold: f32| { - let output: V<::bevy_transform::StaticTransformOptimizations> = { + "is_enabled", + |_self: R<::bevy_transform::StaticTransformOptimizations>| { + let output: bool = { { - let output: V<::bevy_transform::StaticTransformOptimizations> = ::bevy_transform::StaticTransformOptimizations::from_threshold( - threshold, + let output: bool = ::bevy_transform::StaticTransformOptimizations::is_enabled( + &_self, ) .into(); output @@ -60,8 +51,8 @@ pub(crate) fn register_static_transform_optimizations_functions(world: &mut Worl }; output }, - " If the percentage of moving objects exceeds this threshold, disable static [`Transform`]\n optimizations. This is done because the scene is so dynamic that the cost of tracking static\n trees exceeds the performance benefit of skipping propagation for these trees.\n - Setting this to `0.0` will result in never running static scene tracking.\n - Setting this to `1.0` will result in always tracking static transform trees.", - &["threshold"], + " Returns `true` if static scene optimizations are enabled.", + &["_self"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); @@ -301,66 +292,6 @@ pub(crate) fn register_global_transform_functions(world: &mut World) { "Return the local left vector (-X).", &["_self"], ) - .register_documented( - "mul", - | - _self: V<::bevy_transform::components::GlobalTransform>, - value: V<::bevy_math::Vec3>| - { - let output: V<::bevy_math::Vec3> = { - { - let output: V<::bevy_math::Vec3> = <::bevy_transform::components::GlobalTransform as ::core::ops::Mul< - ::bevy_math::Vec3, - >>::mul(_self.into_inner(), value.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "value"], - ) - .register_documented( - "mul", - | - _self: V<::bevy_transform::components::GlobalTransform>, - global_transform: V<::bevy_transform::components::GlobalTransform>| - { - let output: V<::bevy_transform::components::GlobalTransform> = { - { - let output: V<::bevy_transform::components::GlobalTransform> = <::bevy_transform::components::GlobalTransform as ::core::ops::Mul< - ::bevy_transform::components::GlobalTransform, - >>::mul(_self.into_inner(), global_transform.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "global_transform"], - ) - .register_documented( - "mul", - | - _self: V<::bevy_transform::components::GlobalTransform>, - transform: V<::bevy_transform::components::Transform>| - { - let output: V<::bevy_transform::components::GlobalTransform> = { - { - let output: V<::bevy_transform::components::GlobalTransform> = <::bevy_transform::components::GlobalTransform as ::core::ops::Mul< - ::bevy_transform::components::Transform, - >>::mul(_self.into_inner(), transform.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "transform"], - ) .register_documented( "mul_transform", | @@ -887,66 +818,6 @@ pub(crate) fn register_transform_functions(world: &mut World) { " Get the unit vector in the local `Z` direction.", &["_self"], ) - .register_documented( - "mul", - | - _self: V<::bevy_transform::components::Transform>, - value: V<::bevy_math::Vec3>| - { - let output: V<::bevy_math::Vec3> = { - { - let output: V<::bevy_math::Vec3> = <::bevy_transform::components::Transform as ::core::ops::Mul< - ::bevy_math::Vec3, - >>::mul(_self.into_inner(), value.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "value"], - ) - .register_documented( - "mul", - | - _self: V<::bevy_transform::components::Transform>, - global_transform: V<::bevy_transform::components::GlobalTransform>| - { - let output: V<::bevy_transform::components::GlobalTransform> = { - { - let output: V<::bevy_transform::components::GlobalTransform> = <::bevy_transform::components::Transform as ::core::ops::Mul< - ::bevy_transform::components::GlobalTransform, - >>::mul(_self.into_inner(), global_transform.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "global_transform"], - ) - .register_documented( - "mul", - | - _self: V<::bevy_transform::components::Transform>, - transform: V<::bevy_transform::components::Transform>| - { - let output: V<::bevy_transform::components::Transform> = { - { - let output: V<::bevy_transform::components::Transform> = <::bevy_transform::components::Transform as ::core::ops::Mul< - ::bevy_transform::components::Transform, - >>::mul(_self.into_inner(), transform.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "transform"], - ) .register_documented( "mul_transform", | diff --git a/crates/bindings/bevy_ui_bms_bindings/Cargo.toml b/crates/bindings/bevy_ui_bms_bindings/Cargo.toml index d514053088..564e957784 100644 --- a/crates/bindings/bevy_ui_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_ui_bms_bindings/Cargo.toml @@ -20,47 +20,53 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_ui = { version = "0.18.1", features = ["bevy_picking"], default-features = true} +bevy_ui = { version = "0.19.0", features = ["bevy_picking"], default-features = true} -accesskit = { version = "^0.21", features = [], default-features = true} +accesskit = { version = "^0.24", features = [], default-features = true} -bevy_a11y = { version = "^0.18.0", features = ["bevy_reflect", "std"], default-features = true} +bevy_a11y = { version = "^0.19.0", features = ["bevy_reflect", "std"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_camera = { version = "^0.18.0", features = [], default-features = true} +bevy_camera = { version = "^0.19.0", features = [], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_image = { version = "^0.18.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} +bevy_image = { version = "^0.19.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} -bevy_input = { version = "^0.18.0", features = ["bevy_reflect", "gamepad", "gestures", "keyboard", "mouse", "smol_str", "std", "touch"], default-features = true} +bevy_input = { version = "^0.19.0", features = ["bevy_reflect", "gamepad", "gestures", "keyboard", "mouse", "smol_str", "std", "touch"], default-features = true} -bevy_input_focus = { version = "^0.18.0", features = ["bevy_picking", "bevy_reflect", "gamepad", "keyboard", "mouse", "std"], default-features = true} +bevy_input_focus = { version = "^0.19.0", features = ["bevy_picking", "bevy_reflect", "gamepad", "keyboard", "mouse", "std"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_log = { version = "^0.19.0", features = [], default-features = true} -bevy_picking = { version = "^0.18.0", features = ["mesh_picking"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_picking = { version = "^0.19.0", features = ["mesh_picking"], default-features = true} -bevy_sprite = { version = "^0.18.0", features = ["bevy_picking", "bevy_text", "bevy_window"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_text = { version = "^0.18.0", features = ["default_font"], default-features = true} +bevy_sprite = { version = "^0.19.0", features = ["bevy_picking", "bevy_text", "bevy_window"], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_text = { version = "^0.19.0", features = ["default_font"], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} +bevy_time = { version = "^0.19.0", features = ["bevy_reflect", "std"], default-features = true} -bevy_window = { version = "^0.18.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} -uuid = { version = "^1.1", features = [], default-features = true} +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} + +bevy_window = { version = "^0.19.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} + +swash = { version = "^0.2.6", features = [], default-features = true} + +uuid = { version = "^1.21.0", features = [], default-features = true} diff --git a/crates/bindings/bevy_ui_bms_bindings/src/lib.rs b/crates/bindings/bevy_ui_bms_bindings/src/lib.rs index 5d9e8dec4f..e0b19845c2 100644 --- a/crates/bindings/bevy_ui_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_ui_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -16,22 +17,6 @@ pub(crate) fn register_display_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::bevy_ui::Display>::new( world, ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::Display>| { - let output: () = { - { - let output: () = - <::bevy_ui::Display as ::std::cmp::Eq>::assert_receiver_is_total_eq(&_self) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ui::Display>| { @@ -69,6 +54,165 @@ pub(crate) fn register_display_functions(world: &mut World) { registry .register_type_data::<::bevy_ui::Display, bevy_mod_scripting_bindings::MarkAsGenerated>(); } +pub(crate) fn register_checkable_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui::Checkable, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui::Checkable>| { + let output: V<::bevy_ui::Checkable> = { + { + let output: V<::bevy_ui::Checkable> = <::bevy_ui::Checkable as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::bevy_ui::Checkable, bevy_mod_scripting_bindings::MarkAsGenerated>(); +} +pub(crate) fn register_checked_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::bevy_ui::Checked>::new( + world, + ) + .register_documented( + "clone", + |_self: R<::bevy_ui::Checked>| { + let output: V<::bevy_ui::Checked> = { + { + let output: V<::bevy_ui::Checked> = + <::bevy_ui::Checked as ::std::clone::Clone>::clone(&_self).into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::bevy_ui::Checked, bevy_mod_scripting_bindings::MarkAsGenerated>(); +} +pub(crate) fn register_interaction_disabled_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui::InteractionDisabled, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui::InteractionDisabled>| { + let output: V<::bevy_ui::InteractionDisabled> = { + { + let output: V<::bevy_ui::InteractionDisabled> = + <::bevy_ui::InteractionDisabled as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui::InteractionDisabled, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_pressed_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::bevy_ui::Pressed>::new( + world, + ) + .register_documented( + "clone", + |_self: R<::bevy_ui::Pressed>| { + let output: V<::bevy_ui::Pressed> = { + { + let output: V<::bevy_ui::Pressed> = + <::bevy_ui::Pressed as ::std::clone::Clone>::clone(&_self).into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::bevy_ui::Pressed, bevy_mod_scripting_bindings::MarkAsGenerated>(); +} +pub(crate) fn register_text_node_flags_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui::TextNodeFlags, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui::TextNodeFlags>| { + let output: V<::bevy_ui::TextNodeFlags> = { + { + let output: V<::bevy_ui::TextNodeFlags> = <::bevy_ui::TextNodeFlags as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui::TextNodeFlags, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_accessible_label_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui::prelude::AccessibleLabel, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui::prelude::AccessibleLabel>| { + let output: V<::bevy_ui::prelude::AccessibleLabel> = { + { + let output: V<::bevy_ui::prelude::AccessibleLabel> = + <::bevy_ui::prelude::AccessibleLabel as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui::prelude::AccessibleLabel, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_ui_picking_camera_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::picking_backend::UiPickingCamera, @@ -205,23 +349,6 @@ pub(crate) fn register_button_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::widget::Button, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::widget::Button>| { - let output: () = { - { - let output: () = <::bevy_ui::widget::Button as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ui::widget::Button>| { @@ -543,23 +670,6 @@ pub(crate) fn register_interaction_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::Interaction, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::Interaction>| { - let output: () = { - { - let output: () = <::bevy_ui::Interaction as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ui::Interaction>| { @@ -609,6 +719,44 @@ pub(crate) fn register_ui_scale_functions(world: &mut World) { registry .register_type_data::<::bevy_ui::UiScale, bevy_mod_scripting_bindings::MarkAsGenerated>(); } +pub(crate) fn register_computed_stack_index_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui::ComputedStackIndex, + >::new(world) + .register_documented( + "eq", + |_self: R<::bevy_ui::ComputedStackIndex>, other: R<::bevy_ui::ComputedStackIndex>| { + let output: bool = { + { + let output: bool = <::bevy_ui::ComputedStackIndex as ::std::cmp::PartialEq< + ::bevy_ui::ComputedStackIndex, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui::ComputedStackIndex, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_ui_stack_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::bevy_ui::UiStack>::new( + world, + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::bevy_ui::UiStack, bevy_mod_scripting_bindings::MarkAsGenerated>(); +} pub(crate) fn register_computed_ui_target_camera_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::ComputedUiTargetCamera, @@ -1100,21 +1248,6 @@ pub(crate) fn register_computed_node_functions(world: &mut World) { " The calculated node size as width and height in physical pixels.\n Automatically calculated by [`ui_layout_system`](`super::layout::ui_layout_system`).", &["_self"], ) - .register_documented( - "stack_index", - |_self: R<::bevy_ui::ComputedNode>| { - let output: u32 = { - { - let output: u32 = ::bevy_ui::ComputedNode::stack_index(&_self) - .into(); - output - } - }; - output - }, - " The order of the node in the UI layout.\n Nodes with a higher stack index are drawn on top of and receive interactions before nodes with lower stack indices.\n Automatically calculated in [`UiSystems::Stack`](super::UiSystems::Stack).", - &["_self"], - ) .register_documented( "unrounded_size", |_self: R<::bevy_ui::ComputedNode>| { @@ -1144,183 +1277,133 @@ pub(crate) fn register_ui_global_transform_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::UiGlobalTransform, >::new(world) - .register_documented( - "affine", - |_self: R<::bevy_ui::UiGlobalTransform>| { - let output: V<::bevy_math::Affine2> = { - { - let output: V<::bevy_math::Affine2> = ::bevy_ui::UiGlobalTransform::affine( - &_self, - ) - .into(); - output - } - }; - output - }, - " Returns the transform as an [`Affine2`]", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_ui::UiGlobalTransform>| { - let output: V<::bevy_ui::UiGlobalTransform> = { - { - let output: V<::bevy_ui::UiGlobalTransform> = <::bevy_ui::UiGlobalTransform as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_ui::UiGlobalTransform>, - other: R<::bevy_ui::UiGlobalTransform>| - { - let output: bool = { - { - let output: bool = <::bevy_ui::UiGlobalTransform as ::std::cmp::PartialEq< - ::bevy_ui::UiGlobalTransform, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "from_rotation", - |rotation: V<::bevy_math::Rot2>| { - let output: V<::bevy_ui::UiGlobalTransform> = { - { - let output: V<::bevy_ui::UiGlobalTransform> = ::bevy_ui::UiGlobalTransform::from_rotation( - rotation.into_inner(), - ) - .into(); - output - } - }; - output - }, - " Creates a `UiGlobalTransform` from the given rotation.", - &["rotation"], - ) - .register_documented( - "from_scale", - |scale: V<::bevy_math::Vec2>| { - let output: V<::bevy_ui::UiGlobalTransform> = { - { - let output: V<::bevy_ui::UiGlobalTransform> = ::bevy_ui::UiGlobalTransform::from_scale( - scale.into_inner(), - ) - .into(); - output - } - }; - output - }, - " Creates a `UiGlobalTransform` from the given scaling.", - &["scale"], - ) - .register_documented( - "from_translation", - |translation: V<::bevy_math::Vec2>| { - let output: V<::bevy_ui::UiGlobalTransform> = { - { - let output: V<::bevy_ui::UiGlobalTransform> = ::bevy_ui::UiGlobalTransform::from_translation( - translation.into_inner(), - ) - .into(); - output - } - }; - output - }, - " Creates a `UiGlobalTransform` from the given 2D translation.", - &["translation"], - ) - .register_documented( - "from_xy", - |x: f32, y: f32| { - let output: V<::bevy_ui::UiGlobalTransform> = { - { - let output: V<::bevy_ui::UiGlobalTransform> = ::bevy_ui::UiGlobalTransform::from_xy( - x, - y, - ) - .into(); - output - } - }; - output - }, - " Creates a `UiGlobalTransform` from the given 2D translation.", - &["x", "y"], - ) - .register_documented( - "mul", - |_self: V<::bevy_ui::UiGlobalTransform>, affine2: V<::bevy_math::Affine2>| { - let output: V<::bevy_math::Affine2> = { - { - let output: V<::bevy_math::Affine2> = <::bevy_ui::UiGlobalTransform as ::std::ops::Mul< - ::bevy_math::Affine2, - >>::mul(_self.into_inner(), affine2.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "affine2"], - ) - .register_documented( - "mul", - |_self: V<::bevy_ui::UiGlobalTransform>, value: V<::bevy_math::Vec2>| { - let output: V<::bevy_math::Vec2> = { - { - let output: V<::bevy_math::Vec2> = <::bevy_ui::UiGlobalTransform as ::std::ops::Mul< - ::bevy_math::Vec2, - >>::mul(_self.into_inner(), value.into_inner()) - .into(); - output - } - }; - output - }, - "", - &["_self", "value"], - ) - .register_documented( - "mul", - | - _self: V<::bevy_ui::UiGlobalTransform>, - value: V<::bevy_ui::UiGlobalTransform>| - { - let output: V<::bevy_ui::UiGlobalTransform> = { - { - let output: V<::bevy_ui::UiGlobalTransform> = <::bevy_ui::UiGlobalTransform as ::std::ops::Mul< - ::bevy_ui::UiGlobalTransform, - >>::mul(_self.into_inner(), value.into_inner()) + .register_documented( + "affine", + |_self: R<::bevy_ui::UiGlobalTransform>| { + let output: V<::bevy_math::Affine2> = { + { + let output: V<::bevy_math::Affine2> = + ::bevy_ui::UiGlobalTransform::affine(&_self).into(); + output + } + }; + output + }, + " Returns the transform as an [`Affine2`]", + &["_self"], + ) + .register_documented( + "clone", + |_self: R<::bevy_ui::UiGlobalTransform>| { + let output: V<::bevy_ui::UiGlobalTransform> = { + { + let output: V<::bevy_ui::UiGlobalTransform> = + <::bevy_ui::UiGlobalTransform as ::std::clone::Clone>::clone(&_self).into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui::UiGlobalTransform>, other: R<::bevy_ui::UiGlobalTransform>| { + let output: bool = { + { + let output: bool = <::bevy_ui::UiGlobalTransform as ::std::cmp::PartialEq< + ::bevy_ui::UiGlobalTransform, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "from_rotation", + |rotation: V<::bevy_math::Rot2>| { + let output: V<::bevy_ui::UiGlobalTransform> = { + { + let output: V<::bevy_ui::UiGlobalTransform> = + ::bevy_ui::UiGlobalTransform::from_rotation(rotation.into_inner()).into(); + output + } + }; + output + }, + " Creates a `UiGlobalTransform` from the given rotation.", + &["rotation"], + ) + .register_documented( + "from_scale", + |scale: V<::bevy_math::Vec2>| { + let output: V<::bevy_ui::UiGlobalTransform> = { + { + let output: V<::bevy_ui::UiGlobalTransform> = + ::bevy_ui::UiGlobalTransform::from_scale(scale.into_inner()).into(); + output + } + }; + output + }, + " Creates a `UiGlobalTransform` from the given scaling.", + &["scale"], + ) + .register_documented( + "from_translation", + |translation: V<::bevy_math::Vec2>| { + let output: V<::bevy_ui::UiGlobalTransform> = { + { + let output: V<::bevy_ui::UiGlobalTransform> = + ::bevy_ui::UiGlobalTransform::from_translation(translation.into_inner()) .into(); - output - } - }; - output - }, - "", - &["_self", "value"], - ); + output + } + }; + output + }, + " Creates a `UiGlobalTransform` from the given 2D translation.", + &["translation"], + ) + .register_documented( + "from_xy", + |x: f32, y: f32| { + let output: V<::bevy_ui::UiGlobalTransform> = { + { + let output: V<::bevy_ui::UiGlobalTransform> = + ::bevy_ui::UiGlobalTransform::from_xy(x, y).into(); + output + } + }; + output + }, + " Creates a `UiGlobalTransform` from the given 2D translation.", + &["x", "y"], + ) + .register_documented( + "mul", + |_self: V<::bevy_ui::UiGlobalTransform>, value: V<::bevy_math::Vec2>| { + let output: V<::bevy_math::Vec2> = { + { + let output: V<::bevy_math::Vec2> = + <::bevy_ui::UiGlobalTransform as ::std::ops::Mul<::bevy_math::Vec2>>::mul( + _self.into_inner(), + value.into_inner(), + ) + .into(); + output + } + }; + output + }, + "", + &["_self", "value"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -1394,6 +1477,21 @@ pub(crate) fn register_content_size_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::ContentSize, >::new(world) + .register_documented( + "clear", + |mut _self: M<::bevy_ui::ContentSize>| { + let output: () = { + { + let output: () = ::bevy_ui::ContentSize::clear(&mut _self) + .into(); + output + } + }; + output + }, + " Clear the current `Measure` for this UI node.", + &["_self"], + ) .register_documented( "fixed_size", |size: V<::bevy_math::Vec2>| { @@ -1486,33 +1584,16 @@ pub(crate) fn register_node_functions(world: &mut World) { let mut registry = registry.write(); registry.register_type_data::<::bevy_ui::Node, bevy_mod_scripting_bindings::MarkAsGenerated>(); } -pub(crate) fn register_overflow_axis_functions(world: &mut World) { +pub(crate) fn register_override_clip_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ui::OverflowAxis, + ::bevy_ui::OverrideClip, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::OverflowAxis>| { - let output: () = { - { - let output: () = <::bevy_ui::OverflowAxis as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", - |_self: R<::bevy_ui::OverflowAxis>| { - let output: V<::bevy_ui::OverflowAxis> = { + |_self: R<::bevy_ui::OverrideClip>| { + let output: V<::bevy_ui::OverrideClip> = { { - let output: V<::bevy_ui::OverflowAxis> = <::bevy_ui::OverflowAxis as ::std::clone::Clone>::clone( + let output: V<::bevy_ui::OverrideClip> = <::bevy_ui::OverrideClip as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -1523,44 +1604,12 @@ pub(crate) fn register_overflow_axis_functions(world: &mut World) { }, "", &["_self"], - ) - .register_documented( - "eq", - |_self: R<::bevy_ui::OverflowAxis>, other: R<::bevy_ui::OverflowAxis>| { - let output: bool = { - { - let output: bool = <::bevy_ui::OverflowAxis as ::std::cmp::PartialEq< - ::bevy_ui::OverflowAxis, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ) - .register_documented( - "is_visible", - |_self: R<::bevy_ui::OverflowAxis>| { - let output: bool = { - { - let output: bool = ::bevy_ui::OverflowAxis::is_visible(&_self) - .into(); - output - } - }; - output - }, - " Overflow is visible on this axis", - &["_self"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_ui::OverflowAxis, + ::bevy_ui::OverrideClip, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } @@ -1568,23 +1617,6 @@ pub(crate) fn register_ui_target_camera_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::UiTargetCamera, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::UiTargetCamera>| { - let output: () = { - { - let output: () = <::bevy_ui::UiTargetCamera as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ui::UiTargetCamera>| { @@ -1644,33 +1676,28 @@ pub(crate) fn register_ui_target_camera_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_overflow_clip_box_functions(world: &mut World) { +pub(crate) fn register_is_default_ui_camera_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui::IsDefaultUiCamera, + >::new(world); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui::IsDefaultUiCamera, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_focus_policy_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ui::OverflowClipBox, + ::bevy_ui::FocusPolicy, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::OverflowClipBox>| { - let output: () = { - { - let output: () = <::bevy_ui::OverflowClipBox as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", - |_self: R<::bevy_ui::OverflowClipBox>| { - let output: V<::bevy_ui::OverflowClipBox> = { + |_self: R<::bevy_ui::FocusPolicy>| { + let output: V<::bevy_ui::FocusPolicy> = { { - let output: V<::bevy_ui::OverflowClipBox> = <::bevy_ui::OverflowClipBox as ::std::clone::Clone>::clone( + let output: V<::bevy_ui::FocusPolicy> = <::bevy_ui::FocusPolicy as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -1684,11 +1711,11 @@ pub(crate) fn register_overflow_clip_box_functions(world: &mut World) { ) .register_documented( "eq", - |_self: R<::bevy_ui::OverflowClipBox>, other: R<::bevy_ui::OverflowClipBox>| { + |_self: R<::bevy_ui::FocusPolicy>, other: R<::bevy_ui::FocusPolicy>| { let output: bool = { { - let output: bool = <::bevy_ui::OverflowClipBox as ::std::cmp::PartialEq< - ::bevy_ui::OverflowClipBox, + let output: bool = <::bevy_ui::FocusPolicy as ::std::cmp::PartialEq< + ::bevy_ui::FocusPolicy, >>::eq(&_self, &other) .into(); output @@ -1702,38 +1729,19 @@ pub(crate) fn register_overflow_clip_box_functions(world: &mut World) { let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry - .register_type_data::< - ::bevy_ui::OverflowClipBox, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); + .register_type_data::<::bevy_ui::FocusPolicy, bevy_mod_scripting_bindings::MarkAsGenerated>( + ); } -pub(crate) fn register_focus_policy_functions(world: &mut World) { +pub(crate) fn register_visual_box_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ui::FocusPolicy, + ::bevy_ui::VisualBox, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::FocusPolicy>| { - let output: () = { - { - let output: () = <::bevy_ui::FocusPolicy as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", - |_self: R<::bevy_ui::FocusPolicy>| { - let output: V<::bevy_ui::FocusPolicy> = { + |_self: R<::bevy_ui::VisualBox>| { + let output: V<::bevy_ui::VisualBox> = { { - let output: V<::bevy_ui::FocusPolicy> = <::bevy_ui::FocusPolicy as ::std::clone::Clone>::clone( + let output: V<::bevy_ui::VisualBox> = <::bevy_ui::VisualBox as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -1747,11 +1755,11 @@ pub(crate) fn register_focus_policy_functions(world: &mut World) { ) .register_documented( "eq", - |_self: R<::bevy_ui::FocusPolicy>, other: R<::bevy_ui::FocusPolicy>| { + |_self: R<::bevy_ui::VisualBox>, other: R<::bevy_ui::VisualBox>| { let output: bool = { { - let output: bool = <::bevy_ui::FocusPolicy as ::std::cmp::PartialEq< - ::bevy_ui::FocusPolicy, + let output: bool = <::bevy_ui::VisualBox as ::std::cmp::PartialEq< + ::bevy_ui::VisualBox, >>::eq(&_self, &other) .into(); output @@ -1765,8 +1773,7 @@ pub(crate) fn register_focus_policy_functions(world: &mut World) { let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry - .register_type_data::<::bevy_ui::FocusPolicy, bevy_mod_scripting_bindings::MarkAsGenerated>( - ); + .register_type_data::<::bevy_ui::VisualBox, bevy_mod_scripting_bindings::MarkAsGenerated>(); } pub(crate) fn register_image_node_size_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< @@ -1811,17 +1818,60 @@ pub(crate) fn register_image_node_size_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_text_node_flags_functions(world: &mut World) { +pub(crate) fn register_box_sizing_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui::BoxSizing, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui::BoxSizing>| { + let output: V<::bevy_ui::BoxSizing> = { + { + let output: V<::bevy_ui::BoxSizing> = <::bevy_ui::BoxSizing as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui::BoxSizing>, other: R<::bevy_ui::BoxSizing>| { + let output: bool = { + { + let output: bool = <::bevy_ui::BoxSizing as ::std::cmp::PartialEq< + ::bevy_ui::BoxSizing, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::bevy_ui::BoxSizing, bevy_mod_scripting_bindings::MarkAsGenerated>(); +} +pub(crate) fn register_text_scroll_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ui::widget::TextNodeFlags, + ::bevy_ui::widget::TextScroll, >::new(world) .register_documented( "clone", - |_self: R<::bevy_ui::widget::TextNodeFlags>| { - let output: V<::bevy_ui::widget::TextNodeFlags> = { + |_self: R<::bevy_ui::widget::TextScroll>| { + let output: V<::bevy_ui::widget::TextScroll> = { { - let output: V<::bevy_ui::widget::TextNodeFlags> = - <::bevy_ui::widget::TextNodeFlags as ::std::clone::Clone>::clone(&_self) + let output: V<::bevy_ui::widget::TextScroll> = + <::bevy_ui::widget::TextScroll as ::std::clone::Clone>::clone(&_self) .into(); output } @@ -1830,12 +1880,29 @@ pub(crate) fn register_text_node_flags_functions(world: &mut World) { }, "", &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui::widget::TextScroll>, other: R<::bevy_ui::widget::TextScroll>| { + let output: bool = { + { + let output: bool = <::bevy_ui::widget::TextScroll as ::std::cmp::PartialEq< + ::bevy_ui::widget::TextScroll, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_ui::widget::TextNodeFlags, + ::bevy_ui::widget::TextScroll, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } @@ -2276,23 +2343,6 @@ pub(crate) fn register_val_functions(world: &mut World) { "", &["_self"], ) - .register_documented( - "div", - |_self: V<::bevy_ui::Val>, rhs: f32| { - let output: V<::bevy_ui::Val> = { - { - let output: V<::bevy_ui::Val> = <::bevy_ui::Val as ::std::ops::Div< - f32, - >>::div(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) .register_documented( "eq", |_self: R<::bevy_ui::Val>, other: R<::bevy_ui::Val>| { @@ -2344,40 +2394,6 @@ pub(crate) fn register_val_functions(world: &mut World) { " Returns a [`UiRect`] with its `left` equal to this value,\n and all other fields set to `Val::ZERO`.\n # Example\n ```\n # use bevy_ui::{UiRect, Val};\n #\n let ui_rect = Val::Px(1.).left();\n assert_eq!(ui_rect.left, Val::Px(1.));\n assert_eq!(ui_rect.right, Val::ZERO);\n assert_eq!(ui_rect.top, Val::ZERO);\n assert_eq!(ui_rect.bottom, Val::ZERO);\n ```", &["_self"], ) - .register_documented( - "mul", - |_self: V<::bevy_ui::Val>, rhs: f32| { - let output: V<::bevy_ui::Val> = { - { - let output: V<::bevy_ui::Val> = <::bevy_ui::Val as ::std::ops::Mul< - f32, - >>::mul(_self.into_inner(), rhs) - .into(); - output - } - }; - output - }, - "", - &["_self", "rhs"], - ) - .register_documented( - "neg", - |_self: V<::bevy_ui::Val>| { - let output: V<::bevy_ui::Val> = { - { - let output: V<::bevy_ui::Val> = <::bevy_ui::Val as ::std::ops::Neg>::neg( - _self.into_inner(), - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "right", |_self: V<::bevy_ui::Val>| { @@ -2618,76 +2634,57 @@ pub(crate) fn register_linear_gradient_functions(world: &mut World) { output }, "", - &["_self", "color_space"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_ui::LinearGradient, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_interpolation_color_space_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ui::InterpolationColorSpace, - >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::InterpolationColorSpace>| { - let output: () = { - { - let output: () = <::bevy_ui::InterpolationColorSpace as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_ui::InterpolationColorSpace>| { - let output: V<::bevy_ui::InterpolationColorSpace> = { - { - let output: V<::bevy_ui::InterpolationColorSpace> = <::bevy_ui::InterpolationColorSpace as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_ui::InterpolationColorSpace>, - other: R<::bevy_ui::InterpolationColorSpace>| - { - let output: bool = { - { - let output: bool = <::bevy_ui::InterpolationColorSpace as ::std::cmp::PartialEq< - ::bevy_ui::InterpolationColorSpace, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], + &["_self", "color_space"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui::LinearGradient, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_interpolation_color_space_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui::InterpolationColorSpace, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui::InterpolationColorSpace>| { + let output: V<::bevy_ui::InterpolationColorSpace> = { + { + let output: V<::bevy_ui::InterpolationColorSpace> = + <::bevy_ui::InterpolationColorSpace as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui::InterpolationColorSpace>, + other: R<::bevy_ui::InterpolationColorSpace>| { + let output: bool = { + { + let output: bool = + <::bevy_ui::InterpolationColorSpace as ::std::cmp::PartialEq< + ::bevy_ui::InterpolationColorSpace, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); registry .register_type_data::< ::bevy_ui::InterpolationColorSpace, @@ -3090,6 +3087,23 @@ pub(crate) fn register_val_2_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::Val2, >::new(world) + .register_documented( + "all", + |val: V<::bevy_ui::Val>| { + let output: V<::bevy_ui::Val2> = { + { + let output: V<::bevy_ui::Val2> = ::bevy_ui::Val2::all( + val.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Creates a new [`Val2`] where both components are the same value", + &["val"], + ) .register_documented( "clone", |_self: R<::bevy_ui::Val2>| { @@ -3142,36 +3156,6 @@ pub(crate) fn register_val_2_functions(world: &mut World) { " Creates a new [`Val2`]", &["x", "y"], ) - .register_documented( - "percent", - |x: f32, y: f32| { - let output: V<::bevy_ui::Val2> = { - { - let output: V<::bevy_ui::Val2> = ::bevy_ui::Val2::percent(x, y) - .into(); - output - } - }; - output - }, - " Creates a new [`Val2`] where both components are percentage values", - &["x", "y"], - ) - .register_documented( - "px", - |x: f32, y: f32| { - let output: V<::bevy_ui::Val2> = { - { - let output: V<::bevy_ui::Val2> = ::bevy_ui::Val2::px(x, y) - .into(); - output - } - }; - output - }, - " Creates a new [`Val2`] where both components are in logical pixels", - &["x", "y"], - ) .register_documented( "resolve", | @@ -3314,6 +3298,24 @@ pub(crate) fn register_ui_transform_functions(world: &mut World) { }, " Creates a UI transform representing a responsive translation.", &["translation"], + ) + .register_documented( + "from_xy", + |x: V<::bevy_ui::Val>, y: V<::bevy_ui::Val>| { + let output: V<::bevy_ui::UiTransform> = { + { + let output: V<::bevy_ui::UiTransform> = ::bevy_ui::UiTransform::from_xy( + x.into_inner(), + y.into_inner(), + ) + .into(); + output + } + }; + output + }, + " Create a new UI transform at the position `(x, y)`", + &["x", "y"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); @@ -3835,16 +3837,16 @@ pub(crate) fn register_outline_functions(world: &mut World) { registry .register_type_data::<::bevy_ui::Outline, bevy_mod_scripting_bindings::MarkAsGenerated>(); } -pub(crate) fn register_scroll_position_functions(world: &mut World) { +pub(crate) fn register_overflow_axis_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ui::ScrollPosition, + ::bevy_ui::OverflowAxis, >::new(world) .register_documented( "clone", - |_self: R<::bevy_ui::ScrollPosition>| { - let output: V<::bevy_ui::ScrollPosition> = { + |_self: R<::bevy_ui::OverflowAxis>| { + let output: V<::bevy_ui::OverflowAxis> = { { - let output: V<::bevy_ui::ScrollPosition> = <::bevy_ui::ScrollPosition as ::std::clone::Clone>::clone( + let output: V<::bevy_ui::OverflowAxis> = <::bevy_ui::OverflowAxis as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -3855,25 +3857,57 @@ pub(crate) fn register_scroll_position_functions(world: &mut World) { }, "", &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui::OverflowAxis>, other: R<::bevy_ui::OverflowAxis>| { + let output: bool = { + { + let output: bool = <::bevy_ui::OverflowAxis as ::std::cmp::PartialEq< + ::bevy_ui::OverflowAxis, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "is_visible", + |_self: R<::bevy_ui::OverflowAxis>| { + let output: bool = { + { + let output: bool = ::bevy_ui::OverflowAxis::is_visible(&_self) + .into(); + output + } + }; + output + }, + " Overflow is visible on this axis", + &["_self"], ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry .register_type_data::< - ::bevy_ui::ScrollPosition, + ::bevy_ui::OverflowAxis, bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_position_type_functions(world: &mut World) { +pub(crate) fn register_scroll_position_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ui::PositionType, + ::bevy_ui::ScrollPosition, >::new(world) .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::PositionType>| { - let output: () = { + "clone", + |_self: R<::bevy_ui::ScrollPosition>| { + let output: V<::bevy_ui::ScrollPosition> = { { - let output: () = <::bevy_ui::PositionType as ::std::cmp::Eq>::assert_receiver_is_total_eq( + let output: V<::bevy_ui::ScrollPosition> = <::bevy_ui::ScrollPosition as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -3884,7 +3918,19 @@ pub(crate) fn register_position_type_functions(world: &mut World) { }, "", &["_self"], - ) + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui::ScrollPosition, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_position_type_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui::PositionType, + >::new(world) .register_documented( "clone", |_self: R<::bevy_ui::PositionType>| { @@ -3931,23 +3977,6 @@ pub(crate) fn register_align_self_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::AlignSelf, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::AlignSelf>| { - let output: () = { - { - let output: () = <::bevy_ui::AlignSelf as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ui::AlignSelf>| { @@ -4032,95 +4061,15 @@ pub(crate) fn register_repeated_grid_track_functions(world: &mut World) { >(); } pub(crate) fn register_align_content_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ui::AlignContent, - >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::AlignContent>| { - let output: () = { - { - let output: () = <::bevy_ui::AlignContent as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_ui::AlignContent>| { - let output: V<::bevy_ui::AlignContent> = { - { - let output: V<::bevy_ui::AlignContent> = <::bevy_ui::AlignContent as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - |_self: R<::bevy_ui::AlignContent>, other: R<::bevy_ui::AlignContent>| { - let output: bool = { - { - let output: bool = <::bevy_ui::AlignContent as ::std::cmp::PartialEq< - ::bevy_ui::AlignContent, - >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); - let registry = world.get_resource_or_init::(); - let mut registry = registry.write(); - registry - .register_type_data::< - ::bevy_ui::AlignContent, - bevy_mod_scripting_bindings::MarkAsGenerated, - >(); -} -pub(crate) fn register_align_items_functions(world: &mut World) { - bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ui::AlignItems, - >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::AlignItems>| { - let output: () = { - { - let output: () = <::bevy_ui::AlignItems as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui::AlignContent, + >::new(world) .register_documented( "clone", - |_self: R<::bevy_ui::AlignItems>| { - let output: V<::bevy_ui::AlignItems> = { + |_self: R<::bevy_ui::AlignContent>| { + let output: V<::bevy_ui::AlignContent> = { { - let output: V<::bevy_ui::AlignItems> = <::bevy_ui::AlignItems as ::std::clone::Clone>::clone( + let output: V<::bevy_ui::AlignContent> = <::bevy_ui::AlignContent as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -4134,11 +4083,11 @@ pub(crate) fn register_align_items_functions(world: &mut World) { ) .register_documented( "eq", - |_self: R<::bevy_ui::AlignItems>, other: R<::bevy_ui::AlignItems>| { + |_self: R<::bevy_ui::AlignContent>, other: R<::bevy_ui::AlignContent>| { let output: bool = { { - let output: bool = <::bevy_ui::AlignItems as ::std::cmp::PartialEq< - ::bevy_ui::AlignItems, + let output: bool = <::bevy_ui::AlignContent as ::std::cmp::PartialEq< + ::bevy_ui::AlignContent, >>::eq(&_self, &other) .into(); output @@ -4152,36 +4101,21 @@ pub(crate) fn register_align_items_functions(world: &mut World) { let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry - .register_type_data::<::bevy_ui::AlignItems, bevy_mod_scripting_bindings::MarkAsGenerated>( - ); + .register_type_data::< + ::bevy_ui::AlignContent, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); } -pub(crate) fn register_box_sizing_functions(world: &mut World) { +pub(crate) fn register_align_items_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ui::BoxSizing, + ::bevy_ui::AlignItems, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::BoxSizing>| { - let output: () = { - { - let output: () = <::bevy_ui::BoxSizing as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", - |_self: R<::bevy_ui::BoxSizing>| { - let output: V<::bevy_ui::BoxSizing> = { + |_self: R<::bevy_ui::AlignItems>| { + let output: V<::bevy_ui::AlignItems> = { { - let output: V<::bevy_ui::BoxSizing> = <::bevy_ui::BoxSizing as ::std::clone::Clone>::clone( + let output: V<::bevy_ui::AlignItems> = <::bevy_ui::AlignItems as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -4195,11 +4129,11 @@ pub(crate) fn register_box_sizing_functions(world: &mut World) { ) .register_documented( "eq", - |_self: R<::bevy_ui::BoxSizing>, other: R<::bevy_ui::BoxSizing>| { + |_self: R<::bevy_ui::AlignItems>, other: R<::bevy_ui::AlignItems>| { let output: bool = { { - let output: bool = <::bevy_ui::BoxSizing as ::std::cmp::PartialEq< - ::bevy_ui::BoxSizing, + let output: bool = <::bevy_ui::AlignItems as ::std::cmp::PartialEq< + ::bevy_ui::AlignItems, >>::eq(&_self, &other) .into(); output @@ -4213,29 +4147,13 @@ pub(crate) fn register_box_sizing_functions(world: &mut World) { let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry - .register_type_data::<::bevy_ui::BoxSizing, bevy_mod_scripting_bindings::MarkAsGenerated>(); + .register_type_data::<::bevy_ui::AlignItems, bevy_mod_scripting_bindings::MarkAsGenerated>( + ); } pub(crate) fn register_flex_direction_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::FlexDirection, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::FlexDirection>| { - let output: () = { - { - let output: () = <::bevy_ui::FlexDirection as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ui::FlexDirection>| { @@ -4282,24 +4200,6 @@ pub(crate) fn register_flex_wrap_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::bevy_ui::FlexWrap>::new( world, ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::FlexWrap>| { - let output: () = { - { - let output: () = - <::bevy_ui::FlexWrap as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ui::FlexWrap>| { @@ -4341,23 +4241,6 @@ pub(crate) fn register_grid_auto_flow_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::GridAutoFlow, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::GridAutoFlow>| { - let output: () = { - { - let output: () = <::bevy_ui::GridAutoFlow as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ui::GridAutoFlow>| { @@ -4404,23 +4287,6 @@ pub(crate) fn register_grid_placement_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::GridPlacement, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::GridPlacement>| { - let output: () = { - { - let output: () = <::bevy_ui::GridPlacement as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "auto", || { @@ -4776,16 +4642,16 @@ pub(crate) fn register_grid_track_repetition_functions(world: &mut World) { bevy_mod_scripting_bindings::MarkAsGenerated, >(); } -pub(crate) fn register_justify_content_functions(world: &mut World) { +pub(crate) fn register_inline_direction_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< - ::bevy_ui::JustifyContent, + ::bevy_ui::InlineDirection, >::new(world) .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::JustifyContent>| { - let output: () = { + "clone", + |_self: R<::bevy_ui::InlineDirection>| { + let output: V<::bevy_ui::InlineDirection> = { { - let output: () = <::bevy_ui::JustifyContent as ::std::cmp::Eq>::assert_receiver_is_total_eq( + let output: V<::bevy_ui::InlineDirection> = <::bevy_ui::InlineDirection as ::std::clone::Clone>::clone( &_self, ) .into(); @@ -4797,6 +4663,35 @@ pub(crate) fn register_justify_content_functions(world: &mut World) { "", &["_self"], ) + .register_documented( + "eq", + |_self: R<::bevy_ui::InlineDirection>, other: R<::bevy_ui::InlineDirection>| { + let output: bool = { + { + let output: bool = <::bevy_ui::InlineDirection as ::std::cmp::PartialEq< + ::bevy_ui::InlineDirection, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui::InlineDirection, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_justify_content_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui::JustifyContent, + >::new(world) .register_documented( "clone", |_self: R<::bevy_ui::JustifyContent>| { @@ -4843,23 +4738,6 @@ pub(crate) fn register_justify_items_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::JustifyItems, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::JustifyItems>| { - let output: () = { - { - let output: () = <::bevy_ui::JustifyItems as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ui::JustifyItems>| { @@ -4906,23 +4784,6 @@ pub(crate) fn register_justify_self_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::JustifySelf, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::JustifySelf>| { - let output: () = { - { - let output: () = <::bevy_ui::JustifySelf as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ui::JustifySelf>| { @@ -5061,24 +4922,6 @@ pub(crate) fn register_overflow_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::bevy_ui::Overflow>::new( world, ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::Overflow>| { - let output: () = { - { - let output: () = - <::bevy_ui::Overflow as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clip", || { @@ -5844,23 +5687,6 @@ pub(crate) fn register_global_z_index_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::GlobalZIndex, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::GlobalZIndex>| { - let output: () = { - { - let output: () = <::bevy_ui::GlobalZIndex as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ui::GlobalZIndex>| { @@ -5907,22 +5733,6 @@ pub(crate) fn register_z_index_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::<::bevy_ui::ZIndex>::new( world, ) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui::ZIndex>| { - let output: () = { - { - let output: () = - <::bevy_ui::ZIndex as ::std::cmp::Eq>::assert_receiver_is_total_eq(&_self) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) .register_documented( "clone", |_self: R<::bevy_ui::ZIndex>| { @@ -6112,6 +5922,50 @@ pub(crate) fn register_border_color_functions(world: &mut World) { .register_type_data::<::bevy_ui::BorderColor, bevy_mod_scripting_bindings::MarkAsGenerated>( ); } +pub(crate) fn register_outer_color_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui::OuterColor, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui::OuterColor>| { + let output: V<::bevy_ui::OuterColor> = { + { + let output: V<::bevy_ui::OuterColor> = <::bevy_ui::OuterColor as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui::OuterColor>, other: R<::bevy_ui::OuterColor>| { + let output: bool = { + { + let output: bool = <::bevy_ui::OuterColor as ::std::cmp::PartialEq< + ::bevy_ui::OuterColor, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::<::bevy_ui::OuterColor, bevy_mod_scripting_bindings::MarkAsGenerated>( + ); +} pub(crate) fn register_box_shadow_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui::BoxShadow, @@ -6230,6 +6084,12 @@ impl Plugin for BevyUiScriptingPlugin { fn build(&self, app: &mut App) { let mut world = app.world_mut(); register_display_functions(&mut world); + register_checkable_functions(&mut world); + register_checked_functions(&mut world); + register_interaction_disabled_functions(&mut world); + register_pressed_functions(&mut world); + register_text_node_flags_functions(&mut world); + register_accessible_label_functions(&mut world); register_ui_picking_camera_functions(&mut world); register_ui_picking_settings_functions(&mut world); register_text_functions(&mut world); @@ -6241,6 +6101,8 @@ impl Plugin for BevyUiScriptingPlugin { register_viewport_node_functions(&mut world); register_interaction_functions(&mut world); register_ui_scale_functions(&mut world); + register_computed_stack_index_functions(&mut world); + register_ui_stack_functions(&mut world); register_computed_ui_target_camera_functions(&mut world); register_computed_ui_render_target_info_functions(&mut world); register_computed_node_functions(&mut world); @@ -6249,12 +6111,14 @@ impl Plugin for BevyUiScriptingPlugin { register_content_size_functions(&mut world); register_calculated_clip_functions(&mut world); register_node_functions(&mut world); - register_overflow_axis_functions(&mut world); + register_override_clip_functions(&mut world); register_ui_target_camera_functions(&mut world); - register_overflow_clip_box_functions(&mut world); + register_is_default_ui_camera_functions(&mut world); register_focus_policy_functions(&mut world); + register_visual_box_functions(&mut world); register_image_node_size_functions(&mut world); - register_text_node_flags_functions(&mut world); + register_box_sizing_functions(&mut world); + register_text_scroll_functions(&mut world); register_ui_position_functions(&mut world); register_val_functions(&mut world); register_color_stop_functions(&mut world); @@ -6274,19 +6138,20 @@ impl Plugin for BevyUiScriptingPlugin { register_ignore_scroll_functions(&mut world); register_layout_config_functions(&mut world); register_outline_functions(&mut world); + register_overflow_axis_functions(&mut world); register_scroll_position_functions(&mut world); register_position_type_functions(&mut world); register_align_self_functions(&mut world); register_repeated_grid_track_functions(&mut world); register_align_content_functions(&mut world); register_align_items_functions(&mut world); - register_box_sizing_functions(&mut world); register_flex_direction_functions(&mut world); register_flex_wrap_functions(&mut world); register_grid_auto_flow_functions(&mut world); register_grid_placement_functions(&mut world); register_grid_track_functions(&mut world); register_grid_track_repetition_functions(&mut world); + register_inline_direction_functions(&mut world); register_justify_content_functions(&mut world); register_justify_items_functions(&mut world); register_justify_self_functions(&mut world); @@ -6300,6 +6165,7 @@ impl Plugin for BevyUiScriptingPlugin { register_resolved_border_radius_functions(&mut world); register_background_color_functions(&mut world); register_border_color_functions(&mut world); + register_outer_color_functions(&mut world); register_box_shadow_functions(&mut world); register_shadow_style_functions(&mut world); } diff --git a/crates/bindings/bevy_ui_render_bms_bindings/Cargo.toml b/crates/bindings/bevy_ui_render_bms_bindings/Cargo.toml index 22bb7ee88b..127938e682 100644 --- a/crates/bindings/bevy_ui_render_bms_bindings/Cargo.toml +++ b/crates/bindings/bevy_ui_render_bms_bindings/Cargo.toml @@ -20,47 +20,51 @@ test = false bevy_mod_scripting_core = { workspace = true } bevy_mod_scripting_bindings = { workspace = true } bevy_mod_scripting_derive = { workspace = true } -bevy_ui_render = { version = "0.18.1", features = [], default-features = true} +bevy_ui_render = { version = "0.19.0", features = ["bevy_ui_debug"], default-features = true} -bevy_app = { version = "^0.18.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} -bevy_asset = { version = "^0.18.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} -bevy_camera = { version = "^0.18.0", features = [], default-features = true} +bevy_camera = { version = "^0.19.0", features = [], default-features = true} -bevy_color = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} +bevy_color = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "encase", "std", "wgpu-types"], default-features = true} -bevy_core_pipeline = { version = "^0.18.0", features = ["tonemapping_luts", "webgl"], default-features = true} +bevy_core_pipeline = { version = "^0.19.0", features = ["tonemapping_luts", "webgl"], default-features = true} -bevy_derive = { version = "^0.18.0", features = [], default-features = true} +bevy_derive = { version = "^0.19.0", features = [], default-features = true} -bevy_ecs = { version = "^0.18.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} -bevy_image = { version = "^0.18.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} +bevy_image = { version = "^0.19.0", features = ["bevy_reflect", "hdr", "ktx2", "png", "zstd", "zstd_rust"], default-features = true} -bevy_math = { version = "^0.18.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} +bevy_input_focus = { version = "^0.19.0", features = ["bevy_picking", "bevy_reflect", "gamepad", "keyboard", "mouse", "std"], default-features = true} -bevy_mesh = { version = "^0.18.0", features = ["bevy_mikktspace", "morph"], default-features = true} +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} -bevy_reflect = { version = "^0.18.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} +bevy_mesh = { version = "^0.19.0", features = ["bevy_mikktspace", "morph"], default-features = true} -bevy_render = { version = "^0.18.0", features = ["morph", "multi_threaded", "webgl"], default-features = true} +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} -bevy_shader = { version = "^0.18.0", features = [], default-features = true} +bevy_render = { version = "^0.19.0", features = ["morph", "multi_threaded", "reflect_auto_register", "webgl"], default-features = true} -bevy_sprite = { version = "^0.18.0", features = ["bevy_picking", "bevy_text", "bevy_window"], default-features = true} +bevy_shader = { version = "^0.19.0", features = [], default-features = true} -bevy_sprite_render = { version = "^0.18.0", features = ["bevy_text", "webgl"], default-features = true} +bevy_sprite = { version = "^0.19.0", features = ["bevy_picking", "bevy_text", "bevy_window"], default-features = true} -bevy_text = { version = "^0.18.0", features = ["default_font"], default-features = true} +bevy_sprite_render = { version = "^0.19.0", features = ["bevy_text", "webgl"], default-features = true} -bevy_transform = { version = "^0.18.0", features = ["alloc", "async_executor", "bevy-support", "bevy_log", "bevy_reflect", "std"], default-features = true} +bevy_text = { version = "^0.19.0", features = ["default_font"], default-features = true} -bevy_ui = { version = "^0.18.0", features = ["bevy_picking"], default-features = true} +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} -bevy_utils = { version = "^0.18.0", features = ["parallel"], default-features = true} +bevy_ui = { version = "^0.19.0", features = ["bevy_picking"], default-features = true} + +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} bytemuck = { version = "^1.5", features = [], default-features = true} +indexmap = { version = "^2", features = [], default-features = true} + diff --git a/crates/bindings/bevy_ui_render_bms_bindings/src/lib.rs b/crates/bindings/bevy_ui_render_bms_bindings/src/lib.rs index 3c865d0a93..11252bf25d 100644 --- a/crates/bindings/bevy_ui_render_bms_bindings/src/lib.rs +++ b/crates/bindings/bevy_ui_render_bms_bindings/src/lib.rs @@ -1,5 +1,6 @@ #![allow(clippy::all)] #![allow(unused, deprecated, dead_code)] +extern crate std; use bevy_app::{App, Plugin}; use bevy_ecs::prelude::*; @@ -12,64 +13,132 @@ use bevy_mod_scripting_bindings::{ }; use bevy_mod_scripting_derive::script_bindings; pub struct BevyUiRenderScriptingPlugin; +pub(crate) fn register_global_ui_debug_options_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_render::GlobalUiDebugOptions, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_render::GlobalUiDebugOptions>| { + let output: V<::bevy_ui_render::GlobalUiDebugOptions> = { + { + let output: V<::bevy_ui_render::GlobalUiDebugOptions> = + <::bevy_ui_render::GlobalUiDebugOptions as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "toggle", + |mut _self: M<::bevy_ui_render::GlobalUiDebugOptions>| { + let output: () = { + { + let output: () = + ::bevy_ui_render::GlobalUiDebugOptions::toggle(&mut _self).into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_render::GlobalUiDebugOptions, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_ui_debug_options_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_render::UiDebugOptions, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_render::UiDebugOptions>| { + let output: V<::bevy_ui_render::UiDebugOptions> = { + { + let output: V<::bevy_ui_render::UiDebugOptions> = + <::bevy_ui_render::UiDebugOptions as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "toggle", + |mut _self: M<::bevy_ui_render::UiDebugOptions>| { + let output: () = { + { + let output: () = ::bevy_ui_render::UiDebugOptions::toggle(&mut _self).into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_render::UiDebugOptions, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} pub(crate) fn register_box_shadow_samples_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui_render::BoxShadowSamples, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui_render::BoxShadowSamples>| { - let output: () = { - { - let output: () = <::bevy_ui_render::BoxShadowSamples as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_ui_render::BoxShadowSamples>| { - let output: V<::bevy_ui_render::BoxShadowSamples> = { - { - let output: V<::bevy_ui_render::BoxShadowSamples> = <::bevy_ui_render::BoxShadowSamples as ::std::clone::Clone>::clone( - &_self, - ) + .register_documented( + "clone", + |_self: R<::bevy_ui_render::BoxShadowSamples>| { + let output: V<::bevy_ui_render::BoxShadowSamples> = { + { + let output: V<::bevy_ui_render::BoxShadowSamples> = + <::bevy_ui_render::BoxShadowSamples as ::std::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_ui_render::BoxShadowSamples>, - other: R<::bevy_ui_render::BoxShadowSamples>| - { - let output: bool = { - { - let output: bool = <::bevy_ui_render::BoxShadowSamples as ::std::cmp::PartialEq< + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui_render::BoxShadowSamples>, + other: R<::bevy_ui_render::BoxShadowSamples>| { + let output: bool = { + { + let output: bool = + <::bevy_ui_render::BoxShadowSamples as ::std::cmp::PartialEq< ::bevy_ui_render::BoxShadowSamples, >>::eq(&_self, &other) - .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -82,60 +151,39 @@ pub(crate) fn register_ui_anti_alias_functions(world: &mut World) { bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< ::bevy_ui_render::UiAntiAlias, >::new(world) - .register_documented( - "assert_receiver_is_total_eq", - |_self: R<::bevy_ui_render::UiAntiAlias>| { - let output: () = { - { - let output: () = <::bevy_ui_render::UiAntiAlias as ::std::cmp::Eq>::assert_receiver_is_total_eq( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "clone", - |_self: R<::bevy_ui_render::UiAntiAlias>| { - let output: V<::bevy_ui_render::UiAntiAlias> = { - { - let output: V<::bevy_ui_render::UiAntiAlias> = <::bevy_ui_render::UiAntiAlias as ::std::clone::Clone>::clone( - &_self, - ) - .into(); - output - } - }; - output - }, - "", - &["_self"], - ) - .register_documented( - "eq", - | - _self: R<::bevy_ui_render::UiAntiAlias>, - other: R<::bevy_ui_render::UiAntiAlias>| - { - let output: bool = { - { - let output: bool = <::bevy_ui_render::UiAntiAlias as ::std::cmp::PartialEq< - ::bevy_ui_render::UiAntiAlias, - >>::eq(&_self, &other) + .register_documented( + "clone", + |_self: R<::bevy_ui_render::UiAntiAlias>| { + let output: V<::bevy_ui_render::UiAntiAlias> = { + { + let output: V<::bevy_ui_render::UiAntiAlias> = + <::bevy_ui_render::UiAntiAlias as ::std::clone::Clone>::clone(&_self) .into(); - output - } - }; - output - }, - "", - &["_self", "other"], - ); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui_render::UiAntiAlias>, other: R<::bevy_ui_render::UiAntiAlias>| { + let output: bool = { + { + let output: bool = <::bevy_ui_render::UiAntiAlias as ::std::cmp::PartialEq< + ::bevy_ui_render::UiAntiAlias, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); let registry = world.get_resource_or_init::(); let mut registry = registry.write(); registry @@ -147,6 +195,8 @@ pub(crate) fn register_ui_anti_alias_functions(world: &mut World) { impl Plugin for BevyUiRenderScriptingPlugin { fn build(&self, app: &mut App) { let mut world = app.world_mut(); + register_global_ui_debug_options_functions(&mut world); + register_ui_debug_options_functions(&mut world); register_box_shadow_samples_functions(&mut world); register_ui_anti_alias_functions(&mut world); } diff --git a/crates/bindings/bevy_ui_widgets_bms_bindings/Cargo.toml b/crates/bindings/bevy_ui_widgets_bms_bindings/Cargo.toml new file mode 100644 index 0000000000..47d7ef3ea2 --- /dev/null +++ b/crates/bindings/bevy_ui_widgets_bms_bindings/Cargo.toml @@ -0,0 +1,56 @@ +[package] +name = "bevy_ui_widgets_bms_bindings" +description = "Automatically generated bindings for bevy_ui_widgets crate" +readme = "README.md" +version.workspace = true +edition.workspace = true +authors.workspace = true +license.workspace = true +homepage.workspace = true +repository.workspace = true +keywords.workspace = true +categories.workspace = true + +[lib] +test = false + +[dependencies] + + +bevy_mod_scripting_core = { workspace = true } +bevy_mod_scripting_bindings = { workspace = true } +bevy_mod_scripting_derive = { workspace = true } +bevy_ui_widgets = { version = "0.19.0", features = [], default-features = true} + + +accesskit = { version = "^0.24", features = [], default-features = true} + +bevy_a11y = { version = "^0.19.0", features = ["bevy_reflect", "std"], default-features = true} + +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} + +bevy_camera = { version = "^0.19.0", features = [], default-features = true} + +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} + +bevy_input = { version = "^0.19.0", features = ["bevy_reflect", "gamepad", "gestures", "keyboard", "mouse", "smol_str", "std", "touch"], default-features = true} + +bevy_input_focus = { version = "^0.19.0", features = ["bevy_picking", "bevy_reflect", "gamepad", "keyboard", "mouse", "std"], default-features = true} + +bevy_log = { version = "^0.19.0", features = [], default-features = true} + +bevy_math = { version = "^0.19.0", features = ["alloc", "bevy_reflect", "curve", "rand", "std"], default-features = true} + +bevy_picking = { version = "^0.19.0", features = ["mesh_picking"], default-features = true} + +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} + +bevy_text = { version = "^0.19.0", features = ["default_font"], default-features = true} + +bevy_ui = { version = "^0.19.0", features = ["bevy_picking"], default-features = true} + +bevy_window = { version = "^0.19.0", features = ["bevy_asset", "bevy_image", "bevy_reflect", "custom_cursor", "std"], default-features = true} + +smol_str = { version = "^0.2", features = [], default-features = true} + + diff --git a/crates/bindings/bevy_ui_widgets_bms_bindings/README.md b/crates/bindings/bevy_ui_widgets_bms_bindings/README.md new file mode 100644 index 0000000000..065a1d7e24 --- /dev/null +++ b/crates/bindings/bevy_ui_widgets_bms_bindings/README.md @@ -0,0 +1,4 @@ +# bevy_ui_widgets bindings +This crate is part of the [bevy_mod_scripting](http://github.com/makspll/bevy_mod_scripting) project. + +The code inside is fully generated via a custom rustc plugin. \ No newline at end of file diff --git a/crates/bindings/bevy_ui_widgets_bms_bindings/src/lib.rs b/crates/bindings/bevy_ui_widgets_bms_bindings/src/lib.rs new file mode 100644 index 0000000000..7a9df87319 --- /dev/null +++ b/crates/bindings/bevy_ui_widgets_bms_bindings/src/lib.rs @@ -0,0 +1,1546 @@ +#![allow(clippy::all)] +#![allow(unused, deprecated, dead_code)] +extern crate std; + +use bevy_app::{App, Plugin}; +use bevy_ecs::prelude::*; +use bevy_mod_scripting_bindings::{ + ReflectReference, + function::{ + from::{M, R, V}, + namespace::NamespaceBuilder, + }, +}; +use bevy_mod_scripting_derive::script_bindings; +pub struct BevyUiWidgetsScriptingPlugin; +pub(crate) fn register_activate_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::Activate, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::Activate>| { + let output: V<::bevy_ui_widgets::Activate> = { + { + let output: V<::bevy_ui_widgets::Activate> = <::bevy_ui_widgets::Activate as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_ui_widgets::Activate>, + other: R<::bevy_ui_widgets::Activate>| + { + let output: bool = { + { + let output: bool = <::bevy_ui_widgets::Activate as ::std::cmp::PartialEq< + ::bevy_ui_widgets::Activate, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::Activate, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_button_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::Button, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::Button>| { + let output: V<::bevy_ui_widgets::Button> = { + { + let output: V<::bevy_ui_widgets::Button> = <::bevy_ui_widgets::Button as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::Button, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_activate_on_press_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::ActivateOnPress, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::ActivateOnPress>| { + let output: V<::bevy_ui_widgets::ActivateOnPress> = { + { + let output: V<::bevy_ui_widgets::ActivateOnPress> = + <::bevy_ui_widgets::ActivateOnPress as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::ActivateOnPress, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_checkbox_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::Checkbox, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::Checkbox>| { + let output: V<::bevy_ui_widgets::Checkbox> = { + { + let output: V<::bevy_ui_widgets::Checkbox> = <::bevy_ui_widgets::Checkbox as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::Checkbox, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_set_checked_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::SetChecked, + >::new(world); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::SetChecked, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_toggle_checked_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::ToggleChecked, + >::new(world); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::ToggleChecked, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_active_descendant_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::ActiveDescendant, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::ActiveDescendant>| { + let output: V<::bevy_ui_widgets::ActiveDescendant> = { + { + let output: V<::bevy_ui_widgets::ActiveDescendant> = + <::bevy_ui_widgets::ActiveDescendant as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::ActiveDescendant, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_list_item_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::ListItem, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::ListItem>| { + let output: V<::bevy_ui_widgets::ListItem> = { + { + let output: V<::bevy_ui_widgets::ListItem> = <::bevy_ui_widgets::ListItem as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::ListItem, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_menu_action_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::MenuAction, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::MenuAction>| { + let output: V<::bevy_ui_widgets::MenuAction> = { + { + let output: V<::bevy_ui_widgets::MenuAction> = + <::bevy_ui_widgets::MenuAction as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::MenuAction, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_menu_event_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::MenuEvent, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::MenuEvent>| { + let output: V<::bevy_ui_widgets::MenuEvent> = { + { + let output: V<::bevy_ui_widgets::MenuEvent> = + <::bevy_ui_widgets::MenuEvent as ::std::clone::Clone>::clone(&_self).into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::MenuEvent, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_menu_layout_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::MenuLayout, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::MenuLayout>| { + let output: V<::bevy_ui_widgets::MenuLayout> = { + { + let output: V<::bevy_ui_widgets::MenuLayout> = + <::bevy_ui_widgets::MenuLayout as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui_widgets::MenuLayout>, other: R<::bevy_ui_widgets::MenuLayout>| { + let output: bool = { + { + let output: bool = <::bevy_ui_widgets::MenuLayout as ::std::cmp::PartialEq< + ::bevy_ui_widgets::MenuLayout, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::MenuLayout, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_menu_focus_state_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::MenuFocusState, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::MenuFocusState>| { + let output: V<::bevy_ui_widgets::MenuFocusState> = { + { + let output: V<::bevy_ui_widgets::MenuFocusState> = + <::bevy_ui_widgets::MenuFocusState as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui_widgets::MenuFocusState>, + other: R<::bevy_ui_widgets::MenuFocusState>| { + let output: bool = { + { + let output: bool = + <::bevy_ui_widgets::MenuFocusState as ::std::cmp::PartialEq< + ::bevy_ui_widgets::MenuFocusState, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::MenuFocusState, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_menu_popup_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::MenuPopup, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::MenuPopup>| { + let output: V<::bevy_ui_widgets::MenuPopup> = { + { + let output: V<::bevy_ui_widgets::MenuPopup> = + <::bevy_ui_widgets::MenuPopup as ::std::clone::Clone>::clone(&_self).into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::MenuPopup, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_menu_item_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::MenuItem, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::MenuItem>| { + let output: V<::bevy_ui_widgets::MenuItem> = { + { + let output: V<::bevy_ui_widgets::MenuItem> = <::bevy_ui_widgets::MenuItem as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::MenuItem, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_menu_button_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::MenuButton, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::MenuButton>| { + let output: V<::bevy_ui_widgets::MenuButton> = { + { + let output: V<::bevy_ui_widgets::MenuButton> = + <::bevy_ui_widgets::MenuButton as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::MenuButton, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_popover_side_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::popover::PopoverSide, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::popover::PopoverSide>| { + let output: V<::bevy_ui_widgets::popover::PopoverSide> = { + { + let output: V<::bevy_ui_widgets::popover::PopoverSide> = + <::bevy_ui_widgets::popover::PopoverSide as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui_widgets::popover::PopoverSide>, + other: R<::bevy_ui_widgets::popover::PopoverSide>| { + let output: bool = { + { + let output: bool = + <::bevy_ui_widgets::popover::PopoverSide as ::std::cmp::PartialEq< + ::bevy_ui_widgets::popover::PopoverSide, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "mirror", + |_self: R<::bevy_ui_widgets::popover::PopoverSide>| { + let output: V<::bevy_ui_widgets::popover::PopoverSide> = { + { + let output: V<::bevy_ui_widgets::popover::PopoverSide> = + ::bevy_ui_widgets::popover::PopoverSide::mirror(&_self).into(); + output + } + }; + output + }, + " Returns the side that is the mirror image of this side.", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::popover::PopoverSide, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_popover_align_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::popover::PopoverAlign, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::popover::PopoverAlign>| { + let output: V<::bevy_ui_widgets::popover::PopoverAlign> = { + { + let output: V<::bevy_ui_widgets::popover::PopoverAlign> = + <::bevy_ui_widgets::popover::PopoverAlign as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui_widgets::popover::PopoverAlign>, + other: R<::bevy_ui_widgets::popover::PopoverAlign>| { + let output: bool = { + { + let output: bool = + <::bevy_ui_widgets::popover::PopoverAlign as ::std::cmp::PartialEq< + ::bevy_ui_widgets::popover::PopoverAlign, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::popover::PopoverAlign, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_popover_placement_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::popover::PopoverPlacement, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::popover::PopoverPlacement>| { + let output: V<::bevy_ui_widgets::popover::PopoverPlacement> = { + { + let output: V<::bevy_ui_widgets::popover::PopoverPlacement> = <::bevy_ui_widgets::popover::PopoverPlacement as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_ui_widgets::popover::PopoverPlacement>, + other: R<::bevy_ui_widgets::popover::PopoverPlacement>| + { + let output: bool = { + { + let output: bool = <::bevy_ui_widgets::popover::PopoverPlacement as ::std::cmp::PartialEq< + ::bevy_ui_widgets::popover::PopoverPlacement, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::popover::PopoverPlacement, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_popover_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::popover::Popover, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::popover::Popover>| { + let output: V<::bevy_ui_widgets::popover::Popover> = { + { + let output: V<::bevy_ui_widgets::popover::Popover> = + <::bevy_ui_widgets::popover::Popover as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui_widgets::popover::Popover>, + other: R<::bevy_ui_widgets::popover::Popover>| { + let output: bool = { + { + let output: bool = + <::bevy_ui_widgets::popover::Popover as ::std::cmp::PartialEq< + ::bevy_ui_widgets::popover::Popover, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::popover::Popover, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_radio_group_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::RadioGroup, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::RadioGroup>| { + let output: V<::bevy_ui_widgets::RadioGroup> = { + { + let output: V<::bevy_ui_widgets::RadioGroup> = + <::bevy_ui_widgets::RadioGroup as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::RadioGroup, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_radio_button_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::RadioButton, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::RadioButton>| { + let output: V<::bevy_ui_widgets::RadioButton> = { + { + let output: V<::bevy_ui_widgets::RadioButton> = + <::bevy_ui_widgets::RadioButton as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::RadioButton, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_scroll_area_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::ScrollArea, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::ScrollArea>| { + let output: V<::bevy_ui_widgets::ScrollArea> = { + { + let output: V<::bevy_ui_widgets::ScrollArea> = + <::bevy_ui_widgets::ScrollArea as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::ScrollArea, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_control_orientation_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::ControlOrientation, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::ControlOrientation>| { + let output: V<::bevy_ui_widgets::ControlOrientation> = { + { + let output: V<::bevy_ui_widgets::ControlOrientation> = + <::bevy_ui_widgets::ControlOrientation as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui_widgets::ControlOrientation>, + other: R<::bevy_ui_widgets::ControlOrientation>| { + let output: bool = { + { + let output: bool = + <::bevy_ui_widgets::ControlOrientation as ::std::cmp::PartialEq< + ::bevy_ui_widgets::ControlOrientation, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::ControlOrientation, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_scrollbar_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::Scrollbar, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::Scrollbar>| { + let output: V<::bevy_ui_widgets::Scrollbar> = { + { + let output: V<::bevy_ui_widgets::Scrollbar> = <::bevy_ui_widgets::Scrollbar as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_ui_widgets::Scrollbar>, + other: R<::bevy_ui_widgets::Scrollbar>| + { + let output: bool = { + { + let output: bool = <::bevy_ui_widgets::Scrollbar as ::std::cmp::PartialEq< + ::bevy_ui_widgets::Scrollbar, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "new", + | + target: V<::bevy_ecs::entity::Entity>, + orientation: V<::bevy_ui_widgets::ControlOrientation>, + min_thumb_length: f32| + { + let output: V<::bevy_ui_widgets::Scrollbar> = { + { + let output: V<::bevy_ui_widgets::Scrollbar> = ::bevy_ui_widgets::Scrollbar::new( + target.into_inner(), + orientation.into_inner(), + min_thumb_length, + ) + .into(); + output + } + }; + output + }, + " Construct a new scrollbar.\n # Arguments\n * `target` - The scrollable entity that this scrollbar will control.\n * `orientation` - The orientation of the scrollbar (horizontal or vertical).\n * `min_thumb_length` - The minimum size of the scrollbar's thumb, in pixels.", + &["target", "orientation", "min_thumb_length"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::Scrollbar, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_scrollbar_drag_state_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::ScrollbarDragState, + >::new(world); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::ScrollbarDragState, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_scrollbar_thumb_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::ScrollbarThumb, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::ScrollbarThumb>| { + let output: V<::bevy_ui_widgets::ScrollbarThumb> = { + { + let output: V<::bevy_ui_widgets::ScrollbarThumb> = + <::bevy_ui_widgets::ScrollbarThumb as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::ScrollbarThumb, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_slider_orientation_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::SliderOrientation, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::SliderOrientation>| { + let output: V<::bevy_ui_widgets::SliderOrientation> = { + { + let output: V<::bevy_ui_widgets::SliderOrientation> = <::bevy_ui_widgets::SliderOrientation as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_ui_widgets::SliderOrientation>, + other: R<::bevy_ui_widgets::SliderOrientation>| + { + let output: bool = { + { + let output: bool = <::bevy_ui_widgets::SliderOrientation as ::std::cmp::PartialEq< + ::bevy_ui_widgets::SliderOrientation, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "is_vertical", + | + _self: V<::bevy_ui_widgets::SliderOrientation>, + node: R<::bevy_ui::ComputedNode>| + { + let output: bool = { + { + let output: bool = ::bevy_ui_widgets::SliderOrientation::is_vertical( + _self.into_inner(), + &node, + ) + .into(); + output + } + }; + output + }, + " Resolve the orientation to a boolean indicating whether the slider is vertical,\n using the node dimensions for auto-detection.", + &["_self", "node"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::SliderOrientation, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_track_click_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::TrackClick, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::TrackClick>| { + let output: V<::bevy_ui_widgets::TrackClick> = { + { + let output: V<::bevy_ui_widgets::TrackClick> = + <::bevy_ui_widgets::TrackClick as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui_widgets::TrackClick>, other: R<::bevy_ui_widgets::TrackClick>| { + let output: bool = { + { + let output: bool = <::bevy_ui_widgets::TrackClick as ::std::cmp::PartialEq< + ::bevy_ui_widgets::TrackClick, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::TrackClick, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_slider_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::Slider, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::Slider>| { + let output: V<::bevy_ui_widgets::Slider> = { + { + let output: V<::bevy_ui_widgets::Slider> = <::bevy_ui_widgets::Slider as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::Slider, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_slider_drag_state_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::SliderDragState, + >::new(world); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::SliderDragState, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_slider_value_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::SliderValue, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::SliderValue>| { + let output: V<::bevy_ui_widgets::SliderValue> = { + { + let output: V<::bevy_ui_widgets::SliderValue> = + <::bevy_ui_widgets::SliderValue as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui_widgets::SliderValue>, other: R<::bevy_ui_widgets::SliderValue>| { + let output: bool = { + { + let output: bool = <::bevy_ui_widgets::SliderValue as ::std::cmp::PartialEq< + ::bevy_ui_widgets::SliderValue, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::SliderValue, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_slider_range_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::SliderRange, + >::new(world) + .register_documented( + "center", + |_self: R<::bevy_ui_widgets::SliderRange>| { + let output: f32 = { + { + let output: f32 = ::bevy_ui_widgets::SliderRange::center(&_self) + .into(); + output + } + }; + output + }, + " Returns the center value of the range.", + &["_self"], + ) + .register_documented( + "clamp", + |_self: R<::bevy_ui_widgets::SliderRange>, value: f32| { + let output: f32 = { + { + let output: f32 = ::bevy_ui_widgets::SliderRange::clamp( + &_self, + value, + ) + .into(); + output + } + }; + output + }, + " Constrain a value between the minimum and maximum allowed values for this slider.", + &["_self", "value"], + ) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::SliderRange>| { + let output: V<::bevy_ui_widgets::SliderRange> = { + { + let output: V<::bevy_ui_widgets::SliderRange> = <::bevy_ui_widgets::SliderRange as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "end", + |_self: R<::bevy_ui_widgets::SliderRange>| { + let output: f32 = { + { + let output: f32 = ::bevy_ui_widgets::SliderRange::end(&_self) + .into(); + output + } + }; + output + }, + " Returns the maximum allowed value for this slider.", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_ui_widgets::SliderRange>, + other: R<::bevy_ui_widgets::SliderRange>| + { + let output: bool = { + { + let output: bool = <::bevy_ui_widgets::SliderRange as ::std::cmp::PartialEq< + ::bevy_ui_widgets::SliderRange, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ) + .register_documented( + "new", + |start: f32, end: f32| { + let output: V<::bevy_ui_widgets::SliderRange> = { + { + let output: V<::bevy_ui_widgets::SliderRange> = ::bevy_ui_widgets::SliderRange::new( + start, + end, + ) + .into(); + output + } + }; + output + }, + " Creates a new slider range with the given start and end values.", + &["start", "end"], + ) + .register_documented( + "span", + |_self: R<::bevy_ui_widgets::SliderRange>| { + let output: f32 = { + { + let output: f32 = ::bevy_ui_widgets::SliderRange::span(&_self) + .into(); + output + } + }; + output + }, + " Returns the full span of the range (max - min).", + &["_self"], + ) + .register_documented( + "start", + |_self: R<::bevy_ui_widgets::SliderRange>| { + let output: f32 = { + { + let output: f32 = ::bevy_ui_widgets::SliderRange::start(&_self) + .into(); + output + } + }; + output + }, + " Returns the minimum allowed value for this slider.", + &["_self"], + ) + .register_documented( + "thumb_position", + |_self: R<::bevy_ui_widgets::SliderRange>, value: f32| { + let output: f32 = { + { + let output: f32 = ::bevy_ui_widgets::SliderRange::thumb_position( + &_self, + value, + ) + .into(); + output + } + }; + output + }, + " Compute the position of the thumb on the slider, as a value between 0 and 1, taking\n into account the proportion of the value between the minimum and maximum limits.", + &["_self", "value"], + ) + .register_documented( + "with_end", + |_self: R<::bevy_ui_widgets::SliderRange>, end: f32| { + let output: V<::bevy_ui_widgets::SliderRange> = { + { + let output: V<::bevy_ui_widgets::SliderRange> = ::bevy_ui_widgets::SliderRange::with_end( + &_self, + end, + ) + .into(); + output + } + }; + output + }, + " Return a new instance of a `SliderRange` with a new end position.", + &["_self", "end"], + ) + .register_documented( + "with_start", + |_self: R<::bevy_ui_widgets::SliderRange>, start: f32| { + let output: V<::bevy_ui_widgets::SliderRange> = { + { + let output: V<::bevy_ui_widgets::SliderRange> = ::bevy_ui_widgets::SliderRange::with_start( + &_self, + start, + ) + .into(); + output + } + }; + output + }, + " Return a new instance of a `SliderRange` with a new start position.", + &["_self", "start"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::SliderRange, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_slider_step_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::SliderStep, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::SliderStep>| { + let output: V<::bevy_ui_widgets::SliderStep> = { + { + let output: V<::bevy_ui_widgets::SliderStep> = + <::bevy_ui_widgets::SliderStep as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_ui_widgets::SliderStep>, other: R<::bevy_ui_widgets::SliderStep>| { + let output: bool = { + { + let output: bool = <::bevy_ui_widgets::SliderStep as ::std::cmp::PartialEq< + ::bevy_ui_widgets::SliderStep, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::SliderStep, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_slider_thumb_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::SliderThumb, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::SliderThumb>| { + let output: V<::bevy_ui_widgets::SliderThumb> = { + { + let output: V<::bevy_ui_widgets::SliderThumb> = + <::bevy_ui_widgets::SliderThumb as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::SliderThumb, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_slider_precision_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::SliderPrecision, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::SliderPrecision>| { + let output: V<::bevy_ui_widgets::SliderPrecision> = { + { + let output: V<::bevy_ui_widgets::SliderPrecision> = + <::bevy_ui_widgets::SliderPrecision as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::SliderPrecision, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_set_slider_value_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::SetSliderValue, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::SetSliderValue>| { + let output: V<::bevy_ui_widgets::SetSliderValue> = { + { + let output: V<::bevy_ui_widgets::SetSliderValue> = + <::bevy_ui_widgets::SetSliderValue as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::SetSliderValue, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_slider_value_change_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::SliderValueChange, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::SliderValueChange>| { + let output: V<::bevy_ui_widgets::SliderValueChange> = { + { + let output: V<::bevy_ui_widgets::SliderValueChange> = + <::bevy_ui_widgets::SliderValueChange as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::SliderValueChange, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_select_all_on_focus_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_ui_widgets::SelectAllOnFocus, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_ui_widgets::SelectAllOnFocus>| { + let output: V<::bevy_ui_widgets::SelectAllOnFocus> = { + { + let output: V<::bevy_ui_widgets::SelectAllOnFocus> = + <::bevy_ui_widgets::SelectAllOnFocus as ::std::clone::Clone>::clone(&_self) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_ui_widgets::SelectAllOnFocus, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +impl Plugin for BevyUiWidgetsScriptingPlugin { + fn build(&self, app: &mut App) { + let mut world = app.world_mut(); + register_activate_functions(&mut world); + register_button_functions(&mut world); + register_activate_on_press_functions(&mut world); + register_checkbox_functions(&mut world); + register_set_checked_functions(&mut world); + register_toggle_checked_functions(&mut world); + register_active_descendant_functions(&mut world); + register_list_item_functions(&mut world); + register_menu_action_functions(&mut world); + register_menu_event_functions(&mut world); + register_menu_layout_functions(&mut world); + register_menu_focus_state_functions(&mut world); + register_menu_popup_functions(&mut world); + register_menu_item_functions(&mut world); + register_menu_button_functions(&mut world); + register_popover_side_functions(&mut world); + register_popover_align_functions(&mut world); + register_popover_placement_functions(&mut world); + register_popover_functions(&mut world); + register_radio_group_functions(&mut world); + register_radio_button_functions(&mut world); + register_scroll_area_functions(&mut world); + register_control_orientation_functions(&mut world); + register_scrollbar_functions(&mut world); + register_scrollbar_drag_state_functions(&mut world); + register_scrollbar_thumb_functions(&mut world); + register_slider_orientation_functions(&mut world); + register_track_click_functions(&mut world); + register_slider_functions(&mut world); + register_slider_drag_state_functions(&mut world); + register_slider_value_functions(&mut world); + register_slider_range_functions(&mut world); + register_slider_step_functions(&mut world); + register_slider_thumb_functions(&mut world); + register_slider_precision_functions(&mut world); + register_set_slider_value_functions(&mut world); + register_slider_value_change_functions(&mut world); + register_select_all_on_focus_functions(&mut world); + } +} diff --git a/crates/bindings/bevy_world_serialization_bms_bindings/Cargo.toml b/crates/bindings/bevy_world_serialization_bms_bindings/Cargo.toml new file mode 100644 index 0000000000..59314eec89 --- /dev/null +++ b/crates/bindings/bevy_world_serialization_bms_bindings/Cargo.toml @@ -0,0 +1,48 @@ +[package] +name = "bevy_world_serialization_bms_bindings" +description = "Automatically generated bindings for bevy_world_serialization crate" +readme = "README.md" +version.workspace = true +edition.workspace = true +authors.workspace = true +license.workspace = true +homepage.workspace = true +repository.workspace = true +keywords.workspace = true +categories.workspace = true + +[lib] +test = false + +[dependencies] + + +bevy_mod_scripting_core = { workspace = true } +bevy_mod_scripting_bindings = { workspace = true } +bevy_mod_scripting_derive = { workspace = true } +bevy_world_serialization = { version = "0.19.0", features = ["serialize"], default-features = true} + + +bevy_app = { version = "^0.19.0", features = ["bevy_reflect", "error_panic_hook", "reflect_auto_register", "std"], default-features = true} + +bevy_asset = { version = "^0.19.0", features = ["file_watcher", "multi_threaded", "notify-debouncer-full", "watch"], default-features = true} + +bevy_camera = { version = "^0.19.0", features = [], default-features = true} + +bevy_derive = { version = "^0.19.0", features = [], default-features = true} + +bevy_ecs = { version = "^0.19.0", features = ["async_executor", "backtrace", "bevy_reflect", "multi_threaded", "reflect_auto_register", "serialize", "std"], default-features = true} + +bevy_platform = { version = "^0.19.0", features = ["alloc", "futures-lite", "serialize", "std"], default-features = true} + +bevy_reflect = { version = "^0.19.0", features = ["auto_register", "auto_register_inventory", "debug", "debug_stack", "glam", "indexmap", "smallvec", "smol_str", "std", "uuid", "wgpu-types"], default-features = true} + +bevy_transform = { version = "^0.19.0", features = ["alloc", "async_executor", "bevy-support", "bevy_reflect", "multi_threaded", "std"], default-features = true} + +bevy_utils = { version = "^0.19.0", features = ["buffered_channel", "parallel"], default-features = true} + +serde = { version = "^1.0", features = [], default-features = true} + +uuid = { version = "^1.21.0", features = ["serde"], default-features = false} + + diff --git a/crates/bindings/bevy_world_serialization_bms_bindings/README.md b/crates/bindings/bevy_world_serialization_bms_bindings/README.md new file mode 100644 index 0000000000..d2a04b96e7 --- /dev/null +++ b/crates/bindings/bevy_world_serialization_bms_bindings/README.md @@ -0,0 +1,4 @@ +# bevy_world_serialization bindings +This crate is part of the [bevy_mod_scripting](http://github.com/makspll/bevy_mod_scripting) project. + +The code inside is fully generated via a custom rustc plugin. \ No newline at end of file diff --git a/crates/bindings/bevy_world_serialization_bms_bindings/src/lib.rs b/crates/bindings/bevy_world_serialization_bms_bindings/src/lib.rs new file mode 100644 index 0000000000..9459be57fa --- /dev/null +++ b/crates/bindings/bevy_world_serialization_bms_bindings/src/lib.rs @@ -0,0 +1,220 @@ +#![allow(clippy::all)] +#![allow(unused, deprecated, dead_code)] +extern crate std; + +use bevy_app::{App, Plugin}; +use bevy_ecs::prelude::*; +use bevy_mod_scripting_bindings::{ + ReflectReference, + function::{ + from::{M, R, V}, + namespace::NamespaceBuilder, + }, +}; +use bevy_mod_scripting_derive::script_bindings; +pub struct BevyWorldSerializationScriptingPlugin; +pub(crate) fn register_dynamic_world_root_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_world_serialization::DynamicWorldRoot, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_world_serialization::DynamicWorldRoot>| { + let output: V<::bevy_world_serialization::DynamicWorldRoot> = { + { + let output: V<::bevy_world_serialization::DynamicWorldRoot> = <::bevy_world_serialization::DynamicWorldRoot as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_world_serialization::DynamicWorldRoot>, + other: R<::bevy_world_serialization::DynamicWorldRoot>| + { + let output: bool = { + { + let output: bool = <::bevy_world_serialization::DynamicWorldRoot as ::std::cmp::PartialEq< + ::bevy_world_serialization::DynamicWorldRoot, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_world_serialization::DynamicWorldRoot, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_world_asset_root_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_world_serialization::WorldAssetRoot, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_world_serialization::WorldAssetRoot>| { + let output: V<::bevy_world_serialization::WorldAssetRoot> = { + { + let output: V<::bevy_world_serialization::WorldAssetRoot> = + <::bevy_world_serialization::WorldAssetRoot as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_world_serialization::WorldAssetRoot>, + other: R<::bevy_world_serialization::WorldAssetRoot>| { + let output: bool = { + { + let output: bool = + <::bevy_world_serialization::WorldAssetRoot as ::std::cmp::PartialEq< + ::bevy_world_serialization::WorldAssetRoot, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_world_serialization::WorldAssetRoot, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_world_instance_ready_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_world_serialization::WorldInstanceReady, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_world_serialization::WorldInstanceReady>| { + let output: V<::bevy_world_serialization::WorldInstanceReady> = { + { + let output: V<::bevy_world_serialization::WorldInstanceReady> = <::bevy_world_serialization::WorldInstanceReady as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + | + _self: R<::bevy_world_serialization::WorldInstanceReady>, + other: R<::bevy_world_serialization::WorldInstanceReady>| + { + let output: bool = { + { + let output: bool = <::bevy_world_serialization::WorldInstanceReady as ::std::cmp::PartialEq< + ::bevy_world_serialization::WorldInstanceReady, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_world_serialization::WorldInstanceReady, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +pub(crate) fn register_instance_id_functions(world: &mut World) { + bevy_mod_scripting_bindings::function::namespace::NamespaceBuilder::< + ::bevy_world_serialization::InstanceId, + >::new(world) + .register_documented( + "clone", + |_self: R<::bevy_world_serialization::InstanceId>| { + let output: V<::bevy_world_serialization::InstanceId> = { + { + let output: V<::bevy_world_serialization::InstanceId> = + <::bevy_world_serialization::InstanceId as ::std::clone::Clone>::clone( + &_self, + ) + .into(); + output + } + }; + output + }, + "", + &["_self"], + ) + .register_documented( + "eq", + |_self: R<::bevy_world_serialization::InstanceId>, + other: R<::bevy_world_serialization::InstanceId>| { + let output: bool = { + { + let output: bool = + <::bevy_world_serialization::InstanceId as ::std::cmp::PartialEq< + ::bevy_world_serialization::InstanceId, + >>::eq(&_self, &other) + .into(); + output + } + }; + output + }, + "", + &["_self", "other"], + ); + let registry = world.get_resource_or_init::(); + let mut registry = registry.write(); + registry + .register_type_data::< + ::bevy_world_serialization::InstanceId, + bevy_mod_scripting_bindings::MarkAsGenerated, + >(); +} +impl Plugin for BevyWorldSerializationScriptingPlugin { + fn build(&self, app: &mut App) { + let mut world = app.world_mut(); + register_dynamic_world_root_functions(&mut world); + register_world_asset_root_functions(&mut world); + register_world_instance_ready_functions(&mut world); + register_instance_id_functions(&mut world); + } +} diff --git a/crates/lad_backends/lua_language_server_lad_backend/tests/example_ladfile/bindings.lua b/crates/lad_backends/lua_language_server_lad_backend/tests/example_ladfile/bindings.lua new file mode 100644 index 0000000000..7a330149ce --- /dev/null +++ b/crates/lad_backends/lua_language_server_lad_backend/tests/example_ladfile/bindings.lua @@ -0,0 +1,203 @@ +---@meta +---@module "PlainStructType" + + +---@class PlainStructType : ReflectReference +--- I am a simple plain struct type +---@field int_field ? integer +PlainStructType = {} + +---@param p1 PlainStructType +---@param p2 integer +---@return any +function PlainStructType.plain_struct_function(p1,p2) end + + + +---@class Bool +--- A boolean value +Bool = {} + + + +---@class Char +--- An 8-bit character +Char = {} + + + +---@class DynamicFunction +--- A callable dynamic function +DynamicFunction = {} + + + +---@class DynamicFunctionMut +--- A stateful and callable dynamic function +DynamicFunctionMut = {} + + + +---@class F32 +--- A 32-bit floating point number +F32 = {} + + + +---@class F64 +--- A 64-bit floating point number +F64 = {} + + + +---@class FunctionCallContext +--- Function call context, if accepted by a function, means the function can access the world in arbitrary ways. +FunctionCallContext = {} + + + +---@class I128 +--- A signed 128-bit integer +I128 = {} + + + +---@class I16 +--- A signed 16-bit integer +I16 = {} + + + +---@class I32 +--- A signed 32-bit integer +I32 = {} + + + +---@class I64 +--- A signed 64-bit integer +I64 = {} + + + +---@class I8 +--- A signed 8-bit integer +I8 = {} + + + +---@class Isize +--- A signed pointer-sized integer +Isize = {} + + + +---@class OsString +--- A heap allocated OS string +OsString = {} + + + +---@class PathBuf +--- A heap allocated file path +PathBuf = {} + + + +---@class ReflectReference +--- A reference to a reflectable type +ReflectReference = {} + + + +---@class ScriptValue +--- A value representing the union of all representable values +ScriptValue = {} + + + +---@class Str +--- A string slice +Str = {} + + + +---@class String +--- A heap allocated string +String = {} + + + +---@class U128 +--- An unsigned 128-bit integer +U128 = {} + + + +---@class U16 +--- An unsigned 16-bit integer +U16 = {} + + + +---@class U32 +--- An unsigned 32-bit integer +U32 = {} + + + +---@class U64 +--- An unsigned 64-bit integer +U64 = {} + + + +---@class U8 +--- An unsigned 8-bit integer +U8 = {} + + + +---@class Usize +--- An unsigned pointer-sized integer +Usize = {} + + + +---@class EnumType : ReflectReference +EnumType = {} + + + +---@class TupleStructType : ReflectReference +--- I am a tuple test type +---@field [1] integer +---@field [2] string +TupleStructType = {} + + + +---@class UnitType : ReflectReference +--- I am a unit test type +UnitType = {} + + + + +---@param arg1 integer +---@return integer +function hello_world(arg1) end + + +---@type any +--- A static class allowing calls through the "." operator only. +my_static_instance = {} + +---@type UnitType[] +--- An global instance of this type +my_non_static_instance = {} + +---@type table +--- An global instance of this type +map = {} + diff --git a/crates/ladfile_builder/src/lib.rs b/crates/ladfile_builder/src/lib.rs index 230e100bd8..b22af4052d 100644 --- a/crates/ladfile_builder/src/lib.rs +++ b/crates/ladfile_builder/src/lib.rs @@ -21,7 +21,7 @@ use bevy_mod_scripting_bindings::{ }; pub use bevy_mod_scripting_bindings_domain::*; // re-export the thing we use use bevy_platform::collections::{HashMap, HashSet}; -use bevy_reflect::{NamedField, TypeInfo, TypeRegistry, Typed, UnnamedField}; +use bevy_reflect::{NamedField, TypeInfo, TypeRegistry, Typed, UnnamedField, enums::VariantInfo}; use ladfile::*; use std::{ any::TypeId, @@ -839,19 +839,19 @@ impl<'t> LadFileBuilder<'t> { if let Some(variant) = enum_info.variant_at(i) { let variant_name = variant.name(); let variant = match variant { - bevy_reflect::VariantInfo::Struct(struct_variant_info) => { + VariantInfo::Struct(struct_variant_info) => { let fields = (0..struct_variant_info.field_len()) .filter_map(|i| struct_variant_info.field_at(i)); self.struct_variant_from_named_fields(variant_name.into(), fields) } - bevy_reflect::VariantInfo::Tuple(tuple_variant_info) => { + VariantInfo::Tuple(tuple_variant_info) => { let fields = (0..tuple_variant_info.field_len()) .filter_map(|i| tuple_variant_info.field_at(i)); self.tuple_struct_variant_from_fields(variant_name.into(), fields) } - bevy_reflect::VariantInfo::Unit(_) => LadVariant::Unit { + VariantInfo::Unit(_) => LadVariant::Unit { name: variant_name.into(), }, }; diff --git a/crates/testing_crates/script_integration_test_harness/src/lib.rs b/crates/testing_crates/script_integration_test_harness/src/lib.rs index 13d12f491a..0da38e88a1 100644 --- a/crates/testing_crates/script_integration_test_harness/src/lib.rs +++ b/crates/testing_crates/script_integration_test_harness/src/lib.rs @@ -392,9 +392,9 @@ pub fn perform_benchmark_with_generator< group: &mut criterion::BenchmarkGroup, batch_size: BatchSize, ) { - #[derive(Reflect, Component, Resource)] + #[derive(Reflect, Component)] struct Fake1; - #[derive(Reflect, Component, Resource)] + #[derive(Reflect, Component)] struct Fake2; #[derive(Reflect, Resource)] struct Fake3; @@ -406,9 +406,9 @@ pub fn perform_benchmark_with_generator< let mut world = std::mem::take(setup_integration_test(|_, _| {}).world_mut()); let f1 = world.register_component::(); let f2 = world.register_component::(); - let f3 = world.register_resource::(); - let f4 = world.register_resource::(); - let f5 = world.register_resource::(); + let f3 = world.register_component::(); + let f4 = world.register_component::(); + let f5 = world.register_component::(); let cache = WorldAccessGuard::setup_cache(&world, Default::default()); let world_guard = WorldAccessGuard::new_exclusive(&mut world, cache); let mut rng_guard = RNG.lock().unwrap(); diff --git a/crates/testing_crates/script_integration_test_harness/src/scenario.rs b/crates/testing_crates/script_integration_test_harness/src/scenario.rs index cf99041aaa..057a46cabd 100644 --- a/crates/testing_crates/script_integration_test_harness/src/scenario.rs +++ b/crates/testing_crates/script_integration_test_harness/src/scenario.rs @@ -915,7 +915,7 @@ impl ScenarioStep { let absolute_path = context.absolute_scenario_path(&path); - if let Some(existing) = assets.get_mut(&script) { + if let Some(mut existing) = assets.get_mut(&script) { let content = std::fs::read_to_string(&absolute_path).with_context(|| { format!("Failed to read script file: {}", absolute_path.display()) })?; diff --git a/crates/testing_crates/test_utils/src/test_data.rs b/crates/testing_crates/test_utils/src/test_data.rs index e4f5d5adb3..1799db71ae 100644 --- a/crates/testing_crates/test_utils/src/test_data.rs +++ b/crates/testing_crates/test_utils/src/test_data.rs @@ -321,7 +321,7 @@ macro_rules! impl_test_component_ids { $( world.insert_resource::<$res_type>(<$res_type>::init()); registry.register::<$res_type>(); - let registered_id = world.resource_id::<$res_type>().unwrap().index(); + let registered_id = world.components().get_id(std::any::TypeId::of::<$res_type>()).unwrap().index(); assert_eq!(registered_id, TEST_COMPONENT_ID_START + $res_id, "Test setup failed. Did you register components before running setup_world?: {}", stringify!($res_type)); )* } diff --git a/examples/game_of_life.rs b/examples/game_of_life.rs index 794288dcbc..fdf9e1a5b8 100644 --- a/examples/game_of_life.rs +++ b/examples/game_of_life.rs @@ -220,8 +220,8 @@ pub fn sync_window_size( { let primary_window = primary_windows.get(e.window).unwrap(); settings.display_grid_dimensions = ( - primary_window.physical_width(), - primary_window.physical_height(), + primary_window.width() as u32, + primary_window.height() as u32, ); // resize all game's of life, retain aspect ratio and fit the entire game in the window @@ -251,7 +251,7 @@ pub fn update_rendered_state( query: Query<(&LifeState, &Sprite)>, ) { for (new_state, old_rendered_state) in query.iter() { - let old_rendered_state = assets + let mut old_rendered_state = assets .get_mut(&old_rendered_state.image) .expect("World is not setup correctly"); old_rendered_state.data = Some(new_state.cells.clone()); @@ -278,6 +278,7 @@ pub fn send_on_click( let pos = window.unwrap().cursor_position().unwrap_or_default(); let x = pos.x as u32; let y = pos.y as u32; + events.write(ScriptCallbackEvent::new_for_all_scripts( OnClick, vec![ diff --git a/examples/script_loading.rs b/examples/script_loading.rs index 6360b21e9c..f06fbb991b 100644 --- a/examples/script_loading.rs +++ b/examples/script_loading.rs @@ -78,7 +78,7 @@ fn setup_loading_ui(mut commands: Commands) { column.spawn(( Text::new("Loading: (none)"), TextFont { - font_size: 24.0, + font_size: 24.0.into(), ..default() }, TextColor(Color::WHITE), @@ -114,7 +114,7 @@ fn setup_loading_ui(mut commands: Commands) { column.spawn(( Text::new("0%"), TextFont { - font_size: 20.0, + font_size: 20.0.into(), ..default() }, TextColor(Color::WHITE), diff --git a/rust-toolchain.toml b/rust-toolchain.toml index fdfacc4fb0..01a3bee036 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,3 +1,3 @@ [toolchain] -channel = "1.91.0" +channel = "1.96.0" components = ["clippy", "rustfmt"] diff --git a/xtask/Cargo.toml b/xtask/Cargo.toml index d98678c5ab..ff5834ab1d 100644 --- a/xtask/Cargo.toml +++ b/xtask/Cargo.toml @@ -16,7 +16,7 @@ anyhow = "1" pretty_env_logger = "0.5" log = "0.4" itertools = "0.14" -cargo_metadata = "0.20" +cargo_metadata = "0.23" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" glob = "0.3" diff --git a/xtask/src/benches.rs b/xtask/src/benches.rs index f7e2e04665..111c4f5d1a 100644 --- a/xtask/src/benches.rs +++ b/xtask/src/benches.rs @@ -4,12 +4,19 @@ use anyhow::anyhow; use regex::Regex; use serde::Deserialize; +#[derive(Debug, Deserialize)] +struct Phase { + start: f64, + end: f64, +} + #[derive(Debug, Deserialize)] struct Unit { name: String, target: String, duration: f64, - rmeta_time: Option, + #[serde(default)] + sections: Option>, // new format } /// Extract `const UNIT_DATA = [...]` @@ -40,25 +47,32 @@ fn convert(units: Vec, include_crates: Vec) -> String { continue; } - let rmeta_time = if let Some(rmeta_time) = u.rmeta_time { - rmeta_time - } else { - continue; - }; + let frontend = u.sections + .iter() + .flat_map(|i| i.iter()) + .find(|(n, _)| n == "frontend") + .map(|(_, p)| p.end - p.start); + + let codegen = u.sections + .iter() + .flat_map(|i| i.iter()) + .find(|(n, _)| n == "codegen") + .map(|(_, p)| p.end - p.start); - // Phase split (best-effort) - let total_compile_time_s = u.duration; - let codegen_time = u.duration - rmeta_time; let meta_name = format!("{}::blocking_comp", crate_name); let codegen_name = format!("{}::codegen", crate_name); let total_time_name = format!("{}::total", crate_name); - total_rmeta += rmeta_time; - total_codegen += codegen_time; - write_metric(&mut out, &meta_name, rmeta_time); - write_metric(&mut out, &codegen_name, codegen_time); - write_metric(&mut out, &total_time_name, total_compile_time_s); + if let Some(frontend) = frontend { + write_metric(&mut out, &meta_name, frontend); + total_rmeta += frontend; + } + if let Some(codegen) = codegen { + write_metric(&mut out, &codegen_name, codegen); + total_codegen += codegen; + } + write_metric(&mut out, &total_time_name, u.duration); } write_metric(&mut out, &format!("total::blocking_comp"), total_rmeta); write_metric(&mut out, &format!("total::codegen"), total_codegen); @@ -150,78 +164,78 @@ mod test { ); let metrics = res.unwrap(); - let expected = r#"build_time/bevy_mod_scripting_world::blocking_comp time: [1.150 s 1.150 s 1.150 s] -build_time/bevy_mod_scripting_world::codegen time: [0.340 s 0.340 s 0.340 s] -build_time/bevy_mod_scripting_world::total time: [1.490 s 1.490 s 1.490 s] -build_time/bevy_mod_scripting_display::blocking_comp time: [1.390 s 1.390 s 1.390 s] -build_time/bevy_mod_scripting_display::codegen time: [0.540 s 0.540 s 0.540 s] -build_time/bevy_mod_scripting_display::total time: [1.930 s 1.930 s 1.930 s] -build_time/bevy_mod_scripting_bindings_domain::blocking_comp time: [0.720 s 0.720 s 0.720 s] -build_time/bevy_mod_scripting_bindings_domain::codegen time: [0.220 s 0.220 s 0.220 s] -build_time/bevy_mod_scripting_bindings_domain::total time: [0.940 s 0.940 s 0.940 s] -build_time/bevy_mod_scripting_asset::blocking_comp time: [1.870 s 1.870 s 1.870 s] -build_time/bevy_mod_scripting_asset::codegen time: [0.850 s 0.850 s 0.850 s] -build_time/bevy_mod_scripting_asset::total time: [2.720 s 2.720 s 2.720 s] -build_time/ladfile::blocking_comp time: [3.570 s 3.570 s 3.570 s] -build_time/ladfile::codegen time: [6.840 s 6.840 s 6.840 s] -build_time/ladfile::total time: [10.410 s 10.410 s 10.410 s] -build_time/bevy_mod_scripting_script::blocking_comp time: [1.410 s 1.410 s 1.410 s] -build_time/bevy_mod_scripting_script::codegen time: [2.830 s 2.830 s 2.830 s] -build_time/bevy_mod_scripting_script::total time: [4.240 s 4.240 s 4.240 s] -build_time/bevy_mod_scripting_bindings::blocking_comp time: [24.070 s 24.070 s 24.070 s] -build_time/bevy_mod_scripting_bindings::codegen time: [8.880 s 8.880 s 8.880 s] -build_time/bevy_mod_scripting_bindings::total time: [32.950 s 32.950 s 32.950 s] -build_time/lua_language_server_lad_backend::blocking_comp time: [3.500 s 3.500 s 3.500 s] -build_time/lua_language_server_lad_backend::codegen time: [4.230 s 4.230 s 4.230 s] -build_time/lua_language_server_lad_backend::total time: [7.730 s 7.730 s 7.730 s] -build_time/mdbook_lad_preprocessor::blocking_comp time: [3.880 s 3.880 s 3.880 s] -build_time/mdbook_lad_preprocessor::codegen time: [4.890 s 4.890 s 4.890 s] -build_time/mdbook_lad_preprocessor::total time: [8.770 s 8.770 s 8.770 s] -build_time/bevy_mod_scripting_core::blocking_comp time: [8.140 s 8.140 s 8.140 s] -build_time/bevy_mod_scripting_core::codegen time: [32.510 s 32.510 s 32.510 s] -build_time/bevy_mod_scripting_core::total time: [40.650 s 40.650 s 40.650 s] -build_time/bevy_math_bms_bindings::blocking_comp time: [15.110 s 15.110 s 15.110 s] -build_time/bevy_math_bms_bindings::codegen time: [111.500 s 111.500 s 111.500 s] -build_time/bevy_math_bms_bindings::total time: [126.610 s 126.610 s 126.610 s] -build_time/bevy_mod_scripting_rhai::blocking_comp time: [9.320 s 9.320 s 9.320 s] -build_time/bevy_mod_scripting_rhai::codegen time: [65.510 s 65.510 s 65.510 s] -build_time/bevy_mod_scripting_rhai::total time: [74.830 s 74.830 s 74.830 s] -build_time/bevy_reflect_bms_bindings::blocking_comp time: [81.840 s 81.840 s 81.840 s] -build_time/bevy_reflect_bms_bindings::codegen time: [442.670 s 442.670 s 442.670 s] -build_time/bevy_reflect_bms_bindings::total time: [524.510 s 524.510 s 524.510 s] -build_time/bevy_input_bms_bindings::blocking_comp time: [5.830 s 5.830 s 5.830 s] -build_time/bevy_input_bms_bindings::codegen time: [70.850 s 70.850 s 70.850 s] -build_time/bevy_input_bms_bindings::total time: [76.680 s 76.680 s 76.680 s] -build_time/bevy_color_bms_bindings::blocking_comp time: [4.420 s 4.420 s 4.420 s] -build_time/bevy_color_bms_bindings::codegen time: [43.690 s 43.690 s 43.690 s] -build_time/bevy_color_bms_bindings::total time: [48.110 s 48.110 s 48.110 s] -build_time/bevy_time_bms_bindings::blocking_comp time: [2.290 s 2.290 s 2.290 s] -build_time/bevy_time_bms_bindings::codegen time: [27.680 s 27.680 s 27.680 s] -build_time/bevy_time_bms_bindings::total time: [29.970 s 29.970 s 29.970 s] -build_time/bevy_transform_bms_bindings::blocking_comp time: [3.430 s 3.430 s 3.430 s] -build_time/bevy_transform_bms_bindings::codegen time: [33.310 s 33.310 s 33.310 s] -build_time/bevy_transform_bms_bindings::total time: [36.740 s 36.740 s 36.740 s] -build_time/bevy_ecs_bms_bindings::blocking_comp time: [3.480 s 3.480 s 3.480 s] -build_time/bevy_ecs_bms_bindings::codegen time: [35.010 s 35.010 s 35.010 s] -build_time/bevy_ecs_bms_bindings::total time: [38.490 s 38.490 s 38.490 s] -build_time/bevy_core_pipeline_bms_bindings::blocking_comp time: [4.270 s 4.270 s 4.270 s] -build_time/bevy_core_pipeline_bms_bindings::codegen time: [19.850 s 19.850 s 19.850 s] -build_time/bevy_core_pipeline_bms_bindings::total time: [24.120 s 24.120 s 24.120 s] -build_time/ladfile_builder::blocking_comp time: [2.940 s 2.940 s 2.940 s] -build_time/ladfile_builder::codegen time: [13.500 s 13.500 s 13.500 s] -build_time/ladfile_builder::total time: [16.440 s 16.440 s 16.440 s] -build_time/bevy_mod_scripting_functions::blocking_comp time: [12.570 s 12.570 s 12.570 s] -build_time/bevy_mod_scripting_functions::codegen time: [55.070 s 55.070 s 55.070 s] -build_time/bevy_mod_scripting_functions::total time: [67.640 s 67.640 s 67.640 s] -build_time/script_integration_test_harness::blocking_comp time: [29.130 s 29.130 s 29.130 s] -build_time/script_integration_test_harness::codegen time: [21.660 s 21.660 s 21.660 s] -build_time/script_integration_test_harness::total time: [50.790 s 50.790 s 50.790 s] -build_time/bevy_mod_scripting::blocking_comp time: [5.700 s 5.700 s 5.700 s] -build_time/bevy_mod_scripting::codegen time: [0.650 s 0.650 s 0.650 s] -build_time/bevy_mod_scripting::total time: [6.350 s 6.350 s 6.350 s] -build_time/total::blocking_comp time: [230.030 s 230.030 s 230.030 s] -build_time/total::codegen time: [1003.080 s 1003.080 s 1003.080 s] -build_time/total::total time: [1233.110 s 1233.110 s 1233.110 s] + let expected = r#"build_time/bevy_mod_scripting_world::blocking_comp time: [0.680 s 0.680 s 0.680 s] +build_time/bevy_mod_scripting_world::codegen time: [3.120 s 3.120 s 3.120 s] +build_time/bevy_mod_scripting_world::total time: [3.800 s 3.800 s 3.800 s] +build_time/bevy_mod_scripting_display::blocking_comp time: [0.700 s 0.700 s 0.700 s] +build_time/bevy_mod_scripting_display::codegen time: [1.740 s 1.740 s 1.740 s] +build_time/bevy_mod_scripting_display::total time: [2.440 s 2.440 s 2.440 s] +build_time/bevy_mod_scripting_bindings_domain::blocking_comp time: [0.740 s 0.740 s 0.740 s] +build_time/bevy_mod_scripting_bindings_domain::codegen time: [0.390 s 0.390 s 0.390 s] +build_time/bevy_mod_scripting_bindings_domain::total time: [1.130 s 1.130 s 1.130 s] +build_time/bevy_mod_scripting_asset::blocking_comp time: [0.990 s 0.990 s 0.990 s] +build_time/bevy_mod_scripting_asset::codegen time: [1.900 s 1.900 s 1.900 s] +build_time/bevy_mod_scripting_asset::total time: [2.890 s 2.890 s 2.890 s] +build_time/bevy_mod_scripting_script::blocking_comp time: [0.610 s 0.610 s 0.610 s] +build_time/bevy_mod_scripting_script::codegen time: [9.880 s 9.880 s 9.880 s] +build_time/bevy_mod_scripting_script::total time: [10.490 s 10.490 s 10.490 s] +build_time/bevy_mod_scripting_bindings::blocking_comp time: [17.610 s 17.610 s 17.610 s] +build_time/bevy_mod_scripting_bindings::codegen time: [61.200 s 61.200 s 61.200 s] +build_time/bevy_mod_scripting_bindings::total time: [78.810 s 78.810 s 78.810 s] +build_time/bevy_mod_scripting_core::blocking_comp time: [5.310 s 5.310 s 5.310 s] +build_time/bevy_mod_scripting_core::codegen time: [43.800 s 43.800 s 43.800 s] +build_time/bevy_mod_scripting_core::total time: [49.110 s 49.110 s 49.110 s] +build_time/ladfile::blocking_comp time: [1.620 s 1.620 s 1.620 s] +build_time/ladfile::codegen time: [16.620 s 16.620 s 16.620 s] +build_time/ladfile::total time: [18.240 s 18.240 s 18.240 s] +build_time/bevy_mod_scripting_rhai::blocking_comp time: [4.380 s 4.380 s 4.380 s] +build_time/bevy_mod_scripting_rhai::codegen time: [78.440 s 78.440 s 78.440 s] +build_time/bevy_mod_scripting_rhai::total time: [82.820 s 82.820 s 82.820 s] +build_time/bevy_core_pipeline_bms_bindings::blocking_comp time: [1.060 s 1.060 s 1.060 s] +build_time/bevy_core_pipeline_bms_bindings::codegen time: [18.890 s 18.890 s 18.890 s] +build_time/bevy_core_pipeline_bms_bindings::total time: [19.950 s 19.950 s 19.950 s] +build_time/bevy_time_bms_bindings::blocking_comp time: [0.940 s 0.940 s 0.940 s] +build_time/bevy_time_bms_bindings::codegen time: [27.640 s 27.640 s 27.640 s] +build_time/bevy_time_bms_bindings::total time: [28.580 s 28.580 s 28.580 s] +build_time/bevy_color_bms_bindings::blocking_comp time: [1.770 s 1.770 s 1.770 s] +build_time/bevy_color_bms_bindings::codegen time: [46.810 s 46.810 s 46.810 s] +build_time/bevy_color_bms_bindings::total time: [48.580 s 48.580 s 48.580 s] +build_time/bevy_ecs_bms_bindings::blocking_comp time: [1.320 s 1.320 s 1.320 s] +build_time/bevy_ecs_bms_bindings::codegen time: [40.040 s 40.040 s 40.040 s] +build_time/bevy_ecs_bms_bindings::total time: [41.360 s 41.360 s 41.360 s] +build_time/bevy_transform_bms_bindings::blocking_comp time: [1.460 s 1.460 s 1.460 s] +build_time/bevy_transform_bms_bindings::codegen time: [33.890 s 33.890 s 33.890 s] +build_time/bevy_transform_bms_bindings::total time: [35.350 s 35.350 s 35.350 s] +build_time/bevy_math_bms_bindings::blocking_comp time: [6.310 s 6.310 s 6.310 s] +build_time/bevy_math_bms_bindings::codegen time: [179.600 s 179.600 s 179.600 s] +build_time/bevy_math_bms_bindings::total time: [185.910 s 185.910 s 185.910 s] +build_time/bevy_input_bms_bindings::blocking_comp time: [2.340 s 2.340 s 2.340 s] +build_time/bevy_input_bms_bindings::codegen time: [89.130 s 89.130 s 89.130 s] +build_time/bevy_input_bms_bindings::total time: [91.470 s 91.470 s 91.470 s] +build_time/bevy_reflect_bms_bindings::blocking_comp time: [35.240 s 35.240 s 35.240 s] +build_time/bevy_reflect_bms_bindings::codegen time: [397.330 s 397.330 s 397.330 s] +build_time/bevy_reflect_bms_bindings::total time: [432.570 s 432.570 s 432.570 s] +build_time/lua_language_server_lad_backend::blocking_comp time: [1.130 s 1.130 s 1.130 s] +build_time/lua_language_server_lad_backend::codegen time: [9.310 s 9.310 s 9.310 s] +build_time/lua_language_server_lad_backend::total time: [10.440 s 10.440 s 10.440 s] +build_time/bevy_mod_scripting_functions::blocking_comp time: [4.310 s 4.310 s 4.310 s] +build_time/bevy_mod_scripting_functions::codegen time: [120.900 s 120.900 s 120.900 s] +build_time/bevy_mod_scripting_functions::total time: [125.210 s 125.210 s 125.210 s] +build_time/ladfile_builder::blocking_comp time: [1.440 s 1.440 s 1.440 s] +build_time/ladfile_builder::codegen time: [13.780 s 13.780 s 13.780 s] +build_time/ladfile_builder::total time: [15.220 s 15.220 s 15.220 s] +build_time/bevy_mod_scripting::blocking_comp time: [0.400 s 0.400 s 0.400 s] +build_time/bevy_mod_scripting::codegen time: [0.560 s 0.560 s 0.560 s] +build_time/bevy_mod_scripting::total time: [0.960 s 0.960 s 0.960 s] +build_time/script_integration_test_harness::blocking_comp time: [5.370 s 5.370 s 5.370 s] +build_time/script_integration_test_harness::codegen time: [80.190 s 80.190 s 80.190 s] +build_time/script_integration_test_harness::total time: [85.560 s 85.560 s 85.560 s] +build_time/mdbook_lad_preprocessor::blocking_comp time: [1.020 s 1.020 s 1.020 s] +build_time/mdbook_lad_preprocessor::codegen time: [11.680 s 11.680 s 11.680 s] +build_time/mdbook_lad_preprocessor::total time: [12.700 s 12.700 s 12.700 s] +build_time/total::blocking_comp time: [96.750 s 96.750 s 96.750 s] +build_time/total::codegen time: [1286.840 s 1286.840 s 1286.840 s] +build_time/total::total time: [1383.590 s 1383.590 s 1383.590 s] "#; pretty_assertions::assert_str_eq!(metrics, expected); } diff --git a/xtask/test_assets/cargo_timings_cut.html b/xtask/test_assets/cargo_timings_cut.html index 15bdb8733b..336636a346 100644 --- a/xtask/test_assets/cargo_timings_cut.html +++ b/xtask/test_assets/cargo_timings_cut.html @@ -1,931 +1,35499 @@ const UNIT_DATA = [ { - "i": 0, - "name": "bevy_mod_scripting_world", - "version": "0.19.0", + "i": 285, + "name": "foldhash", + "version": "0.2.0", "mode": "todo", "target": "", - "start": 2.19, - "duration": 1.49, - "rmeta_time": 1.15, - "unlocked_units": [ - 3 + "features": [ + "std" ], - "unlocked_rmeta_units": [ - 2 + "start": 0.96, + "duration": 0.76, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 321 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.47 + } + ], + [ + "codegen", + { + "start": 0.47, + "end": 0.76 + } + ] ] }, { - "i": 1, - "name": "bevy_mod_scripting_world", - "version": "0.19.0", + "i": 535, + "name": "serde", + "version": "1.0.228", "mode": "todo", - "target": " lib (test)", - "start": 2.22, - "duration": 7.96, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": " build-script", + "features": [ + "alloc", + "default", + "derive", + "serde_derive", + "std" + ], + "start": 0.96, + "duration": 0.74, + "unblocked_units": [ + 536 + ], + "unblocked_rmeta_units": [], + "sections": null }, { - "i": 2, - "name": "bevy_mod_scripting_display", - "version": "0.19.0", + "i": 455, + "name": "pin-project-lite", + "version": "0.2.17", "mode": "todo", "target": "", - "start": 3.34, - "duration": 1.93, - "rmeta_time": 1.39, - "unlocked_units": [ - 6, - 7 + "features": [], + "start": 0.96, + "duration": 0.33, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.13 + } + ], + [ + "codegen", + { + "start": 0.13, + "end": 0.33 + } + ] + ] + }, + { + "i": 399, + "name": "memchr", + "version": "2.8.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default", + "std" ], - "unlocked_rmeta_units": [ - 4, - 5 + "start": 0.96, + "duration": 3.69, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 641, + 9 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.6 + } + ], + [ + "codegen", + { + "start": 1.6, + "end": 3.69 + } + ] ] }, { - "i": 3, - "name": "bevy_mod_scripting_display", - "version": "0.19.0", + "i": 558, + "name": "smallvec", + "version": "1.15.1", "mode": "todo", - "target": " lib (test)", - "start": 3.68, - "duration": 15.25, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "const_generics", + "const_new", + "union" + ], + "start": 0.96, + "duration": 0.59, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.44 + } + ], + [ + "codegen", + { + "start": 0.44, + "end": 0.59 + } + ] + ] }, { - "i": 4, - "name": "bevy_mod_scripting_bindings_domain", - "version": "0.19.0", + "i": 196, + "name": "cfg-if", + "version": "1.0.4", "mode": "todo", "target": "", - "start": 4.73, - "duration": 0.94, - "rmeta_time": 0.72, - "unlocked_units": [ - 9 + "features": [], + "start": 0.96, + "duration": 0.16, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 295, + 594 ], - "unlocked_rmeta_units": [ - 8 + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.07 + } + ], + [ + "codegen", + { + "start": 0.07, + "end": 0.16 + } + ] ] }, { - "i": 5, - "name": "bevy_mod_scripting_asset", - "version": "0.19.0", + "i": 486, + "name": "quote", + "version": "1.0.45", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "proc-macro" + ], + "start": 0.96, + "duration": 0.67, + "unblocked_units": [ + 487 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 384, + "name": "log", + "version": "0.4.33", "mode": "todo", "target": "", - "start": 4.74, - "duration": 2.72, - "rmeta_time": 1.87, - "unlocked_units": [ - 11 + "features": [ + "std" ], - "unlocked_rmeta_units": [ - 10 + "start": 0.96, + "duration": 0.73, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.46 + } + ], + [ + "codegen", + { + "start": 0.46, + "end": 0.73 + } + ] ] }, { - "i": 6, - "name": "bevy_mod_scripting_asset", - "version": "0.19.0", + "i": 591, + "name": "thiserror", + "version": "2.0.18", "mode": "todo", - "target": " lib (test)", - "start": 5.27, - "duration": 11.29, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": " build-script", + "features": [ + "default", + "std" + ], + "start": 0.96, + "duration": 0.88, + "unblocked_units": [ + 592 + ], + "unblocked_rmeta_units": [], + "sections": null }, { - "i": 7, - "name": "bevy_mod_scripting_bindings_domain", - "version": "0.19.0", + "i": 377, + "name": "libm", + "version": "0.2.16", "mode": "todo", - "target": " lib (test)", - "start": 5.28, - "duration": 10.44, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": " build-script", + "features": [ + "arch", + "default" + ], + "start": 0.96, + "duration": 0.67, + "unblocked_units": [ + 378 + ], + "unblocked_rmeta_units": [], + "sections": null }, { - "i": 8, - "name": "ladfile", - "version": "0.19.0", + "i": 680, + "name": "windows-link", + "version": "0.2.1", "mode": "todo", "target": "", - "start": 5.45, - "duration": 10.41, - "rmeta_time": 3.57, - "unlocked_units": [ - 16, - 17 + "features": [], + "start": 0.96, + "duration": 0.19, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 682, + 683, + 686, + 375, + 689 ], - "unlocked_rmeta_units": [ - 13, - 14 + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.08 + } + ], + [ + "codegen", + { + "start": 0.08, + "end": 0.19 + } + ] ] }, { - "i": 9, - "name": "ladfile", - "version": "0.19.0", + "i": 538, + "name": "serde_core", + "version": "1.0.228", "mode": "todo", - "target": " lib (test)", - "start": 5.66, - "duration": 11.02, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": " build-script", + "features": [ + "alloc", + "result", + "std" + ], + "start": 0.96, + "duration": 0.73, + "unblocked_units": [ + 539 + ], + "unblocked_rmeta_units": [], + "sections": null }, { - "i": 10, - "name": "bevy_mod_scripting_script", - "version": "0.19.0", + "i": 480, + "name": "proc-macro2", + "version": "1.0.106", "mode": "todo", - "target": "", - "start": 6.98, - "duration": 4.24, - "rmeta_time": 1.41, - "unlocked_units": [ - 15 + "target": " build-script", + "features": [ + "default", + "proc-macro", + "span-locations" ], - "unlocked_rmeta_units": [ - 12 - ] + "start": 0.96, + "duration": 0.73, + "unblocked_units": [ + 481 + ], + "unblocked_rmeta_units": [], + "sections": null }, { - "i": 11, - "name": "bevy_mod_scripting_script", - "version": "0.19.0", + "i": 628, + "name": "unicode-ident", + "version": "1.0.24", "mode": "todo", - "target": " lib (test)", - "start": 7.46, - "duration": 13.53, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [], + "start": 0.96, + "duration": 0.34, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.15 + } + ], + [ + "codegen", + { + "start": 0.15, + "end": 0.34 + } + ] + ] }, { - "i": 12, - "name": "bevy_mod_scripting_bindings", - "version": "0.19.0", + "i": 640, + "name": "version_check", + "version": "0.9.5", "mode": "todo", "target": "", - "start": 8.39, - "duration": 32.95, - "rmeta_time": 24.07, - "unlocked_units": [ - 32 + "features": [], + "start": 0.96, + "duration": 0.82, + "unblocked_units": [ + 472, + 6, + 475, + 555 ], - "unlocked_rmeta_units": [ - 20 + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.46 + } + ], + [ + "codegen", + { + "start": 0.46, + "end": 0.82 + } + ] ] }, { - "i": 13, - "name": "lua_language_server_lad_backend", - "version": "0.19.0", + "i": 235, + "name": "crossbeam-utils", + "version": "0.8.21", "mode": "todo", - "target": "", - "start": 9.36, - "duration": 7.73, - "rmeta_time": 3.5, - "unlocked_units": [ - 18 + "target": " build-script", + "features": [ + "default", + "std" + ], + "start": 0.96, + "duration": 0.73, + "unblocked_units": [ + 236 ], - "unlocked_rmeta_units": [] + "unblocked_rmeta_units": [], + "sections": null }, { - "i": 14, - "name": "mdbook_lad_preprocessor", - "version": "0.19.0", + "i": 686, + "name": "windows-sys", + "version": "0.61.2", "mode": "todo", "target": "", - "start": 9.45, - "duration": 8.77, - "rmeta_time": 3.88, - "unlocked_units": [ - 19 + "features": [ + "Wdk", + "Wdk_Foundation", + "Wdk_Storage", + "Wdk_Storage_FileSystem", + "Win32", + "Win32_Foundation", + "Win32_Globalization", + "Win32_Networking", + "Win32_Networking_WinSock", + "Win32_Security", + "Win32_Storage", + "Win32_Storage_FileSystem", + "Win32_System", + "Win32_System_Com", + "Win32_System_Console", + "Win32_System_Diagnostics", + "Win32_System_Diagnostics_Debug", + "Win32_System_IO", + "Win32_System_LibraryLoader", + "Win32_System_SystemInformation", + "Win32_System_Threading", + "Win32_System_WindowsProgramming", + "Win32_UI", + "Win32_UI_Shell", + "default" + ], + "start": 1.15, + "duration": 9.58, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 673, + 422, + 240, + 16, + 459, + 271, + 357 ], - "unlocked_rmeta_units": [] + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 7.1 + } + ], + [ + "codegen", + { + "start": 7.1, + "end": 9.58 + } + ] + ] }, { - "i": 15, - "name": "bevy_mod_scripting_bindings", - "version": "0.19.0", + "i": 267, + "name": "equivalent", + "version": "1.0.2", "mode": "todo", - "target": " lib (test)", - "start": 11.23, - "duration": 70.72, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [], + "start": 1.15, + "duration": 0.31, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.25 + } + ], + [ + "codegen", + { + "start": 0.25, + "end": 0.31 + } + ] + ] }, { - "i": 16, - "name": "mdbook_lad_preprocessor", - "version": "0.19.0", + "i": 23, + "name": "arrayvec", + "version": "0.7.6", "mode": "todo", - "target": " lib (test)", - "start": 15.87, - "duration": 7.6, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "std" + ], + "start": 1.39, + "duration": 0.55, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 460 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.47 + } + ], + [ + "codegen", + { + "start": 0.47, + "end": 0.55 + } + ] + ] }, { - "i": 17, - "name": "lua_language_server_lad_backend", - "version": "0.19.0", + "i": 462, + "name": "portable-atomic", + "version": "1.13.1", "mode": "todo", - "target": " lib (test)", - "start": 16.3, - "duration": 5.98, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": " build-script", + "features": [], + "start": 1.39, + "duration": 0.79, + "unblocked_units": [ + 463 + ], + "unblocked_rmeta_units": [], + "sections": null }, { - "i": 18, - "name": "lua_language_server_lad_backend", - "version": "0.19.0", + "i": 321, + "name": "hashbrown", + "version": "0.17.1", "mode": "todo", - "target": " bin \"lad-lls\" (test)", - "start": 17.13, - "duration": 4.88, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "default-hasher", + "raw-entry" + ], + "start": 1.46, + "duration": 1.89, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.65 + } + ], + [ + "codegen", + { + "start": 1.65, + "end": 1.89 + } + ] + ] }, { - "i": 19, - "name": "mdbook_lad_preprocessor", - "version": "0.19.0", + "i": 10, + "name": "allocator-api2", + "version": "0.2.21", "mode": "todo", - "target": " bin \"mdbook-lad-preprocessor\" (test)", - "start": 18.22, - "duration": 4.0, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "alloc" + ], + "start": 1.63, + "duration": 0.97, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.82 + } + ], + [ + "codegen", + { + "start": 0.82, + "end": 0.97 + } + ] + ] }, { - "i": 20, - "name": "bevy_mod_scripting_core", - "version": "0.19.0", + "i": 378, + "name": "libm", + "version": "0.2.16", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "arch", + "default" + ], + "start": 1.69, + "duration": 0.06, + "unblocked_units": [ + 376 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 487, + "name": "quote", + "version": "1.0.45", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "proc-macro" + ], + "start": 1.69, + "duration": 0.16, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 236, + "name": "crossbeam-utils", + "version": "0.8.21", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "std" + ], + "start": 1.7, + "duration": 0.36, + "unblocked_units": [ + 234 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 539, + "name": "serde_core", + "version": "1.0.228", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "alloc", + "result", + "std" + ], + "start": 1.7, + "duration": 0.31, + "unblocked_units": [ + 537 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 481, + "name": "proc-macro2", + "version": "1.0.106", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "proc-macro", + "span-locations" + ], + "start": 1.7, + "duration": 0.48, + "unblocked_units": [ + 479 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 536, + "name": "serde", + "version": "1.0.228", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "alloc", + "default", + "derive", + "serde_derive", + "std" + ], + "start": 1.71, + "duration": 0.44, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 700, + "name": "winnow", + "version": "1.0.2", "mode": "todo", "target": "", - "start": 32.46, - "duration": 40.65, - "rmeta_time": 8.14, - "unlocked_units": [ - 53, - 55, - 35, - 50, - 48, - 63, - 46, - 49, - 40, - 34, - 54, - 51, - 33, - 64, - 56, - 65, - 43, - 45, - 57, - 58, - 42, - 62, - 39, - 38, - 36, - 66, - 59, - 44, - 47, - 41, - 37 + "features": [ + "alloc", + "ascii", + "binary", + "default", + "parser", + "std" ], - "unlocked_rmeta_units": [ - 26, - 29, - 30, - 25, - 28, - 23, - 27, - 22, - 21, - 31, - 24 + "start": 1.71, + "duration": 3.5, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 604 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.13 + } + ], + [ + "codegen", + { + "start": 3.13, + "end": 3.5 + } + ] ] }, { - "i": 21, - "name": "bevy_mod_scripting_lua", - "version": "0.19.0", + "i": 266, + "name": "equivalent", + "version": "1.0.2", "mode": "todo", "target": "", - "start": 40.61, - "duration": 51.81, - "rmeta_time": 6.89, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "features": [], + "start": 1.72, + "duration": 0.53, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.46 + } + ], + [ + "codegen", + { + "start": 0.46, + "end": 0.53 + } + ] + ] }, { - "i": 22, - "name": "bevy_math_bms_bindings", - "version": "0.19.0", + "i": 376, + "name": "libm", + "version": "0.2.16", "mode": "todo", "target": "", - "start": 40.63, - "duration": 126.61, - "rmeta_time": 15.11, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "features": [ + "arch", + "default" + ], + "start": 1.76, + "duration": 10.68, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 329, + 223 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 6.5 + } + ], + [ + "codegen", + { + "start": 6.5, + "end": 10.68 + } + ] + ] }, { - "i": 23, - "name": "bevy_mod_scripting_rhai", - "version": "0.19.0", + "i": 320, + "name": "hashbrown", + "version": "0.17.1", "mode": "todo", "target": "", - "start": 40.68, - "duration": 74.83, - "rmeta_time": 9.32, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "features": [], + "start": 1.78, + "duration": 1.48, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 353 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.3 + } + ], + [ + "codegen", + { + "start": 1.3, + "end": 1.48 + } + ] + ] }, { - "i": 24, - "name": "bevy_reflect_bms_bindings", - "version": "0.19.0", + "i": 592, + "name": "thiserror", + "version": "2.0.18", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "std" + ], + "start": 1.84, + "duration": 0.53, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 602, + "name": "toml_datetime", + "version": "1.1.1+spec-1.1.0", "mode": "todo", "target": "", - "start": 40.99, - "duration": 524.51, - "rmeta_time": 81.84, - "unlocked_units": [ - 68, - 69, - 67 + "features": [ + "alloc", + "default", + "std" ], - "unlocked_rmeta_units": [ - 52 + "start": 1.86, + "duration": 0.88, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.62 + } + ], + [ + "codegen", + { + "start": 0.62, + "end": 0.88 + } + ] ] }, { - "i": 25, - "name": "bevy_input_bms_bindings", - "version": "0.19.0", + "i": 288, + "name": "futures-core", + "version": "0.3.32", "mode": "todo", "target": "", - "start": 41.21, - "duration": 76.68, - "rmeta_time": 5.83, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "features": [ + "alloc", + "default", + "std" + ], + "start": 1.94, + "duration": 0.68, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.56 + } + ], + [ + "codegen", + { + "start": 0.56, + "end": 0.68 + } + ] + ] }, { - "i": 26, - "name": "bevy_color_bms_bindings", - "version": "0.19.0", + "i": 537, + "name": "serde_core", + "version": "1.0.228", "mode": "todo", "target": "", - "start": 41.36, - "duration": 48.11, - "rmeta_time": 4.42, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "features": [ + "alloc", + "result", + "std" + ], + "start": 2.02, + "duration": 6.24, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 354, + 268, + 544, + 319, + 636, + 601 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 5.48 + } + ], + [ + "codegen", + { + "start": 5.48, + "end": 6.24 + } + ] + ] }, { - "i": 27, - "name": "bevy_time_bms_bindings", - "version": "0.19.0", + "i": 234, + "name": "crossbeam-utils", + "version": "0.8.21", "mode": "todo", "target": "", - "start": 41.48, - "duration": 29.97, - "rmeta_time": 2.29, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "features": [ + "default", + "std" + ], + "start": 2.06, + "duration": 1.97, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 232, + 230, + 214, + 233 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.37 + } + ], + [ + "codegen", + { + "start": 1.37, + "end": 1.97 + } + ] + ] }, { - "i": 28, - "name": "bevy_transform_bms_bindings", - "version": "0.19.0", + "i": 432, + "name": "parking", + "version": "2.2.1", "mode": "todo", "target": "", - "start": 41.92, - "duration": 36.74, - "rmeta_time": 3.43, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "features": [], + "start": 2.16, + "duration": 0.46, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.24 + } + ], + [ + "codegen", + { + "start": 0.24, + "end": 0.46 + } + ] + ] }, { - "i": 29, - "name": "bevy_ecs_bms_bindings", - "version": "0.19.0", + "i": 479, + "name": "proc-macro2", + "version": "1.0.106", "mode": "todo", "target": "", - "start": 42.35, - "duration": 38.49, - "rmeta_time": 3.48, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "features": [ + "default", + "proc-macro", + "span-locations" + ], + "start": 2.18, + "duration": 2.14, + "unblocked_units": [ + 352, + 477 + ], + "unblocked_rmeta_units": [ + 485 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.11 + } + ], + [ + "codegen", + { + "start": 1.11, + "end": 2.14 + } + ] + ] }, { - "i": 30, - "name": "bevy_core_pipeline_bms_bindings", - "version": "0.19.0", + "i": 463, + "name": "portable-atomic", + "version": "1.13.1", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 2.19, + "duration": 0.26, + "unblocked_units": [ + 461 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 276, + "name": "fastrand", + "version": "2.4.1", "mode": "todo", "target": "", - "start": 42.65, - "duration": 24.12, - "rmeta_time": 4.27, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "features": [ + "alloc", + "default", + "std" + ], + "start": 2.26, + "duration": 0.84, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 290 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.48 + } + ], + [ + "codegen", + { + "start": 0.48, + "end": 0.84 + } + ] + ] }, { - "i": 31, - "name": "ladfile_builder", - "version": "0.19.0", + "i": 289, + "name": "futures-io", + "version": "0.3.32", "mode": "todo", "target": "", - "start": 42.68, - "duration": 16.44, - "rmeta_time": 2.94, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "features": [ + "default", + "std" + ], + "start": 2.39, + "duration": 0.49, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.18 + } + ], + [ + "codegen", + { + "start": 0.18, + "end": 0.49 + } + ] + ] }, { - "i": 32, - "name": "bevy_mod_scripting_core", - "version": "0.19.0", + "i": 461, + "name": "portable-atomic", + "version": "1.13.1", "mode": "todo", - "target": " lib (test)", - "start": 42.74, - "duration": 122.42, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [], + "start": 2.46, + "duration": 1.78, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 428 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.45 + } + ], + [ + "codegen", + { + "start": 1.45, + "end": 1.78 + } + ] + ] }, { - "i": 33, - "name": "bevy_animation_bms_bindings", - "version": "0.19.0", + "i": 501, + "name": "raw-window-handle", + "version": "0.6.2", "mode": "todo", - "target": " lib (test)", - "start": 73.11, - "duration": 23.07, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "alloc", + "std" + ], + "start": 2.66, + "duration": 1.11, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.8 + } + ], + [ + "codegen", + { + "start": 0.8, + "end": 1.11 + } + ] + ] }, { - "i": 34, - "name": "bevy_gizmos_bms_bindings", - "version": "0.19.0", + "i": 300, + "name": "getrandom", + "version": "0.4.2", "mode": "todo", - "target": " lib (test)", - "start": 78.69, - "duration": 30.23, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": " build-script", + "features": [], + "start": 2.66, + "duration": 0.7, + "unblocked_units": [ + 301 + ], + "unblocked_rmeta_units": [], + "sections": null }, { - "i": 35, - "name": "bevy_mod_scripting_rhai", - "version": "0.19.0", + "i": 284, + "name": "foldhash", + "version": "0.1.5", "mode": "todo", - "target": " lib (test)", - "start": 80.85, - "duration": 12.68, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [], + "start": 2.74, + "duration": 0.66, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 318 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.25 + } + ], + [ + "codegen", + { + "start": 0.25, + "end": 0.66 + } + ] + ] }, { - "i": 36, - "name": "bevy_post_process_bms_bindings", - "version": "0.19.0", + "i": 290, + "name": "futures-lite", + "version": "2.6.1", "mode": "todo", - "target": " lib (test)", - "start": 81.95, - "duration": 36.12, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "alloc", + "default", + "fastrand", + "futures-io", + "parking", + "race", + "std" + ], + "start": 2.89, + "duration": 2.01, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.62 + } + ], + [ + "codegen", + { + "start": 1.62, + "end": 2.01 + } + ] + ] }, { - "i": 37, - "name": "ladfile_builder", - "version": "0.19.0", + "i": 622, + "name": "typewit", + "version": "1.15.2", "mode": "todo", - "target": " lib (test)", - "start": 88.95, - "duration": 44.46, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [], + "start": 2.94, + "duration": 1.38, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 218 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.21 + } + ], + [ + "codegen", + { + "start": 1.21, + "end": 1.38 + } + ] + ] }, { - "i": 38, - "name": "bevy_picking_bms_bindings", - "version": "0.19.0", + "i": 353, + "name": "indexmap", + "version": "2.14.0", "mode": "todo", - "target": " lib (test)", - "start": 89.47, - "duration": 24.52, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "default", + "std" + ], + "start": 3.18, + "duration": 1.85, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.67 + } + ], + [ + "codegen", + { + "start": 1.67, + "end": 1.85 + } + ] + ] }, { - "i": 39, - "name": "bevy_sprite_bms_bindings", - "version": "0.19.0", + "i": 318, + "name": "hashbrown", + "version": "0.15.5", "mode": "todo", - "target": " lib (test)", - "start": 92.42, - "duration": 30.47, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "default-hasher", + "inline-more" + ], + "start": 3.36, + "duration": 1.84, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.67 + } + ], + [ + "codegen", + { + "start": 1.67, + "end": 1.84 + } + ] + ] }, { - "i": 40, - "name": "bevy_text_bms_bindings", - "version": "0.19.0", + "i": 485, + "name": "quote", + "version": "1.0.45", "mode": "todo", - "target": " lib (test)", - "start": 93.55, - "duration": 21.28, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "default", + "proc-macro" + ], + "start": 3.4, + "duration": 0.84, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 579 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.56 + } + ], + [ + "codegen", + { + "start": 0.56, + "end": 0.84 + } + ] + ] }, { - "i": 41, - "name": "bevy_image_bms_bindings", - "version": "0.19.0", + "i": 301, + "name": "getrandom", + "version": "0.4.2", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 3.4, + "duration": 0.07, + "unblocked_units": [ + 299 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 630, + "name": "unicode-segmentation", + "version": "1.13.2", "mode": "todo", - "target": " lib (test)", - "start": 96.18, - "duration": 13.99, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [], + "start": 3.46, + "duration": 1.39, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 222 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.95 + } + ], + [ + "codegen", + { + "start": 0.95, + "end": 1.39 + } + ] + ] }, { - "i": 42, - "name": "bevy_mesh_bms_bindings", - "version": "0.19.0", + "i": 214, + "name": "concurrent-queue", + "version": "2.5.0", "mode": "todo", - "target": " lib (test)", - "start": 96.83, - "duration": 19.15, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "default", + "std" + ], + "start": 3.52, + "duration": 0.73, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 274 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.48 + } + ], + [ + "codegen", + { + "start": 0.48, + "end": 0.73 + } + ] + ] }, { - "i": 43, - "name": "bevy_mod_scripting_lua", - "version": "0.19.0", + "i": 299, + "name": "getrandom", + "version": "0.4.2", "mode": "todo", - "target": " lib (test)", - "start": 108.92, - "duration": 16.65, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [], + "start": 3.91, + "duration": 0.49, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.33 + } + ], + [ + "codegen", + { + "start": 0.33, + "end": 0.49 + } + ] + ] }, { - "i": 44, - "name": "bevy_camera_bms_bindings", - "version": "0.19.0", + "i": 579, + "name": "syn", + "version": "2.0.117", "mode": "todo", - "target": " lib (test)", - "start": 110.2, - "duration": 21.62, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "clone-impls", + "default", + "derive", + "extra-traits", + "fold", + "full", + "parsing", + "printing", + "proc-macro", + "visit", + "visit-mut" + ], + "start": 4.24, + "duration": 15.48, + "unblocked_units": [ + 79, + 116, + 517, + 608, + 146, + 483, + 711, + 248, + 291, + 56, + 115, + 68, + 51, + 540, + 678, + 143, + 149, + 98, + 637, + 716, + 260, + 156, + 593, + 679, + 76, + 30, + 74, + 244, + 190 + ], + "unblocked_rmeta_units": [ + 95, + 261, + 580 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 10.04 + } + ], + [ + "codegen", + { + "start": 10.04, + "end": 15.48 + } + ] + ] }, { - "i": 45, - "name": "bevy_ui_bms_bindings", - "version": "0.19.0", + "i": 274, + "name": "event-listener", + "version": "5.4.1", "mode": "todo", - "target": " lib (test)", - "start": 113.99, - "duration": 47.06, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "default", + "parking", + "std" + ], + "start": 4.32, + "duration": 0.71, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 275 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.52 + } + ], + [ + "codegen", + { + "start": 0.52, + "end": 0.71 + } + ] + ] }, { - "i": 46, - "name": "bevy_math_bms_bindings", - "version": "0.19.0", + "i": 428, + "name": "once_cell", + "version": "1.21.4", "mode": "todo", - "target": " lib (test)", - "start": 114.83, - "duration": 18.47, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "alloc", + "default", + "portable-atomic", + "race", + "std" + ], + "start": 4.32, + "duration": 0.65, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 609 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.52 + } + ], + [ + "codegen", + { + "start": 0.52, + "end": 0.65 + } + ] + ] }, { - "i": 47, - "name": "bevy_ecs_bms_bindings", - "version": "0.19.0", + "i": 218, + "name": "const_panic", + "version": "0.2.15", "mode": "todo", - "target": " lib (test)", - "start": 115.57, - "duration": 8.28, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "default", + "non_basic" + ], + "start": 4.41, + "duration": 4.68, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 566 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.8 + } + ], + [ + "codegen", + { + "start": 1.8, + "end": 4.68 + } + ] + ] }, { - "i": 48, - "name": "bevy_pbr_bms_bindings", - "version": "0.19.0", + "i": 498, + "name": "rand_core", + "version": "0.10.1", "mode": "todo", - "target": " lib (test)", - "start": 115.99, - "duration": 45.18, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [], + "start": 4.41, + "duration": 0.57, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 492 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.44 + } + ], + [ + "codegen", + { + "start": 0.44, + "end": 0.57 + } + ] + ] }, { - "i": 49, - "name": "bevy_reflect_bms_bindings", - "version": "0.19.0", + "i": 620, + "name": "typeid", + "version": "1.0.3", "mode": "todo", - "target": " lib (test)", - "start": 116.64, - "duration": 62.0, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": " build-script", + "features": [], + "start": 4.48, + "duration": 0.74, + "unblocked_units": [ + 621 + ], + "unblocked_rmeta_units": [], + "sections": null }, { - "i": 50, - "name": "bevy_transform_bms_bindings", - "version": "0.19.0", + "i": 553, + "name": "slab", + "version": "0.4.12", "mode": "todo", - "target": " lib (test)", - "start": 117.9, - "duration": 14.61, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "default", + "std" + ], + "start": 4.48, + "duration": 0.49, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.37 + } + ], + [ + "codegen", + { + "start": 0.37, + "end": 0.49 + } + ] + ] }, { - "i": 51, - "name": "bevy_input_bms_bindings", - "version": "0.19.0", + "i": 222, + "name": "convert_case", + "version": "0.10.0", "mode": "todo", - "target": " lib (test)", - "start": 118.07, - "duration": 15.91, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [], + "start": 4.85, + "duration": 0.75, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.28 + } + ], + [ + "codegen", + { + "start": 0.28, + "end": 0.75 + } + ] + ] }, { - "i": 52, - "name": "bevy_mod_scripting_functions", - "version": "0.19.0", + "i": 604, + "name": "toml_parser", + "version": "1.1.2+spec-1.1.0", "mode": "todo", "target": "", - "start": 122.9, - "duration": 67.64, - "rmeta_time": 12.57, - "unlocked_units": [], - "unlocked_rmeta_units": [ - 61, - 60 + "features": [ + "alloc", + "default", + "std" + ], + "start": 4.97, + "duration": 1.73, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 603 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.98 + } + ], + [ + "codegen", + { + "start": 0.98, + "end": 1.73 + } + ] ] }, { - "i": 53, - "name": "bevy_input_focus_bms_bindings", - "version": "0.19.0", + "i": 275, + "name": "event-listener-strategy", + "version": "0.5.4", "mode": "todo", - "target": " lib (test)", - "start": 123.85, - "duration": 32.59, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "default", + "std" + ], + "start": 4.97, + "duration": 0.25, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 38, + 32, + 31 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.11 + } + ], + [ + "codegen", + { + "start": 0.11, + "end": 0.25 + } + ] + ] }, { - "i": 54, - "name": "bevy_scene_bms_bindings", - "version": "0.19.0", + "i": 492, + "name": "rand", + "version": "0.10.1", "mode": "todo", - "target": " lib (test)", - "start": 125.57, - "duration": 30.59, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "alloc", + "std" + ], + "start": 5.03, + "duration": 2.47, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.25 + } + ], + [ + "codegen", + { + "start": 2.25, + "end": 2.47 + } + ] + ] }, { - "i": 55, - "name": "bevy_light_bms_bindings", - "version": "0.19.0", + "i": 594, + "name": "thread_local", + "version": "1.1.9", "mode": "todo", - "target": " lib (test)", - "start": 131.83, - "duration": 27.5, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [], + "start": 5.03, + "duration": 0.92, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.37 + } + ], + [ + "codegen", + { + "start": 0.37, + "end": 0.92 + } + ] + ] }, { - "i": 56, - "name": "bevy_ui_render_bms_bindings", - "version": "0.19.0", + "i": 633, + "name": "unicode-xid", + "version": "0.2.6", "mode": "todo", - "target": " lib (test)", - "start": 132.51, - "duration": 48.97, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "default" + ], + "start": 5.08, + "duration": 0.34, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.19 + } + ], + [ + "codegen", + { + "start": 0.19, + "end": 0.34 + } + ] + ] }, { - "i": 57, - "name": "bevy_a11y_bms_bindings", - "version": "0.19.0", + "i": 563, + "name": "spin", + "version": "0.10.0", "mode": "todo", - "target": " lib (test)", - "start": 133.3, - "duration": 11.33, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "barrier", + "lazy", + "mutex", + "once", + "rwlock", + "spin_mutex", + "std" + ], + "start": 5.08, + "duration": 0.68, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.51 + } + ], + [ + "codegen", + { + "start": 0.51, + "end": 0.68 + } + ] + ] }, { - "i": 58, - "name": "bevy_sprite_render_bms_bindings", - "version": "0.19.0", + "i": 269, + "name": "erased-serde", + "version": "0.4.10", "mode": "todo", - "target": " lib (test)", - "start": 133.43, - "duration": 46.87, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": " build-script", + "features": [ + "alloc", + "std" + ], + "start": 5.13, + "duration": 0.82, + "unblocked_units": [ + 270 + ], + "unblocked_rmeta_units": [], + "sections": null }, { - "i": 59, - "name": "bevy_render_bms_bindings", - "version": "0.19.0", + "i": 282, + "name": "fixedbitset", + "version": "0.5.7", "mode": "todo", - "target": " lib (test)", - "start": 133.98, - "duration": 38.9, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "default", + "std" + ], + "start": 5.28, + "duration": 1.46, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.67 + } + ], + [ + "codegen", + { + "start": 0.67, + "end": 1.46 + } + ] + ] }, { - "i": 60, - "name": "script_integration_test_harness", - "version": "0.1.0", + "i": 32, + "name": "async-channel", + "version": "2.5.0", "mode": "todo", "target": "", - "start": 144.64, - "duration": 50.79, - "rmeta_time": 29.13, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "features": [ + "default", + "std" + ], + "start": 5.28, + "duration": 0.45, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.32 + } + ], + [ + "codegen", + { + "start": 0.32, + "end": 0.45 + } + ] + ] }, { - "i": 61, - "name": "bevy_mod_scripting", - "version": "0.19.0", + "i": 621, + "name": "typeid", + "version": "1.0.3", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 5.28, + "duration": 0.18, + "unblocked_units": [ + 619 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 40, + "name": "atomic-waker", + "version": "1.1.2", "mode": "todo", "target": "", - "start": 156.16, - "duration": 6.35, - "rmeta_time": 5.7, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "features": [], + "start": 5.31, + "duration": 0.45, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 456 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.29 + } + ], + [ + "codegen", + { + "start": 0.29, + "end": 0.45 + } + ] + ] }, { - "i": 62, - "name": "bevy_time_bms_bindings", - "version": "0.19.0", + "i": 619, + "name": "typeid", + "version": "1.0.3", "mode": "todo", - "target": " lib (test)", - "start": 156.46, - "duration": 12.93, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [], + "start": 5.6, + "duration": 0.35, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.11 + } + ], + [ + "codegen", + { + "start": 0.11, + "end": 0.35 + } + ] + ] }, { - "i": 63, - "name": "bevy_color_bms_bindings", - "version": "0.19.0", + "i": 39, + "name": "async-task", + "version": "4.7.1", "mode": "todo", - "target": " lib (test)", - "start": 159.33, - "duration": 12.31, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "default", + "std" + ], + "start": 5.6, + "duration": 0.96, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 33 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.61 + } + ], + [ + "codegen", + { + "start": 0.61, + "end": 0.96 + } + ] + ] }, { - "i": 64, - "name": "bevy_asset_bms_bindings", - "version": "0.19.0", + "i": 249, + "name": "disqualified", + "version": "1.0.0", "mode": "todo", - "target": " lib (test)", - "start": 161.05, - "duration": 9.08, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "alloc" + ], + "start": 5.71, + "duration": 0.57, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.24 + } + ], + [ + "codegen", + { + "start": 0.24, + "end": 0.57 + } + ] + ] }, { - "i": 65, - "name": "bevy_gltf_bms_bindings", + "i": 139, + "name": "bevy_ptr", "version": "0.19.0", "mode": "todo", - "target": " lib (test)", - "start": 161.16, - "duration": 36.04, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [], + "start": 5.81, + "duration": 0.46, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.4 + } + ], + [ + "codegen", + { + "start": 0.4, + "end": 0.46 + } + ] + ] }, { - "i": 66, - "name": "bevy_core_pipeline_bms_bindings", - "version": "0.19.0", + "i": 555, + "name": "slotmap", + "version": "1.1.1", "mode": "todo", - "target": " lib (test)", - "start": 162.52, - "duration": 25.75, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": " build-script", + "features": [ + "std" + ], + "start": 5.81, + "duration": 0.75, + "unblocked_units": [ + 556 + ], + "unblocked_rmeta_units": [], + "sections": null }, { - "i": 67, - "name": "script_integration_test_harness", - "version": "0.1.0", + "i": 252, + "name": "downcast-rs", + "version": "2.0.2", "mode": "todo", - "target": " lib (test)", - "start": 565.5, - "duration": 19.4, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "std" + ], + "start": 5.95, + "duration": 0.26, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.08 + } + ], + [ + "codegen", + { + "start": 0.08, + "end": 0.26 + } + ] + ] }, { - "i": 68, - "name": "bevy_mod_scripting", - "version": "0.19.0", + "i": 603, + "name": "toml_edit", + "version": "0.25.11+spec-1.1.0", "mode": "todo", - "target": " bench \"benchmarks\" (test)", - "start": 565.5, - "duration": 44.45, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "parse" + ], + "start": 6.21, + "duration": 4.52, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.05 + } + ], + [ + "codegen", + { + "start": 2.05, + "end": 4.52 + } + ] + ] }, { - "i": 69, - "name": "bevy_mod_scripting_functions", - "version": "0.19.0", + "i": 270, + "name": "erased-serde", + "version": "0.4.10", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "alloc", + "std" + ], + "start": 6.21, + "duration": 0.13, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 356, + "name": "inventory", + "version": "0.3.24", + "mode": "todo", + "target": "", + "features": [], + "start": 6.21, + "duration": 0.35, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.06 + } + ], + [ + "codegen", + { + "start": 0.06, + "end": 0.35 + } + ] + ] + }, + { + "i": 33, + "name": "async-executor", + "version": "1.14.0", + "mode": "todo", + "target": "", + "features": [], + "start": 6.34, + "duration": 1.92, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.47 + } + ], + [ + "codegen", + { + "start": 0.47, + "end": 1.92 + } + ] + ] + }, + { + "i": 233, + "name": "crossbeam-queue", + "version": "0.3.12", + "mode": "todo", + "target": "", + "features": [ + "alloc" + ], + "start": 6.56, + "duration": 0.27, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.14 + } + ], + [ + "codegen", + { + "start": 0.14, + "end": 0.27 + } + ] + ] + }, + { + "i": 188, + "name": "bumpalo", + "version": "3.20.2", "mode": "todo", - "target": " lib (test)", - "start": 565.5, - "duration": 17.54, - "rmeta_time": null, - "unlocked_units": [], - "unlocked_rmeta_units": [] + "target": "", + "features": [ + "default" + ], + "start": 6.56, + "duration": 0.71, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.42 + } + ], + [ + "codegen", + { + "start": 0.42, + "end": 0.71 + } + ] + ] + }, + { + "i": 415, + "name": "nonmax", + "version": "0.5.5", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 6.56, + "duration": 0.94, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 426 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.42 + } + ], + [ + "codegen", + { + "start": 0.42, + "end": 0.94 + } + ] + ] + }, + { + "i": 556, + "name": "slotmap", + "version": "1.1.1", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "std" + ], + "start": 6.66, + "duration": 0.44, + "unblocked_units": [ + 554 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 609, + "name": "tracing-core", + "version": "0.1.36", + "mode": "todo", + "target": "", + "features": [ + "default", + "once_cell", + "std" + ], + "start": 6.66, + "duration": 4.35, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 610 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.6 + } + ], + [ + "codegen", + { + "start": 1.6, + "end": 4.35 + } + ] + ] + }, + { + "i": 9, + "name": "aho-corasick", + "version": "1.1.4", + "mode": "todo", + "target": "", + "features": [ + "default", + "perf-literal", + "std" + ], + "start": 6.7, + "duration": 20.99, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 4.81 + } + ], + [ + "codegen", + { + "start": 4.81, + "end": 20.99 + } + ] + ] + }, + { + "i": 546, + "name": "shlex", + "version": "1.3.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 6.75, + "duration": 0.75, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.53 + } + ], + [ + "codegen", + { + "start": 0.53, + "end": 0.75 + } + ] + ] + }, + { + "i": 281, + "name": "find-msvc-tools", + "version": "0.1.9", + "mode": "todo", + "target": "", + "features": [], + "start": 6.8, + "duration": 3.53, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 194 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.45 + } + ], + [ + "codegen", + { + "start": 1.45, + "end": 3.53 + } + ] + ] + }, + { + "i": 514, + "name": "regex-syntax", + "version": "0.8.10", + "mode": "todo", + "target": "", + "features": [ + "default", + "std", + "unicode", + "unicode-age", + "unicode-bool", + "unicode-case", + "unicode-gencat", + "unicode-perl", + "unicode-script", + "unicode-segment" + ], + "start": 6.98, + "duration": 26.62, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 512 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 7.31 + } + ], + [ + "codegen", + { + "start": 7.31, + "end": 26.62 + } + ] + ] + }, + { + "i": 554, + "name": "slotmap", + "version": "1.1.1", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 7.28, + "duration": 2.03, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.81 + } + ], + [ + "codegen", + { + "start": 1.81, + "end": 2.03 + } + ] + ] + }, + { + "i": 319, + "name": "hashbrown", + "version": "0.16.1", + "mode": "todo", + "target": "", + "features": [ + "allocator-api2", + "default", + "default-hasher", + "equivalent", + "inline-more", + "raw-entry", + "serde" + ], + "start": 7.66, + "duration": 3.3, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.07 + } + ], + [ + "codegen", + { + "start": 3.07, + "end": 3.3 + } + ] + ] + }, + { + "i": 682, + "name": "windows-result", + "version": "0.4.1", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 7.66, + "duration": 1.65, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.76 + } + ], + [ + "codegen", + { + "start": 0.76, + "end": 1.65 + } + ] + ] + }, + { + "i": 354, + "name": "indexmap", + "version": "2.14.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "serde", + "std" + ], + "start": 7.66, + "duration": 2.67, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.34 + } + ], + [ + "codegen", + { + "start": 2.34, + "end": 2.67 + } + ] + ] + }, + { + "i": 636, + "name": "uuid", + "version": "1.23.1", + "mode": "todo", + "target": "", + "features": [ + "default", + "rng", + "serde", + "std", + "v4" + ], + "start": 8.25, + "duration": 2.47, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 0 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.35 + } + ], + [ + "codegen", + { + "start": 1.35, + "end": 2.47 + } + ] + ] + }, + { + "i": 268, + "name": "erased-serde", + "version": "0.4.10", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "std" + ], + "start": 8.42, + "duration": 2.86, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.91 + } + ], + [ + "codegen", + { + "start": 1.91, + "end": 2.86 + } + ] + ] + }, + { + "i": 673, + "name": "winapi-util", + "version": "0.1.11", + "mode": "todo", + "target": "", + "features": [], + "start": 9.09, + "duration": 0.6, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 528, + 585 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.22 + } + ], + [ + "codegen", + { + "start": 0.22, + "end": 0.6 + } + ] + ] + }, + { + "i": 240, + "name": "ctrlc", + "version": "3.5.2", + "mode": "todo", + "target": "", + "features": [], + "start": 9.42, + "duration": 0.65, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.24 + } + ], + [ + "codegen", + { + "start": 0.24, + "end": 0.65 + } + ] + ] + }, + { + "i": 194, + "name": "cc", + "version": "1.2.61", + "mode": "todo", + "target": "", + "features": [], + "start": 9.42, + "duration": 5.11, + "unblocked_units": [ + 183, + 615 + ], + "unblocked_rmeta_units": [ + 386 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.79 + } + ], + [ + "codegen", + { + "start": 2.79, + "end": 5.11 + } + ] + ] + }, + { + "i": 683, + "name": "windows-strings", + "version": "0.5.1", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 9.6, + "duration": 2.83, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.13 + } + ], + [ + "codegen", + { + "start": 1.13, + "end": 2.83 + } + ] + ] + }, + { + "i": 257, + "name": "either", + "version": "1.15.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std", + "use_std" + ], + "start": 9.72, + "duration": 1.01, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 361, + 359 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.61 + } + ], + [ + "codegen", + { + "start": 0.61, + "end": 1.01 + } + ] + ] + }, + { + "i": 629, + "name": "unicode-ident", + "version": "1.0.24", + "mode": "todo", + "target": "", + "features": [], + "start": 10.33, + "duration": 0.4, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 0.4 + } + ] + ] + }, + { + "i": 689, + "name": "windows-threading", + "version": "0.2.1", + "mode": "todo", + "target": "", + "features": [], + "start": 10.73, + "duration": 0.82, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.42 + } + ], + [ + "codegen", + { + "start": 0.42, + "end": 0.82 + } + ] + ] + }, + { + "i": 373, + "name": "libc", + "version": "0.2.186", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "std" + ], + "start": 10.75, + "duration": 1.92, + "unblocked_units": [ + 374 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 42, + "name": "autocfg", + "version": "1.5.0", + "mode": "todo", + "target": "", + "features": [], + "start": 10.75, + "duration": 1.69, + "unblocked_units": [ + 560, + 424, + 36 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.8 + } + ], + [ + "codegen", + { + "start": 0.8, + "end": 1.69 + } + ] + ] + }, + { + "i": 671, + "name": "winapi", + "version": "0.3.9", + "mode": "todo", + "target": " build-script", + "features": [ + "cfg", + "evntrace", + "in6addr", + "inaddr", + "minwinbase", + "ntsecapi", + "windef", + "winioctl" + ], + "start": 10.87, + "duration": 1.8, + "unblocked_units": [ + 672 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 292, + "name": "futures-task", + "version": "0.3.32", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "std" + ], + "start": 10.87, + "duration": 1.57, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.9 + } + ], + [ + "codegen", + { + "start": 0.9, + "end": 1.57 + } + ] + ] + }, + { + "i": 694, + "name": "windows_x86_64_msvc", + "version": "0.53.1", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 10.87, + "duration": 0.9, + "unblocked_units": [ + 695 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 528, + "name": "same-file", + "version": "1.0.6", + "mode": "todo", + "target": "", + "features": [], + "start": 10.87, + "duration": 0.65, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 643 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.32 + } + ], + [ + "codegen", + { + "start": 0.32, + "end": 0.65 + } + ] + ] + }, + { + "i": 420, + "name": "ntapi", + "version": "0.4.3", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "user" + ], + "start": 11.02, + "duration": 1.08, + "unblocked_units": [ + 421 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 456, + "name": "piper", + "version": "0.2.5", + "mode": "todo", + "target": "", + "features": [ + "default", + "futures-io", + "std" + ], + "start": 11.02, + "duration": 1.4, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 185 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.42 + } + ], + [ + "codegen", + { + "start": 0.42, + "end": 1.4 + } + ] + ] + }, + { + "i": 643, + "name": "walkdir", + "version": "2.5.0", + "mode": "todo", + "target": "", + "features": [], + "start": 11.39, + "duration": 2.79, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.71 + } + ], + [ + "codegen", + { + "start": 0.71, + "end": 2.79 + } + ] + ] + }, + { + "i": 185, + "name": "blocking", + "version": "1.6.2", + "mode": "todo", + "target": "", + "features": [], + "start": 11.77, + "duration": 1.92, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.9 + } + ], + [ + "codegen", + { + "start": 0.9, + "end": 1.92 + } + ] + ] + }, + { + "i": 230, + "name": "crossbeam-channel", + "version": "0.5.15", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 11.77, + "duration": 2.78, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.89 + } + ], + [ + "codegen", + { + "start": 1.89, + "end": 2.78 + } + ] + ] + }, + { + "i": 695, + "name": "windows_x86_64_msvc", + "version": "0.53.1", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 12.1, + "duration": 0.0, + "unblocked_units": [ + 693 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 693, + "name": "windows_x86_64_msvc", + "version": "0.53.1", + "mode": "todo", + "target": "", + "features": [], + "start": 12.21, + "duration": 0.22, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 688 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 0.22 + } + ] + ] + }, + { + "i": 421, + "name": "ntapi", + "version": "0.4.3", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "user" + ], + "start": 12.21, + "duration": 0.02, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 688, + "name": "windows-targets", + "version": "0.53.5", + "mode": "todo", + "target": "", + "features": [], + "start": 12.42, + "duration": 0.38, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 685 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.25 + } + ], + [ + "codegen", + { + "start": 0.25, + "end": 0.38 + } + ] + ] + }, + { + "i": 224, + "name": "cpufeatures", + "version": "0.3.0", + "mode": "todo", + "target": "", + "features": [], + "start": 12.67, + "duration": 0.37, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.13 + } + ], + [ + "codegen", + { + "start": 0.13, + "end": 0.37 + } + ] + ] + }, + { + "i": 38, + "name": "async-lock", + "version": "3.4.2", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 12.67, + "duration": 2.51, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 34 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.31 + } + ], + [ + "codegen", + { + "start": 1.31, + "end": 2.51 + } + ] + ] + }, + { + "i": 220, + "name": "constant_time_eq", + "version": "0.4.2", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 12.67, + "duration": 0.87, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.35 + } + ], + [ + "codegen", + { + "start": 0.35, + "end": 0.87 + } + ] + ] + }, + { + "i": 215, + "name": "const-fnv1a-hash", + "version": "1.1.0", + "mode": "todo", + "target": "", + "features": [], + "start": 12.67, + "duration": 0.21, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.07 + } + ], + [ + "codegen", + { + "start": 0.07, + "end": 0.21 + } + ] + ] + }, + { + "i": 424, + "name": "num-traits", + "version": "0.2.19", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "libm", + "std" + ], + "start": 12.67, + "duration": 0.68, + "unblocked_units": [ + 425 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 374, + "name": "libc", + "version": "0.2.186", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "std" + ], + "start": 12.7, + "duration": 0.34, + "unblocked_units": [ + 372 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 22, + "name": "arrayref", + "version": "0.3.9", + "mode": "todo", + "target": "", + "features": [], + "start": 12.7, + "duration": 0.82, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.44 + } + ], + [ + "codegen", + { + "start": 0.44, + "end": 0.82 + } + ] + ] + }, + { + "i": 672, + "name": "winapi", + "version": "0.3.9", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "cfg", + "evntrace", + "in6addr", + "inaddr", + "minwinbase", + "ntsecapi", + "windef", + "winioctl" + ], + "start": 12.7, + "duration": 0.1, + "unblocked_units": [ + 670 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 670, + "name": "winapi", + "version": "0.3.9", + "mode": "todo", + "target": "", + "features": [ + "cfg", + "evntrace", + "in6addr", + "inaddr", + "minwinbase", + "ntsecapi", + "windef", + "winioctl" + ], + "start": 12.85, + "duration": 4.4, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 419 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 4.02 + } + ], + [ + "codegen", + { + "start": 4.02, + "end": 4.4 + } + ] + ] + }, + { + "i": 685, + "name": "windows-sys", + "version": "0.60.2", + "mode": "todo", + "target": "", + "features": [ + "Win32", + "Win32_Foundation", + "Win32_Security", + "Win32_Storage", + "Win32_Storage_FileSystem", + "Win32_System", + "Win32_System_IO", + "Win32_System_Threading", + "Win32_System_WindowsProgramming", + "default" + ], + "start": 12.86, + "duration": 3.88, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 280 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.53 + } + ], + [ + "codegen", + { + "start": 3.53, + "end": 3.88 + } + ] + ] + }, + { + "i": 566, + "name": "stackfuture", + "version": "0.3.1", + "mode": "todo", + "target": "", + "features": [], + "start": 13.02, + "duration": 0.52, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.2 + } + ], + [ + "codegen", + { + "start": 0.2, + "end": 0.52 + } + ] + ] + }, + { + "i": 372, + "name": "libc", + "version": "0.2.186", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 13.14, + "duration": 0.56, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.39 + } + ], + [ + "codegen", + { + "start": 0.39, + "end": 0.56 + } + ] + ] + }, + { + "i": 31, + "name": "async-broadcast", + "version": "0.7.2", + "mode": "todo", + "target": "", + "features": [], + "start": 13.22, + "duration": 0.7, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.49 + } + ], + [ + "codegen", + { + "start": 0.49, + "end": 0.7 + } + ] + ] + }, + { + "i": 425, + "name": "num-traits", + "version": "0.2.19", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "libm", + "std" + ], + "start": 13.54, + "duration": 0.6, + "unblocked_units": [ + 423 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 371, + "name": "lazy_static", + "version": "1.5.0", + "mode": "todo", + "target": "", + "features": [], + "start": 13.59, + "duration": 0.3, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 545 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.12 + } + ], + [ + "codegen", + { + "start": 0.12, + "end": 0.3 + } + ] + ] + }, + { + "i": 610, + "name": "tracing-log", + "version": "0.2.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "log-tracer", + "std" + ], + "start": 13.59, + "duration": 1.06, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.28 + } + ], + [ + "codegen", + { + "start": 0.28, + "end": 1.06 + } + ] + ] + }, + { + "i": 41, + "name": "atomicow", + "version": "1.2.0", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 13.59, + "duration": 0.33, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.21 + } + ], + [ + "codegen", + { + "start": 0.21, + "end": 0.33 + } + ] + ] + }, + { + "i": 422, + "name": "nu-ansi-term", + "version": "0.50.3", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 13.8, + "duration": 1.83, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.86 + } + ], + [ + "codegen", + { + "start": 0.86, + "end": 1.83 + } + ] + ] + }, + { + "i": 545, + "name": "sharded-slab", + "version": "0.1.7", + "mode": "todo", + "target": "", + "features": [], + "start": 13.8, + "duration": 2.23, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.71 + } + ], + [ + "codegen", + { + "start": 1.71, + "end": 2.23 + } + ] + ] + }, + { + "i": 435, + "name": "parking_lot_core", + "version": "0.9.12", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 13.99, + "duration": 0.67, + "unblocked_units": [ + 436 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 529, + "name": "scopeguard", + "version": "1.2.0", + "mode": "todo", + "target": "", + "features": [], + "start": 14.09, + "duration": 0.4, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 383 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.05 + } + ], + [ + "codegen", + { + "start": 0.05, + "end": 0.4 + } + ] + ] + }, + { + "i": 361, + "name": "itertools", + "version": "0.14.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "use_alloc", + "use_std" + ], + "start": 14.09, + "duration": 6.02, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 5.53 + } + ], + [ + "codegen", + { + "start": 5.53, + "end": 6.02 + } + ] + ] + }, + { + "i": 423, + "name": "num-traits", + "version": "0.2.19", + "mode": "todo", + "target": "", + "features": [ + "default", + "libm", + "std" + ], + "start": 14.14, + "duration": 3.12, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 431, + 198, + 499, + 273, + 21 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.59 + } + ], + [ + "codegen", + { + "start": 2.59, + "end": 3.12 + } + ] + ] + }, + { + "i": 34, + "name": "async-fs", + "version": "2.2.0", + "mode": "todo", + "target": "", + "features": [], + "start": 14.29, + "duration": 3.18, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.47 + } + ], + [ + "codegen", + { + "start": 0.47, + "end": 3.18 + } + ] + ] + }, + { + "i": 95, + "name": "bevy_macro_utils", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 14.59, + "duration": 1.44, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 73 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.81 + } + ], + [ + "codegen", + { + "start": 0.81, + "end": 1.44 + } + ] + ] + }, + { + "i": 261, + "name": "encase_derive_impl", + "version": "0.12.0", + "mode": "todo", + "target": "", + "features": [], + "start": 14.59, + "duration": 1.44, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.81 + } + ], + [ + "codegen", + { + "start": 0.81, + "end": 1.44 + } + ] + ] + }, + { + "i": 512, + "name": "regex-automata", + "version": "0.4.14", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "dfa-build", + "dfa-onepass", + "dfa-search", + "hybrid", + "meta", + "nfa", + "nfa-backtrack", + "nfa-pikevm", + "nfa-thompson", + "perf", + "perf-inline", + "perf-literal", + "perf-literal-multisubstring", + "perf-literal-substring", + "std", + "syntax", + "unicode", + "unicode-age", + "unicode-bool", + "unicode-case", + "unicode-gencat", + "unicode-perl", + "unicode-script", + "unicode-segment", + "unicode-word-boundary" + ], + "start": 14.65, + "duration": 53.4, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 510, + 392, + 186 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 11.58 + } + ], + [ + "codegen", + { + "start": 11.58, + "end": 53.4 + } + ] + ] + }, + { + "i": 436, + "name": "parking_lot_core", + "version": "0.9.12", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 14.72, + "duration": 0.27, + "unblocked_units": [ + 434 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 183, + "name": "blake3", + "version": "1.8.5", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "std" + ], + "start": 14.72, + "duration": 1.14, + "unblocked_units": [ + 184 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 434, + "name": "parking_lot_core", + "version": "0.9.12", + "mode": "todo", + "target": "", + "features": [], + "start": 15.19, + "duration": 1.23, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.84 + } + ], + [ + "codegen", + { + "start": 0.84, + "end": 1.23 + } + ] + ] + }, + { + "i": 383, + "name": "lock_api", + "version": "0.4.14", + "mode": "todo", + "target": "", + "features": [ + "arc_lock", + "atomic_usize", + "default" + ], + "start": 15.4, + "duration": 1.05, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 433 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.79 + } + ], + [ + "codegen", + { + "start": 0.79, + "end": 1.05 + } + ] + ] + }, + { + "i": 73, + "name": "bevy_ecs_macro_logic", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 15.85, + "duration": 1.73, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.88 + } + ], + [ + "codegen", + { + "start": 0.88, + "end": 1.73 + } + ] + ] + }, + { + "i": 184, + "name": "blake3", + "version": "1.8.5", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "std" + ], + "start": 16.03, + "duration": 3.24, + "unblocked_units": [ + 182 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 709, + "name": "zerocopy", + "version": "0.8.48", + "mode": "todo", + "target": " build-script", + "features": [ + "derive", + "simd", + "zerocopy-derive" + ], + "start": 16.19, + "duration": 1.01, + "unblocked_units": [ + 710 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 251, + "name": "dot-writer", + "version": "0.1.4", + "mode": "todo", + "target": "", + "features": [], + "start": 16.19, + "duration": 0.85, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.54 + } + ], + [ + "codegen", + { + "start": 0.54, + "end": 0.85 + } + ] + ] + }, + { + "i": 226, + "name": "crc32fast", + "version": "1.5.0", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "std" + ], + "start": 16.33, + "duration": 0.68, + "unblocked_units": [ + 227 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 280, + "name": "file-id", + "version": "0.2.3", + "mode": "todo", + "target": "", + "features": [], + "start": 16.49, + "duration": 0.38, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.24 + } + ], + [ + "codegen", + { + "start": 0.24, + "end": 0.38 + } + ] + ] + }, + { + "i": 433, + "name": "parking_lot", + "version": "0.12.5", + "mode": "todo", + "target": "", + "features": [ + "arc_lock", + "default" + ], + "start": 16.73, + "duration": 3.61, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.92 + } + ], + [ + "codegen", + { + "start": 0.92, + "end": 3.61 + } + ] + ] + }, + { + "i": 499, + "name": "rand_distr", + "version": "0.6.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default", + "std" + ], + "start": 16.95, + "duration": 2.94, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.29 + } + ], + [ + "codegen", + { + "start": 2.29, + "end": 2.94 + } + ] + ] + }, + { + "i": 419, + "name": "ntapi", + "version": "0.4.3", + "mode": "todo", + "target": "", + "features": [ + "default", + "user" + ], + "start": 16.95, + "duration": 4.38, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.95 + } + ], + [ + "codegen", + { + "start": 3.95, + "end": 4.38 + } + ] + ] + }, + { + "i": 273, + "name": "euclid", + "version": "0.22.14", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 17.02, + "duration": 2.86, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 313 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.6 + } + ], + [ + "codegen", + { + "start": 2.6, + "end": 2.86 + } + ] + ] + }, + { + "i": 548, + "name": "simd-adler32", + "version": "0.3.9", + "mode": "todo", + "target": "", + "features": [ + "const-generics", + "default", + "std" + ], + "start": 17.07, + "duration": 1.23, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 277 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.78 + } + ], + [ + "codegen", + { + "start": 0.78, + "end": 1.23 + } + ] + ] + }, + { + "i": 710, + "name": "zerocopy", + "version": "0.8.48", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "derive", + "simd", + "zerocopy-derive" + ], + "start": 17.26, + "duration": 0.26, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 227, + "name": "crc32fast", + "version": "1.5.0", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "std" + ], + "start": 17.29, + "duration": 0.39, + "unblocked_units": [ + 225 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 4, + "name": "adler2", + "version": "2.0.1", + "mode": "todo", + "target": "", + "features": [], + "start": 17.36, + "duration": 0.71, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 402 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.49 + } + ], + [ + "codegen", + { + "start": 0.49, + "end": 0.71 + } + ] + ] + }, + { + "i": 219, + "name": "const_soft_float", + "version": "0.1.4", + "mode": "todo", + "target": "", + "features": [ + "no_std" + ], + "start": 17.52, + "duration": 3.45, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 221 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.1 + } + ], + [ + "codegen", + { + "start": 2.1, + "end": 3.45 + } + ] + ] + }, + { + "i": 484, + "name": "pxfm", + "version": "0.1.29", + "mode": "todo", + "target": "", + "features": [], + "start": 17.53, + "duration": 52.41, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 408 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 16.12 + } + ], + [ + "codegen", + { + "start": 16.12, + "end": 52.41 + } + ] + ] + }, + { + "i": 104, + "name": "bevy_mikktspace", + "version": "1.0.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 17.59, + "duration": 2.98, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.04 + } + ], + [ + "codegen", + { + "start": 1.04, + "end": 2.98 + } + ] + ] + }, + { + "i": 225, + "name": "crc32fast", + "version": "1.5.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 17.85, + "duration": 0.7, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.21 + } + ], + [ + "codegen", + { + "start": 0.21, + "end": 0.7 + } + ] + ] + }, + { + "i": 402, + "name": "miniz_oxide", + "version": "0.8.9", + "mode": "todo", + "target": "", + "features": [ + "default", + "simd", + "simd-adler32", + "with-alloc" + ], + "start": 18.18, + "duration": 5.78, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 283 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.71 + } + ], + [ + "codegen", + { + "start": 1.71, + "end": 5.78 + } + ] + ] + }, + { + "i": 277, + "name": "fdeflate", + "version": "0.3.7", + "mode": "todo", + "target": "", + "features": [], + "start": 18.35, + "duration": 2.97, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.81 + } + ], + [ + "codegen", + { + "start": 0.81, + "end": 2.97 + } + ] + ] + }, + { + "i": 618, + "name": "twox-hash", + "version": "2.1.2", + "mode": "todo", + "target": "", + "features": [ + "xxhash64" + ], + "start": 18.63, + "duration": 0.64, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 527 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.31 + } + ], + [ + "codegen", + { + "start": 0.31, + "end": 0.64 + } + ] + ] + }, + { + "i": 182, + "name": "blake3", + "version": "1.8.5", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 19.33, + "duration": 3.22, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.26 + } + ], + [ + "codegen", + { + "start": 1.26, + "end": 3.22 + } + ] + ] + }, + { + "i": 192, + "name": "byteorder-lite", + "version": "0.1.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 19.62, + "duration": 0.6, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.49 + } + ], + [ + "codegen", + { + "start": 0.49, + "end": 0.6 + } + ] + ] + }, + { + "i": 540, + "name": "serde_derive", + "version": "1.0.228", + "mode": "todo", + "target": "", + "features": [ + "default" + ], + "start": 19.95, + "duration": 8.77, + "unblocked_units": [ + 534 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 190, + "name": "bytemuck_derive", + "version": "1.10.2", + "mode": "todo", + "target": "", + "features": [], + "start": 19.95, + "duration": 3.64, + "unblocked_units": [ + 189 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 593, + "name": "thiserror-impl", + "version": "2.0.18", + "mode": "todo", + "target": "", + "features": [], + "start": 20.11, + "duration": 4.05, + "unblocked_units": [ + 590 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 260, + "name": "encase_derive", + "version": "0.12.0", + "mode": "todo", + "target": "", + "features": [], + "start": 20.11, + "duration": 1.21, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 244, + "name": "derive_more-impl", + "version": "2.1.1", + "mode": "todo", + "target": "", + "features": [ + "as_ref", + "default", + "deref", + "deref_mut", + "display", + "from", + "into" + ], + "start": 20.34, + "duration": 9.1, + "unblocked_units": [ + 243 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 143, + "name": "bevy_reflect_derive", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "auto_register", + "auto_register_inventory", + "default", + "reflect_documentation" + ], + "start": 20.59, + "duration": 8.68, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 637, + "name": "variadics_please", + "version": "1.1.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default" + ], + "start": 20.9, + "duration": 0.88, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 30, + "name": "assert_type_match", + "version": "0.1.1", + "mode": "todo", + "target": "", + "features": [], + "start": 21.33, + "duration": 2.24, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 68, + "name": "bevy_derive", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 21.38, + "duration": 2.1, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 74, + "name": "bevy_ecs_macros", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 21.38, + "duration": 5.99, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 679, + "name": "windows-interface", + "version": "0.59.3", + "mode": "todo", + "target": "", + "features": [], + "start": 21.38, + "duration": 2.08, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 678, + "name": "windows-implement", + "version": "0.60.2", + "mode": "todo", + "target": "", + "features": [], + "start": 21.96, + "duration": 2.14, + "unblocked_units": [ + 676 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 608, + "name": "tracing-attributes", + "version": "0.1.31", + "mode": "todo", + "target": "", + "features": [], + "start": 23.08, + "duration": 4.29, + "unblocked_units": [ + 607 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 56, + "name": "bevy_asset_macros", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 23.48, + "duration": 1.58, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 291, + "name": "futures-macro", + "version": "0.3.32", + "mode": "todo", + "target": "", + "features": [], + "start": 23.48, + "duration": 2.89, + "unblocked_units": [ + 293 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 483, + "name": "profiling-procmacros", + "version": "1.0.17", + "mode": "todo", + "target": "", + "features": [], + "start": 23.68, + "duration": 1.14, + "unblocked_units": [ + 482 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 189, + "name": "bytemuck", + "version": "1.25.0", + "mode": "todo", + "target": "", + "features": [ + "aarch64_simd", + "bytemuck_derive", + "derive", + "extern_crate_alloc", + "min_const_generics", + "must_cast", + "wasm_simd" + ], + "start": 23.96, + "duration": 1.95, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 258, + 286, + 212, + 181 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.1 + } + ], + [ + "codegen", + { + "start": 1.1, + "end": 1.95 + } + ] + ] + }, + { + "i": 711, + "name": "zerocopy-derive", + "version": "0.8.48", + "mode": "todo", + "target": "", + "features": [], + "start": 24.16, + "duration": 5.12, + "unblocked_units": [ + 708 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 590, + "name": "thiserror", + "version": "2.0.18", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 24.45, + "duration": 1.46, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 259 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.6 + } + ], + [ + "codegen", + { + "start": 0.6, + "end": 1.46 + } + ] + ] + }, + { + "i": 676, + "name": "windows-core", + "version": "0.62.2", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 24.45, + "duration": 4.82, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 675, + 677, + 681 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.21 + } + ], + [ + "codegen", + { + "start": 3.21, + "end": 4.82 + } + ] + ] + }, + { + "i": 482, + "name": "profiling", + "version": "1.0.17", + "mode": "todo", + "target": "", + "features": [ + "procmacros", + "profiling-procmacros" + ], + "start": 25.91, + "duration": 0.49, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.32 + } + ], + [ + "codegen", + { + "start": 0.32, + "end": 0.49 + } + ] + ] + }, + { + "i": 181, + "name": "bitflags", + "version": "2.13.1", + "mode": "todo", + "target": "", + "features": [ + "bytemuck", + "serde", + "serde_core", + "std" + ], + "start": 25.91, + "duration": 1.39, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 310, + 418, + 365, + 564 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.51 + } + ], + [ + "codegen", + { + "start": 0.51, + "end": 1.39 + } + ] + ] + }, + { + "i": 259, + "name": "encase", + "version": "0.12.0", + "mode": "todo", + "target": "", + "features": [], + "start": 26.23, + "duration": 2.03, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 302 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.83 + } + ], + [ + "codegen", + { + "start": 1.83, + "end": 2.03 + } + ] + ] + }, + { + "i": 115, + "name": "bevy_mod_scripting_derive", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 26.4, + "duration": 2.2, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 293, + "name": "futures-util", + "version": "0.3.32", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "async-await", + "async-await-macro", + "futures-macro", + "slab", + "std" + ], + "start": 26.41, + "duration": 9.77, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 9.06 + } + ], + [ + "codegen", + { + "start": 9.06, + "end": 9.77 + } + ] + ] + }, + { + "i": 392, + "name": "matchers", + "version": "0.2.0", + "mode": "todo", + "target": "", + "features": [], + "start": 26.42, + "duration": 0.59, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.22 + } + ], + [ + "codegen", + { + "start": 0.22, + "end": 0.59 + } + ] + ] + }, + { + "i": 418, + "name": "notify-types", + "version": "2.1.0", + "mode": "todo", + "target": "", + "features": [], + "start": 27.19, + "duration": 1.53, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 416 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.48 + } + ], + [ + "codegen", + { + "start": 0.48, + "end": 1.53 + } + ] + ] + }, + { + "i": 283, + "name": "flate2", + "version": "1.1.9", + "mode": "todo", + "target": "", + "features": [ + "any_impl", + "default", + "miniz_oxide", + "rust_backend" + ], + "start": 27.32, + "duration": 2.45, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 458 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.95 + } + ], + [ + "codegen", + { + "start": 1.95, + "end": 2.45 + } + ] + ] + }, + { + "i": 607, + "name": "tracing", + "version": "0.1.44", + "mode": "todo", + "target": "", + "features": [ + "attributes", + "default", + "std", + "tracing-attributes" + ], + "start": 27.41, + "duration": 1.86, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 611 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.07 + } + ], + [ + "codegen", + { + "start": 1.07, + "end": 1.86 + } + ] + ] + }, + { + "i": 221, + "name": "constgebra", + "version": "0.1.4", + "mode": "todo", + "target": "", + "features": [], + "start": 27.49, + "duration": 0.57, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.33 + } + ], + [ + "codegen", + { + "start": 0.33, + "end": 0.57 + } + ] + ] + }, + { + "i": 681, + "name": "windows-numerics", + "version": "0.3.1", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 27.82, + "duration": 0.61, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.35 + } + ], + [ + "codegen", + { + "start": 0.35, + "end": 0.61 + } + ] + ] + }, + { + "i": 302, + "name": "glam", + "version": "0.32.1", + "mode": "todo", + "target": "", + "features": [ + "bytemuck", + "encase", + "nostd-libm", + "rand", + "serde", + "std" + ], + "start": 28.27, + "duration": 26.32, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 327, + 140 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 24.23 + } + ], + [ + "codegen", + { + "start": 24.23, + "end": 26.32 + } + ] + ] + }, + { + "i": 675, + "name": "windows-collections", + "version": "0.3.2", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 28.51, + "duration": 1.59, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.51 + } + ], + [ + "codegen", + { + "start": 1.51, + "end": 1.59 + } + ] + ] + }, + { + "i": 677, + "name": "windows-future", + "version": "0.3.2", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 28.51, + "duration": 2.7, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 674 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.78 + } + ], + [ + "codegen", + { + "start": 1.78, + "end": 2.7 + } + ] + ] + }, + { + "i": 611, + "name": "tracing-subscriber", + "version": "0.3.23", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "ansi", + "default", + "env-filter", + "fmt", + "matchers", + "nu-ansi-term", + "once_cell", + "registry", + "sharded-slab", + "smallvec", + "std", + "thread_local", + "tracing", + "tracing-log" + ], + "start": 29.27, + "duration": 19.82, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 4.58 + } + ], + [ + "codegen", + { + "start": 4.58, + "end": 19.82 + } + ] + ] + }, + { + "i": 534, + "name": "serde", + "version": "1.0.228", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default", + "derive", + "serde_derive", + "std" + ], + "start": 29.27, + "duration": 1.65, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 136, + 448, + 668, + 518, + 562 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.32 + } + ], + [ + "codegen", + { + "start": 1.32, + "end": 1.65 + } + ] + ] + }, + { + "i": 416, + "name": "notify", + "version": "8.2.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "fsevent-sys", + "macos_fsevent" + ], + "start": 29.27, + "duration": 14.56, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 417 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.6 + } + ], + [ + "codegen", + { + "start": 0.6, + "end": 14.56 + } + ] + ] + }, + { + "i": 708, + "name": "zerocopy", + "version": "0.8.48", + "mode": "todo", + "target": "", + "features": [ + "derive", + "simd", + "zerocopy-derive" + ], + "start": 29.44, + "duration": 14.56, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 314, + 465 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 14.2 + } + ], + [ + "codegen", + { + "start": 14.2, + "end": 14.56 + } + ] + ] + }, + { + "i": 458, + "name": "png", + "version": "0.18.1", + "mode": "todo", + "target": "", + "features": [], + "start": 29.44, + "duration": 9.51, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.98 + } + ], + [ + "codegen", + { + "start": 2.98, + "end": 9.51 + } + ] + ] + }, + { + "i": 76, + "name": "bevy_encase_derive", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 29.44, + "duration": 1.0, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 574, + "name": "svg_fmt", + "version": "0.4.5", + "mode": "todo", + "target": "", + "features": [], + "start": 29.48, + "duration": 0.85, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 312 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.39 + } + ], + [ + "codegen", + { + "start": 0.39, + "end": 0.85 + } + ] + ] + }, + { + "i": 243, + "name": "derive_more", + "version": "2.1.1", + "mode": "todo", + "target": "", + "features": [ + "as_ref", + "deref", + "deref_mut", + "display", + "from", + "into", + "std" + ], + "start": 29.73, + "duration": 0.6, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.39 + } + ], + [ + "codegen", + { + "start": 0.39, + "end": 0.6 + } + ] + ] + }, + { + "i": 365, + "name": "ktx2", + "version": "0.5.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 30.03, + "duration": 3.88, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.38 + } + ], + [ + "codegen", + { + "start": 1.38, + "end": 3.88 + } + ] + ] + }, + { + "i": 417, + "name": "notify-debouncer-full", + "version": "0.7.0", + "mode": "todo", + "target": "", + "features": [], + "start": 30.14, + "duration": 4.83, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.78 + } + ], + [ + "codegen", + { + "start": 0.78, + "end": 4.83 + } + ] + ] + }, + { + "i": 674, + "name": "windows", + "version": "0.62.2", + "mode": "todo", + "target": "", + "features": [ + "Wdk", + "Wdk_System", + "Wdk_System_SystemInformation", + "Wdk_System_SystemServices", + "Wdk_System_Threading", + "Win32", + "Win32_Devices", + "Win32_Devices_DeviceAndDriverInstallation", + "Win32_Foundation", + "Win32_Globalization", + "Win32_Graphics", + "Win32_Graphics_Direct3D", + "Win32_Graphics_Direct3D12", + "Win32_Graphics_Direct3D_Dxc", + "Win32_Graphics_Direct3D_Fxc", + "Win32_Graphics_DirectComposition", + "Win32_Graphics_Dxgi", + "Win32_Graphics_Dxgi_Common", + "Win32_Graphics_Gdi", + "Win32_Security", + "Win32_Security_Authorization", + "Win32_System", + "Win32_System_Com", + "Win32_System_Diagnostics", + "Win32_System_Diagnostics_Debug", + "Win32_System_Diagnostics_ToolHelp", + "Win32_System_Kernel", + "Win32_System_LibraryLoader", + "Win32_System_Memory", + "Win32_System_Ole", + "Win32_System_Performance", + "Win32_System_Power", + "Win32_System_ProcessStatus", + "Win32_System_Registry", + "Win32_System_RemoteDesktop", + "Win32_System_SystemInformation", + "Win32_System_SystemServices", + "Win32_System_Threading", + "Win32_System_Variant", + "Win32_UI", + "Win32_UI_Accessibility", + "Win32_UI_Input", + "Win32_UI_Input_KeyboardAndMouse", + "Win32_UI_Shell", + "Win32_UI_WindowsAndMessaging", + "default", + "std" + ], + "start": 30.44, + "duration": 111.24, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 308, + 582 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 85.97 + } + ], + [ + "codegen", + { + "start": 85.97, + "end": 111.24 + } + ] + ] + }, + { + "i": 312, + "name": "guillotiere", + "version": "0.6.2", + "mode": "todo", + "target": "", + "features": [], + "start": 30.44, + "duration": 2.02, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.48 + } + ], + [ + "codegen", + { + "start": 0.48, + "end": 2.02 + } + ] + ] + }, + { + "i": 527, + "name": "ruzstd", + "version": "0.8.2", + "mode": "todo", + "target": "", + "features": [ + "default", + "hash", + "std" + ], + "start": 30.93, + "duration": 12.5, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.28 + } + ], + [ + "codegen", + { + "start": 3.28, + "end": 12.5 + } + ] + ] + }, + { + "i": 136, + "name": "bevy_platform", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default", + "futures-lite", + "serialize", + "std" + ], + "start": 31.34, + "duration": 1.59, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 159, + 174 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.24 + } + ], + [ + "codegen", + { + "start": 1.24, + "end": 1.59 + } + ] + ] + }, + { + "i": 668, + "name": "wgpu-types", + "version": "29.0.3", + "mode": "todo", + "target": "", + "features": [ + "default", + "fragile-send-sync-non-atomic-wasm", + "serde", + "std", + "web" + ], + "start": 31.34, + "duration": 17.25, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 11.14 + } + ], + [ + "codegen", + { + "start": 11.14, + "end": 17.25 + } + ] + ] + }, + { + "i": 562, + "name": "smol_str", + "version": "0.2.2", + "mode": "todo", + "target": "", + "features": [ + "default", + "serde", + "std" + ], + "start": 32.48, + "duration": 1.17, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.64 + } + ], + [ + "codegen", + { + "start": 0.64, + "end": 1.17 + } + ] + ] + }, + { + "i": 174, + "name": "bevy_utils", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "buffered_channel", + "debug", + "default", + "parallel", + "std" + ], + "start": 33.12, + "duration": 0.76, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.46 + } + ], + [ + "codegen", + { + "start": 0.46, + "end": 0.76 + } + ] + ] + }, + { + "i": 448, + "name": "petgraph", + "version": "0.8.3", + "mode": "todo", + "target": "", + "features": [ + "default", + "graphmap", + "matrix_graph", + "serde", + "serde-1", + "serde_derive", + "stable_graph", + "std" + ], + "start": 33.73, + "duration": 10.89, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 9.31 + } + ], + [ + "codegen", + { + "start": 9.31, + "end": 10.89 + } + ] + ] + }, + { + "i": 159, + "name": "bevy_tasks", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "async_executor", + "default", + "futures-lite", + "multi_threaded" + ], + "start": 33.73, + "duration": 5.8, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.65 + } + ], + [ + "codegen", + { + "start": 1.65, + "end": 5.8 + } + ] + ] + }, + { + "i": 518, + "name": "ron", + "version": "0.12.1", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 33.93, + "duration": 13.7, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.4 + } + ], + [ + "codegen", + { + "start": 3.4, + "end": 13.7 + } + ] + ] + }, + { + "i": 408, + "name": "moxcms", + "version": "0.8.1", + "mode": "todo", + "target": "", + "features": [ + "avx", + "avx_luts", + "avx_shaper_fixed_point_paths", + "avx_shaper_paths", + "default", + "lut", + "neon", + "neon_luts", + "neon_shaper_fixed_point_paths", + "neon_shaper_paths", + "sse", + "sse_luts", + "sse_shaper_fixed_point_paths", + "sse_shaper_paths" + ], + "start": 34.02, + "duration": 65.34, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 350 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 11.53 + } + ], + [ + "codegen", + { + "start": 11.53, + "end": 65.34 + } + ] + ] + }, + { + "i": 508, + "name": "rectangle-pack", + "version": "0.4.2", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 35.38, + "duration": 2.35, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.82 + } + ], + [ + "codegen", + { + "start": 0.82, + "end": 2.35 + } + ] + ] + }, + { + "i": 197, + "name": "cfg_aliases", + "version": "0.2.1", + "mode": "todo", + "target": "", + "features": [], + "start": 36.21, + "duration": 0.27, + "unblocked_units": [ + 661, + 697, + 410, + 658, + 665 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.12 + } + ], + [ + "codegen", + { + "start": 0.12, + "end": 0.27 + } + ] + ] + }, + { + "i": 510, + "name": "regex", + "version": "1.12.3", + "mode": "todo", + "target": "", + "features": [ + "default", + "perf", + "perf-backtrack", + "perf-cache", + "perf-dfa", + "perf-inline", + "perf-literal", + "perf-onepass", + "std", + "unicode", + "unicode-age", + "unicode-bool", + "unicode-case", + "unicode-gencat", + "unicode-perl", + "unicode-script", + "unicode-segment" + ], + "start": 36.49, + "duration": 5.73, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 262 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.79 + } + ], + [ + "codegen", + { + "start": 1.79, + "end": 5.73 + } + ] + ] + }, + { + "i": 585, + "name": "termcolor", + "version": "1.4.1", + "mode": "todo", + "target": "", + "features": [], + "start": 38.08, + "duration": 2.11, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.54 + } + ], + [ + "codegen", + { + "start": 0.54, + "end": 2.11 + } + ] + ] + }, + { + "i": 632, + "name": "unicode-width", + "version": "0.2.2", + "mode": "todo", + "target": "", + "features": [ + "cjk", + "default" + ], + "start": 39.26, + "duration": 1.19, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 211, + 210 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.03 + } + ], + [ + "codegen", + { + "start": 1.03, + "end": 1.19 + } + ] + ] + }, + { + "i": 410, + "name": "naga", + "version": "29.0.3", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "hlsl-out", + "spv-out", + "termcolor", + "wgsl-in", + "wgsl-out" + ], + "start": 40.04, + "duration": 1.02, + "unblocked_units": [ + 411 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 180, + "name": "bit-vec", + "version": "0.9.1", + "mode": "todo", + "target": "", + "features": [], + "start": 40.43, + "duration": 0.79, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 179 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.45 + } + ], + [ + "codegen", + { + "start": 0.45, + "end": 0.79 + } + ] + ] + }, + { + "i": 211, + "name": "codespan-reporting", + "version": "0.13.1", + "mode": "todo", + "target": "", + "features": [ + "std", + "termcolor" + ], + "start": 40.54, + "duration": 3.96, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.32 + } + ], + [ + "codegen", + { + "start": 1.32, + "end": 3.96 + } + ] + ] + }, + { + "i": 411, + "name": "naga", + "version": "29.0.3", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "hlsl-out", + "spv-out", + "termcolor", + "wgsl-in", + "wgsl-out" + ], + "start": 41.21, + "duration": 0.26, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 179, + "name": "bit-set", + "version": "0.9.1", + "mode": "todo", + "target": "", + "features": [], + "start": 41.5, + "duration": 0.45, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.25 + } + ], + [ + "codegen", + { + "start": 0.25, + "end": 0.45 + } + ] + ] + }, + { + "i": 564, + "name": "spirv", + "version": "0.4.0+sdk-1.4.341.0", + "mode": "todo", + "target": "", + "features": [], + "start": 41.51, + "duration": 8.47, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.15 + } + ], + [ + "codegen", + { + "start": 3.15, + "end": 8.47 + } + ] + ] + }, + { + "i": 519, + "name": "rustc-hash", + "version": "1.1.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 41.98, + "duration": 0.31, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.12 + } + ], + [ + "codegen", + { + "start": 0.12, + "end": 0.31 + } + ] + ] + }, + { + "i": 328, + "name": "hexf-parse", + "version": "0.2.1", + "mode": "todo", + "target": "", + "features": [], + "start": 42.31, + "duration": 0.5, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.22 + } + ], + [ + "codegen", + { + "start": 0.22, + "end": 0.5 + } + ] + ] + }, + { + "i": 580, + "name": "synstructure", + "version": "0.13.2", + "mode": "todo", + "target": "", + "features": [ + "default", + "proc-macro" + ], + "start": 42.48, + "duration": 1.45, + "unblocked_units": [ + 713, + 706 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.55 + } + ], + [ + "codegen", + { + "start": 0.55, + "end": 1.45 + } + ] + ] + }, + { + "i": 565, + "name": "stable_deref_trait", + "version": "1.2.1", + "mode": "todo", + "target": "", + "features": [ + "alloc" + ], + "start": 43.04, + "duration": 0.28, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.21 + } + ], + [ + "codegen", + { + "start": 0.21, + "end": 0.28 + } + ] + ] + }, + { + "i": 718, + "name": "zmij", + "version": "1.0.21", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 43.47, + "duration": 0.85, + "unblocked_units": [ + 719 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 567, + "name": "static_assertions", + "version": "1.1.0", + "mode": "todo", + "target": "", + "features": [], + "start": 43.47, + "duration": 0.67, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.54 + } + ], + [ + "codegen", + { + "start": 0.54, + "end": 0.67 + } + ] + ] + }, + { + "i": 314, + "name": "half", + "version": "2.7.1", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "bytemuck", + "default", + "num-traits", + "std" + ], + "start": 43.96, + "duration": 2.52, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 409 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.55 + } + ], + [ + "codegen", + { + "start": 1.55, + "end": 2.52 + } + ] + ] + }, + { + "i": 713, + "name": "zerofrom-derive", + "version": "0.1.7", + "mode": "todo", + "target": "", + "features": [], + "start": 44.0, + "duration": 3.27, + "unblocked_units": [ + 712 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 706, + "name": "yoke-derive", + "version": "0.8.2", + "mode": "todo", + "target": "", + "features": [], + "start": 44.01, + "duration": 2.98, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 542, + "name": "serde_json", + "version": "1.0.149", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "raw_value", + "std" + ], + "start": 44.32, + "duration": 0.6, + "unblocked_units": [ + 543 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 719, + "name": "zmij", + "version": "1.0.21", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 44.5, + "duration": 0.09, + "unblocked_units": [ + 717 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 25, + "name": "ash", + "version": "0.38.0+1.3.281", + "mode": "todo", + "target": " build-script", + "features": [ + "debug", + "default", + "libloading", + "loaded", + "std" + ], + "start": 44.57, + "duration": 0.6, + "unblocked_units": [ + 26 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 717, + "name": "zmij", + "version": "1.0.21", + "mode": "todo", + "target": "", + "features": [], + "start": 44.65, + "duration": 1.02, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.56 + } + ], + [ + "codegen", + { + "start": 0.56, + "end": 1.02 + } + ] + ] + }, + { + "i": 210, + "name": "codespan-reporting", + "version": "0.12.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std", + "termcolor" + ], + "start": 44.68, + "duration": 3.92, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.09 + } + ], + [ + "codegen", + { + "start": 1.09, + "end": 3.92 + } + ] + ] + }, + { + "i": 543, + "name": "serde_json", + "version": "1.0.149", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "raw_value", + "std" + ], + "start": 45.0, + "duration": 0.09, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 375, + "name": "libloading", + "version": "0.8.9", + "mode": "todo", + "target": "", + "features": [], + "start": 45.11, + "duration": 0.95, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 24 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.61 + } + ], + [ + "codegen", + { + "start": 0.61, + "end": 0.95 + } + ] + ] + }, + { + "i": 26, + "name": "ash", + "version": "0.38.0+1.3.281", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "debug", + "default", + "libloading", + "loaded", + "std" + ], + "start": 45.2, + "duration": 0.14, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 242, + "name": "data-encoding", + "version": "2.11.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default", + "std" + ], + "start": 45.36, + "duration": 11.91, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.99 + } + ], + [ + "codegen", + { + "start": 0.99, + "end": 11.91 + } + ] + ] + }, + { + "i": 350, + "name": "image", + "version": "0.25.10", + "mode": "todo", + "target": "", + "features": [ + "hdr", + "png" + ], + "start": 45.71, + "duration": 61.46, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 7.0 + } + ], + [ + "codegen", + { + "start": 7.0, + "end": 61.46 + } + ] + ] + }, + { + "i": 409, + "name": "naga", + "version": "29.0.3", + "mode": "todo", + "target": "", + "features": [ + "default", + "hlsl-out", + "spv-out", + "termcolor", + "wgsl-in", + "wgsl-out" + ], + "start": 46.35, + "duration": 131.45, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 667, + 412 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 24.81 + } + ], + [ + "codegen", + { + "start": 24.81, + "end": 131.45 + } + ] + ] + }, + { + "i": 362, + "name": "itoa", + "version": "1.0.18", + "mode": "todo", + "target": "", + "features": [], + "start": 46.94, + "duration": 0.66, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 541 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.2 + } + ], + [ + "codegen", + { + "start": 0.2, + "end": 0.66 + } + ] + ] + }, + { + "i": 24, + "name": "ash", + "version": "0.38.0+1.3.281", + "mode": "todo", + "target": "", + "features": [ + "debug", + "default", + "libloading", + "loaded", + "std" + ], + "start": 47.0, + "duration": 37.47, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 28.24 + } + ], + [ + "codegen", + { + "start": 28.24, + "end": 37.47 + } + ] + ] + }, + { + "i": 712, + "name": "zerofrom", + "version": "0.1.7", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "derive" + ], + "start": 47.29, + "duration": 0.72, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 705 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.58 + } + ], + [ + "codegen", + { + "start": 0.58, + "end": 0.72 + } + ] + ] + }, + { + "i": 541, + "name": "serde_json", + "version": "1.0.149", + "mode": "todo", + "target": "", + "features": [ + "default", + "raw_value", + "std" + ], + "start": 47.6, + "duration": 10.32, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 599 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.0 + } + ], + [ + "codegen", + { + "start": 3.0, + "end": 10.32 + } + ] + ] + }, + { + "i": 665, + "name": "wgpu-hal", + "version": "29.0.3", + "mode": "todo", + "target": " build-script", + "features": [ + "dx12", + "fragile-send-sync-non-atomic-wasm", + "portable-atomic", + "renderdoc", + "vulkan" + ], + "start": 47.68, + "duration": 0.93, + "unblocked_units": [ + 666 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 705, + "name": "yoke", + "version": "0.8.2", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "derive", + "zerofrom" + ], + "start": 48.18, + "duration": 1.08, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.86 + } + ], + [ + "codegen", + { + "start": 0.86, + "end": 1.08 + } + ] + ] + }, + { + "i": 310, + "name": "gpu-descriptor-types", + "version": "0.2.0", + "mode": "todo", + "target": "", + "features": [], + "start": 48.64, + "duration": 0.81, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 309 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.34 + } + ], + [ + "codegen", + { + "start": 0.34, + "end": 0.81 + } + ] + ] + }, + { + "i": 716, + "name": "zerovec-derive", + "version": "0.11.3", + "mode": "todo", + "target": "", + "features": [], + "start": 48.67, + "duration": 2.76, + "unblocked_units": [ + 715 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 286, + "name": "font-types", + "version": "0.11.3", + "mode": "todo", + "target": "", + "features": [ + "bytemuck", + "std" + ], + "start": 48.67, + "duration": 1.56, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 507, + 506 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.24 + } + ], + [ + "codegen", + { + "start": 1.24, + "end": 1.56 + } + ] + ] + }, + { + "i": 525, + "name": "rustversion", + "version": "1.0.22", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 49.11, + "duration": 1.0, + "unblocked_units": [ + 526 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 469, + "name": "presser", + "version": "0.3.1", + "mode": "todo", + "target": "", + "features": [], + "start": 49.31, + "duration": 0.33, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.16 + } + ], + [ + "codegen", + { + "start": 0.16, + "end": 0.33 + } + ] + ] + }, + { + "i": 309, + "name": "gpu-descriptor", + "version": "0.3.2", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 49.47, + "duration": 0.86, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.44 + } + ], + [ + "codegen", + { + "start": 0.44, + "end": 0.86 + } + ] + ] + }, + { + "i": 666, + "name": "wgpu-hal", + "version": "29.0.3", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "dx12", + "fragile-send-sync-non-atomic-wasm", + "portable-atomic", + "renderdoc", + "vulkan" + ], + "start": 49.9, + "duration": 0.0, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 79, + "name": "bevy_gizmos_macros", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 50.05, + "duration": 0.77, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 248, + "name": "displaydoc", + "version": "0.2.5", + "mode": "todo", + "target": "", + "features": [], + "start": 50.05, + "duration": 1.53, + "unblocked_units": [ + 714 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 526, + "name": "rustversion", + "version": "1.0.22", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 50.23, + "duration": 0.12, + "unblocked_units": [ + 524 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 98, + "name": "bevy_material_macros", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 50.33, + "duration": 0.95, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 431, + "name": "ordered-float", + "version": "5.3.0", + "mode": "todo", + "target": "", + "features": [], + "start": 50.36, + "duration": 0.77, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.55 + } + ], + [ + "codegen", + { + "start": 0.55, + "end": 0.77 + } + ] + ] + }, + { + "i": 500, + "name": "range-alloc", + "version": "0.1.5", + "mode": "todo", + "target": "", + "features": [], + "start": 50.38, + "duration": 0.33, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.19 + } + ], + [ + "codegen", + { + "start": 0.19, + "end": 0.33 + } + ] + ] + }, + { + "i": 515, + "name": "renderdoc-sys", + "version": "1.1.0", + "mode": "todo", + "target": "", + "features": [], + "start": 50.81, + "duration": 0.39, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.12 + } + ], + [ + "codegen", + { + "start": 0.12, + "end": 0.39 + } + ] + ] + }, + { + "i": 524, + "name": "rustversion", + "version": "1.0.22", + "mode": "todo", + "target": "", + "features": [], + "start": 50.86, + "duration": 2.28, + "unblocked_units": [ + 645 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 661, + "name": "wgpu-core", + "version": "29.0.3", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "dx12", + "fragile-send-sync-non-atomic-wasm", + "metal", + "portable-atomic", + "renderdoc", + "std", + "vulkan", + "webgl", + "wgpu-core-deps-windows-linux-android", + "wgsl" + ], + "start": 51.16, + "duration": 0.96, + "unblocked_units": [ + 662 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 702, + "name": "writeable", + "version": "0.6.3", + "mode": "todo", + "target": "", + "features": [ + "alloc" + ], + "start": 51.29, + "duration": 1.73, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.63 + } + ], + [ + "codegen", + { + "start": 0.63, + "end": 1.73 + } + ] + ] + }, + { + "i": 398, + "name": "memchr", + "version": "2.8.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default", + "std" + ], + "start": 51.43, + "duration": 1.61, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 8 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.91 + } + ], + [ + "codegen", + { + "start": 0.91, + "end": 1.61 + } + ] + ] + }, + { + "i": 715, + "name": "zerovec", + "version": "0.11.6", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "derive", + "yoke" + ], + "start": 51.58, + "duration": 3.85, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 464, + 598 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.65 + } + ], + [ + "codegen", + { + "start": 3.65, + "end": 3.85 + } + ] + ] + }, + { + "i": 382, + "name": "litrs", + "version": "1.0.0", + "mode": "todo", + "target": "", + "features": [], + "start": 51.8, + "duration": 1.6, + "unblocked_units": [ + 250 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.06 + } + ], + [ + "codegen", + { + "start": 1.06, + "end": 1.6 + } + ] + ] + }, + { + "i": 662, + "name": "wgpu-core", + "version": "29.0.3", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "dx12", + "fragile-send-sync-non-atomic-wasm", + "metal", + "portable-atomic", + "renderdoc", + "std", + "vulkan", + "webgl", + "wgpu-core-deps-windows-linux-android", + "wgsl" + ], + "start": 52.34, + "duration": 0.05, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 658, + "name": "wgpu", + "version": "29.0.3", + "mode": "todo", + "target": " build-script", + "features": [ + "dx12", + "fragile-send-sync-non-atomic-wasm", + "metal", + "naga-ir", + "vulkan", + "web", + "webgl", + "wgpu-core", + "wgsl" + ], + "start": 52.65, + "duration": 1.3, + "unblocked_units": [ + 659 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 327, + "name": "hexasphere", + "version": "18.0.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 53.14, + "duration": 1.38, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.56 + } + ], + [ + "codegen", + { + "start": 0.56, + "end": 1.38 + } + ] + ] + }, + { + "i": 140, + "name": "bevy_reflect", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "auto_register", + "auto_register_inventory", + "debug", + "debug_stack", + "default", + "glam", + "indexmap", + "petgraph", + "reflect_documentation", + "smallvec", + "smol_str", + "std", + "uuid", + "wgpu-types" + ], + "start": 53.14, + "duration": 121.07, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 99, + 70 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 19.7 + } + ], + [ + "codegen", + { + "start": 19.7, + "end": 121.07 + } + ] + ] + }, + { + "i": 507, + "name": "read-fonts", + "version": "0.39.2", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 53.28, + "duration": 69.84, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 315, + 287, + 316, + 552 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 23.51 + } + ], + [ + "codegen", + { + "start": 23.51, + "end": 69.84 + } + ] + ] + }, + { + "i": 250, + "name": "document-features", + "version": "0.2.12", + "mode": "todo", + "target": "", + "features": [ + "default" + ], + "start": 53.46, + "duration": 1.21, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 659, + "name": "wgpu", + "version": "29.0.3", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "dx12", + "fragile-send-sync-non-atomic-wasm", + "metal", + "naga-ir", + "vulkan", + "web", + "webgl", + "wgpu-core", + "wgsl" + ], + "start": 53.99, + "duration": 0.11, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 381, + "name": "litemap", + "version": "0.8.2", + "mode": "todo", + "target": "", + "features": [ + "alloc" + ], + "start": 54.12, + "duration": 0.72, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.53 + } + ], + [ + "codegen", + { + "start": 0.53, + "end": 0.72 + } + ] + ] + }, + { + "i": 380, + "name": "linebender_resource_handle", + "version": "0.1.1", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 54.56, + "duration": 0.45, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.28 + } + ], + [ + "codegen", + { + "start": 0.28, + "end": 0.45 + } + ] + ] + }, + { + "i": 714, + "name": "zerotrie", + "version": "0.2.4", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "yoke", + "zerofrom" + ], + "start": 54.61, + "duration": 7.55, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.43 + } + ], + [ + "codegen", + { + "start": 3.43, + "end": 7.55 + } + ] + ] + }, + { + "i": 146, + "name": "bevy_render_macros", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 54.84, + "duration": 4.08, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 426, + "name": "offset-allocator", + "version": "0.2.0", + "mode": "todo", + "target": "", + "features": [], + "start": 55.01, + "duration": 0.54, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.31 + } + ], + [ + "codegen", + { + "start": 0.31, + "end": 0.54 + } + ] + ] + }, + { + "i": 634, + "name": "utf8_iter", + "version": "1.0.4", + "mode": "todo", + "target": "", + "features": [], + "start": 55.07, + "duration": 0.48, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.25 + } + ], + [ + "codegen", + { + "start": 0.25, + "end": 0.48 + } + ] + ] + }, + { + "i": 598, + "name": "tinystr", + "version": "0.8.3", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "zerovec" + ], + "start": 55.58, + "duration": 2.25, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 332 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.1 + } + ], + [ + "codegen", + { + "start": 2.1, + "end": 2.25 + } + ] + ] + }, + { + "i": 464, + "name": "potential_utf", + "version": "0.1.5", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "writeable", + "zerovec" + ], + "start": 55.67, + "duration": 1.89, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 330 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.71 + } + ], + [ + "codegen", + { + "start": 1.71, + "end": 1.89 + } + ] + ] + }, + { + "i": 655, + "name": "weak-table", + "version": "0.3.2", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 55.67, + "duration": 2.98, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.85 + } + ], + [ + "codegen", + { + "start": 2.85, + "end": 2.98 + } + ] + ] + }, + { + "i": 8, + "name": "aho-corasick", + "version": "1.1.4", + "mode": "todo", + "target": "", + "features": [ + "perf-literal", + "std" + ], + "start": 57.37, + "duration": 4.26, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.83 + } + ], + [ + "codegen", + { + "start": 1.83, + "end": 4.26 + } + ] + ] + }, + { + "i": 330, + "name": "icu_collections", + "version": "2.2.0", + "mode": "todo", + "target": "", + "features": [], + "start": 57.68, + "duration": 2.5, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.24 + } + ], + [ + "codegen", + { + "start": 1.24, + "end": 2.5 + } + ] + ] + }, + { + "i": 332, + "name": "icu_locale_core", + "version": "2.2.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "zerovec" + ], + "start": 57.92, + "duration": 18.38, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 344 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 4.12 + } + ], + [ + "codegen", + { + "start": 4.12, + "end": 18.38 + } + ] + ] + }, + { + "i": 342, + "name": "icu_properties_data", + "version": "2.2.0", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 58.04, + "duration": 0.69, + "unblocked_units": [ + 343 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 513, + "name": "regex-syntax", + "version": "0.8.10", + "mode": "todo", + "target": "", + "features": [ + "default", + "std", + "unicode", + "unicode-age", + "unicode-bool", + "unicode-case", + "unicode-gencat", + "unicode-perl", + "unicode-script", + "unicode-segment" + ], + "start": 58.74, + "duration": 5.78, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 511 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.59 + } + ], + [ + "codegen", + { + "start": 3.59, + "end": 5.78 + } + ] + ] + }, + { + "i": 334, + "name": "icu_locale_data", + "version": "2.2.0", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 58.86, + "duration": 0.53, + "unblocked_units": [ + 335 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 195, + "name": "cfg-if", + "version": "1.0.4", + "mode": "todo", + "target": "", + "features": [], + "start": 59.0, + "duration": 0.19, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 294 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.07 + } + ], + [ + "codegen", + { + "start": 0.07, + "end": 0.19 + } + ] + ] + }, + { + "i": 326, + "name": "heck", + "version": "0.5.0", + "mode": "todo", + "target": "", + "features": [], + "start": 59.2, + "duration": 0.9, + "unblocked_units": [ + 573, + 208 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.6 + } + ], + [ + "codegen", + { + "start": 0.6, + "end": 0.9 + } + ] + ] + }, + { + "i": 335, + "name": "icu_locale_data", + "version": "2.2.0", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 59.4, + "duration": 0.18, + "unblocked_units": [ + 333 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 343, + "name": "icu_properties_data", + "version": "2.2.0", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 59.71, + "duration": 0.1, + "unblocked_units": [ + 341 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 347, + "name": "icu_segmenter_data", + "version": "2.2.0", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 59.97, + "duration": 0.36, + "unblocked_units": [ + 348 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 14, + "name": "anstyle", + "version": "1.0.14", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 60.14, + "duration": 0.84, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.56 + } + ], + [ + "codegen", + { + "start": 0.56, + "end": 0.84 + } + ] + ] + }, + { + "i": 427, + "name": "once_cell", + "version": "1.21.4", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default", + "race", + "std" + ], + "start": 60.24, + "duration": 0.38, + "unblocked_units": [ + 391 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.26 + } + ], + [ + "codegen", + { + "start": 0.26, + "end": 0.38 + } + ] + ] + }, + { + "i": 338, + "name": "icu_normalizer_data", + "version": "2.2.0", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 60.45, + "duration": 0.41, + "unblocked_units": [ + 339 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 348, + "name": "icu_segmenter_data", + "version": "2.2.0", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 60.7, + "duration": 0.05, + "unblocked_units": [ + 346 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 341, + "name": "icu_properties_data", + "version": "2.2.0", + "mode": "todo", + "target": "", + "features": [], + "start": 60.77, + "duration": 5.77, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 340 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 5.64 + } + ], + [ + "codegen", + { + "start": 5.64, + "end": 5.77 + } + ] + ] + }, + { + "i": 339, + "name": "icu_normalizer_data", + "version": "2.2.0", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 60.98, + "duration": 0.06, + "unblocked_units": [ + 337 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 333, + "name": "icu_locale_data", + "version": "2.2.0", + "mode": "todo", + "target": "", + "features": [], + "start": 61.04, + "duration": 0.92, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.78 + } + ], + [ + "codegen", + { + "start": 0.78, + "end": 0.92 + } + ] + ] + }, + { + "i": 186, + "name": "bstr", + "version": "1.12.1", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default", + "std", + "unicode" + ], + "start": 61.05, + "duration": 5.2, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 303 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.95 + } + ], + [ + "codegen", + { + "start": 1.95, + "end": 5.2 + } + ] + ] + }, + { + "i": 337, + "name": "icu_normalizer_data", + "version": "2.2.0", + "mode": "todo", + "target": "", + "features": [], + "start": 61.67, + "duration": 0.59, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.48 + } + ], + [ + "codegen", + { + "start": 0.48, + "end": 0.59 + } + ] + ] + }, + { + "i": 346, + "name": "icu_segmenter_data", + "version": "2.2.0", + "mode": "todo", + "target": "", + "features": [], + "start": 62.03, + "duration": 0.84, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.7 + } + ], + [ + "codegen", + { + "start": 0.7, + "end": 0.84 + } + ] + ] + }, + { + "i": 344, + "name": "icu_provider", + "version": "2.2.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "baked" + ], + "start": 62.22, + "duration": 3.89, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 331, + 336 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.11 + } + ], + [ + "codegen", + { + "start": 1.11, + "end": 3.89 + } + ] + ] + }, + { + "i": 506, + "name": "read-fonts", + "version": "0.37.0", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 62.28, + "duration": 60.85, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 551 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 17.48 + } + ], + [ + "codegen", + { + "start": 17.48, + "end": 60.85 + } + ] + ] + }, + { + "i": 511, + "name": "regex-automata", + "version": "0.4.14", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "dfa-onepass", + "hybrid", + "meta", + "nfa-backtrack", + "nfa-pikevm", + "nfa-thompson", + "perf-inline", + "perf-literal", + "perf-literal-multisubstring", + "perf-literal-substring", + "std", + "syntax", + "unicode", + "unicode-age", + "unicode-bool", + "unicode-case", + "unicode-gencat", + "unicode-perl", + "unicode-script", + "unicode-segment", + "unicode-word-boundary" + ], + "start": 62.92, + "duration": 7.34, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 509 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.84 + } + ], + [ + "codegen", + { + "start": 3.84, + "end": 7.34 + } + ] + ] + }, + { + "i": 331, + "name": "icu_locale", + "version": "2.2.0", + "mode": "todo", + "target": "", + "features": [ + "compiled_data" + ], + "start": 64.53, + "duration": 4.69, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 345 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.98 + } + ], + [ + "codegen", + { + "start": 1.98, + "end": 4.69 + } + ] + ] + }, + { + "i": 223, + "name": "core_maths", + "version": "0.1.1", + "mode": "todo", + "target": "", + "features": [], + "start": 66.3, + "duration": 0.36, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.2 + } + ], + [ + "codegen", + { + "start": 0.2, + "end": 0.36 + } + ] + ] + }, + { + "i": 429, + "name": "once_cell_polyfill", + "version": "1.70.2", + "mode": "todo", + "target": "", + "features": [ + "default" + ], + "start": 66.39, + "duration": 0.27, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 17 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.05 + } + ], + [ + "codegen", + { + "start": 0.05, + "end": 0.27 + } + ] + ] + }, + { + "i": 340, + "name": "icu_properties", + "version": "2.2.0", + "mode": "todo", + "target": "", + "features": [ + "compiled_data" + ], + "start": 66.66, + "duration": 5.09, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 439 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.86 + } + ], + [ + "codegen", + { + "start": 2.86, + "end": 5.09 + } + ] + ] + }, + { + "i": 437, + "name": "parlance", + "version": "0.1.0", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 66.76, + "duration": 1.91, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.65 + } + ], + [ + "codegen", + { + "start": 0.65, + "end": 1.91 + } + ] + ] + }, + { + "i": 635, + "name": "utf8parse", + "version": "0.2.2", + "mode": "todo", + "target": "", + "features": [ + "default" + ], + "start": 66.76, + "duration": 0.23, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 15 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.14 + } + ], + [ + "codegen", + { + "start": 0.14, + "end": 0.23 + } + ] + ] + }, + { + "i": 509, + "name": "regex", + "version": "1.12.3", + "mode": "todo", + "target": "", + "features": [ + "default", + "perf", + "perf-backtrack", + "perf-cache", + "perf-dfa", + "perf-inline", + "perf-literal", + "perf-onepass", + "std", + "unicode", + "unicode-age", + "unicode-bool", + "unicode-case", + "unicode-gencat", + "unicode-perl", + "unicode-script", + "unicode-segment" + ], + "start": 67.11, + "duration": 0.87, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 440 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.49 + } + ], + [ + "codegen", + { + "start": 0.49, + "end": 0.87 + } + ] + ] + }, + { + "i": 400, + "name": "memmap2", + "version": "0.9.10", + "mode": "todo", + "target": "", + "features": [], + "start": 68.04, + "duration": 0.83, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.4 + } + ], + [ + "codegen", + { + "start": 0.4, + "end": 0.83 + } + ] + ] + }, + { + "i": 15, + "name": "anstyle-parse", + "version": "1.0.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "utf8" + ], + "start": 68.33, + "duration": 0.75, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.48 + } + ], + [ + "codegen", + { + "start": 0.48, + "end": 0.75 + } + ] + ] + }, + { + "i": 345, + "name": "icu_segmenter", + "version": "2.2.0", + "mode": "todo", + "target": "", + "features": [ + "compiled_data" + ], + "start": 68.94, + "duration": 5.74, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.78 + } + ], + [ + "codegen", + { + "start": 1.78, + "end": 5.74 + } + ] + ] + }, + { + "i": 17, + "name": "anstyle-wincon", + "version": "3.0.11", + "mode": "todo", + "target": "", + "features": [], + "start": 69.08, + "duration": 1.02, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.44 + } + ], + [ + "codegen", + { + "start": 0.44, + "end": 1.02 + } + ] + ] + }, + { + "i": 336, + "name": "icu_normalizer", + "version": "2.2.0", + "mode": "todo", + "target": "", + "features": [ + "compiled_data" + ], + "start": 69.52, + "duration": 3.42, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.68 + } + ], + [ + "codegen", + { + "start": 0.68, + "end": 3.42 + } + ] + ] + }, + { + "i": 16, + "name": "anstyle-query", + "version": "1.1.5", + "mode": "todo", + "target": "", + "features": [], + "start": 69.52, + "duration": 0.18, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 0.18 + } + ] + ] + }, + { + "i": 439, + "name": "parley_data", + "version": "0.9.0", + "mode": "todo", + "target": "", + "features": [ + "baked" + ], + "start": 69.77, + "duration": 0.42, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.3 + } + ], + [ + "codegen", + { + "start": 0.3, + "end": 0.42 + } + ] + ] + }, + { + "i": 238, + "name": "crunchy", + "version": "0.2.4", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "limit_128" + ], + "start": 70.08, + "duration": 0.65, + "unblocked_units": [ + 239 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 213, + "name": "colorchoice", + "version": "1.0.5", + "mode": "todo", + "target": "", + "features": [], + "start": 70.2, + "duration": 0.22, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.13 + } + ], + [ + "codegen", + { + "start": 0.13, + "end": 0.22 + } + ] + ] + }, + { + "i": 707, + "name": "zeno", + "version": "0.3.3", + "mode": "todo", + "target": "", + "features": [ + "eval", + "std" + ], + "start": 70.33, + "duration": 3.19, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.69 + } + ], + [ + "codegen", + { + "start": 1.69, + "end": 3.19 + } + ] + ] + }, + { + "i": 358, + "name": "is_terminal_polyfill", + "version": "1.70.2", + "mode": "todo", + "target": "", + "features": [ + "default" + ], + "start": 70.33, + "duration": 0.17, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 13 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.06 + } + ], + [ + "codegen", + { + "start": 0.06, + "end": 0.17 + } + ] + ] + }, + { + "i": 704, + "name": "yazi", + "version": "0.2.1", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 70.45, + "duration": 4.79, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.85 + } + ], + [ + "codegen", + { + "start": 0.85, + "end": 4.79 + } + ] + ] + }, + { + "i": 19, + "name": "anyhow", + "version": "1.0.102", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "std" + ], + "start": 70.72, + "duration": 0.88, + "unblocked_units": [ + 20 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 239, + "name": "crunchy", + "version": "0.2.4", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "limit_128" + ], + "start": 70.92, + "duration": 0.0, + "unblocked_units": [ + 237 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 13, + "name": "anstream", + "version": "1.0.0", + "mode": "todo", + "target": "", + "features": [ + "auto", + "default", + "wincon" + ], + "start": 71.16, + "duration": 2.03, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.8 + } + ], + [ + "codegen", + { + "start": 0.8, + "end": 2.03 + } + ] + ] + }, + { + "i": 667, + "name": "wgpu-naga-bridge", + "version": "29.0.3", + "mode": "todo", + "target": "", + "features": [], + "start": 71.75, + "duration": 0.45, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.2 + } + ], + [ + "codegen", + { + "start": 0.2, + "end": 0.45 + } + ] + ] + }, + { + "i": 412, + "name": "naga_oil", + "version": "0.22.0", + "mode": "todo", + "target": "", + "features": [ + "test_shader" + ], + "start": 71.85, + "duration": 39.96, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.15 + } + ], + [ + "codegen", + { + "start": 3.15, + "end": 39.96 + } + ] + ] + }, + { + "i": 20, + "name": "anyhow", + "version": "1.0.102", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "std" + ], + "start": 72.36, + "duration": 0.52, + "unblocked_units": [ + 18 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 70, + "name": "bevy_ecs", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "async_executor", + "backtrace", + "bevy_reflect", + "default", + "multi_threaded", + "reflect_auto_register", + "serialize", + "std" + ], + "start": 73.19, + "duration": 138.28, + "unblocked_units": [ + 130, + 127 + ], + "unblocked_rmeta_units": [ + 52 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 44.53 + } + ], + [ + "codegen", + { + "start": 44.53, + "end": 138.28 + } + ] + ] + }, + { + "i": 99, + "name": "bevy_math", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "bevy_reflect", + "curve", + "default", + "nostd-libm", + "rand", + "serialize", + "std" + ], + "start": 73.19, + "duration": 106.97, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 60 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 18.28 + } + ], + [ + "codegen", + { + "start": 18.28, + "end": 106.97 + } + ] + ] + }, + { + "i": 0, + "name": "accesskit", + "version": "0.24.1", + "mode": "todo", + "target": "", + "features": [], + "start": 73.41, + "duration": 2.52, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 1 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.78 + } + ], + [ + "codegen", + { + "start": 0.78, + "end": 2.52 + } + ] + ] + }, + { + "i": 581, + "name": "sys-locale", + "version": "0.3.2", + "mode": "todo", + "target": "", + "features": [], + "start": 73.73, + "duration": 0.8, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.22 + } + ], + [ + "codegen", + { + "start": 0.22, + "end": 0.8 + } + ] + ] + }, + { + "i": 596, + "name": "tiny-keccak", + "version": "2.0.2", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "shake" + ], + "start": 75.0, + "duration": 1.14, + "unblocked_units": [ + 597 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 18, + "name": "anyhow", + "version": "1.0.102", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 75.0, + "duration": 2.07, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.92 + } + ], + [ + "codegen", + { + "start": 0.92, + "end": 2.07 + } + ] + ] + }, + { + "i": 237, + "name": "crunchy", + "version": "0.2.4", + "mode": "todo", + "target": "", + "features": [ + "default", + "limit_128" + ], + "start": 75.93, + "duration": 0.22, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 0.22 + } + ] + ] + }, + { + "i": 232, + "name": "crossbeam-epoch", + "version": "0.9.18", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "std" + ], + "start": 76.14, + "duration": 1.61, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 231 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.86 + } + ], + [ + "codegen", + { + "start": 0.86, + "end": 1.61 + } + ] + ] + }, + { + "i": 597, + "name": "tiny-keccak", + "version": "2.0.2", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "shake" + ], + "start": 76.23, + "duration": 0.04, + "unblocked_units": [ + 595 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 631, + "name": "unicode-segmentation", + "version": "1.13.2", + "mode": "todo", + "target": "", + "features": [], + "start": 76.23, + "duration": 1.82, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.82 + } + ], + [ + "codegen", + { + "start": 0.82, + "end": 1.82 + } + ] + ] + }, + { + "i": 569, + "name": "strsim", + "version": "0.11.1", + "mode": "todo", + "target": "", + "features": [], + "start": 76.3, + "duration": 2.45, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 207 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.36 + } + ], + [ + "codegen", + { + "start": 0.36, + "end": 2.45 + } + ] + ] + }, + { + "i": 209, + "name": "clap_lex", + "version": "1.1.0", + "mode": "todo", + "target": "", + "features": [], + "start": 76.31, + "duration": 1.07, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.32 + } + ], + [ + "codegen", + { + "start": 0.32, + "end": 1.07 + } + ] + ] + }, + { + "i": 552, + "name": "skrifa", + "version": "0.42.1", + "mode": "todo", + "target": "", + "features": [ + "autohint_shaping", + "std" + ], + "start": 77.32, + "duration": 54.42, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 9.24 + } + ], + [ + "codegen", + { + "start": 9.24, + "end": 54.42 + } + ] + ] + }, + { + "i": 287, + "name": "fontique", + "version": "0.9.0", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 77.41, + "duration": 10.23, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.84 + } + ], + [ + "codegen", + { + "start": 1.84, + "end": 10.23 + } + ] + ] + }, + { + "i": 315, + "name": "harfrust", + "version": "0.6.2", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 77.84, + "duration": 45.1, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 438 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 9.19 + } + ], + [ + "codegen", + { + "start": 9.19, + "end": 45.1 + } + ] + ] + }, + { + "i": 231, + "name": "crossbeam-deque", + "version": "0.8.6", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 78.11, + "duration": 0.69, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.48 + } + ], + [ + "codegen", + { + "start": 0.48, + "end": 0.69 + } + ] + ] + }, + { + "i": 207, + "name": "clap_builder", + "version": "4.6.0", + "mode": "todo", + "target": "", + "features": [ + "color", + "error-context", + "help", + "std", + "suggestions", + "usage" + ], + "start": 78.77, + "duration": 36.01, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 6.58 + } + ], + [ + "codegen", + { + "start": 6.58, + "end": 36.01 + } + ] + ] + }, + { + "i": 595, + "name": "tiny-keccak", + "version": "2.0.2", + "mode": "todo", + "target": "", + "features": [ + "default", + "shake" + ], + "start": 79.03, + "duration": 0.49, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.31 + } + ], + [ + "codegen", + { + "start": 0.31, + "end": 0.49 + } + ] + ] + }, + { + "i": 208, + "name": "clap_derive", + "version": "4.6.1", + "mode": "todo", + "target": "", + "features": [ + "default" + ], + "start": 79.66, + "duration": 5.82, + "unblocked_units": [ + 206 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 551, + "name": "skrifa", + "version": "0.40.0", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 85.0, + "duration": 46.9, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 575 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 9.38 + } + ], + [ + "codegen", + { + "start": 9.38, + "end": 46.9 + } + ] + ] + }, + { + "i": 294, + "name": "getrandom", + "version": "0.2.17", + "mode": "todo", + "target": "", + "features": [], + "start": 85.66, + "duration": 0.46, + "unblocked_units": [ + 217 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.28 + } + ], + [ + "codegen", + { + "start": 0.28, + "end": 0.46 + } + ] + ] + }, + { + "i": 549, + "name": "siphasher", + "version": "1.0.2", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 86.56, + "duration": 0.44, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 453 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.26 + } + ], + [ + "codegen", + { + "start": 0.26, + "end": 0.44 + } + ] + ] + }, + { + "i": 488, + "name": "radsort", + "version": "0.1.1", + "mode": "todo", + "target": "", + "features": [], + "start": 87.01, + "duration": 0.92, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.92 + } + ], + [ + "codegen", + { + "start": 0.92, + "end": 0.92 + } + ] + ] + }, + { + "i": 438, + "name": "parley", + "version": "0.9.0", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 87.99, + "duration": 9.59, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.76 + } + ], + [ + "codegen", + { + "start": 3.76, + "end": 9.59 + } + ] + ] + }, + { + "i": 453, + "name": "phf_shared", + "version": "0.11.3", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 88.44, + "duration": 0.16, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 449 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 0.16 + } + ] + ] + }, + { + "i": 217, + "name": "const-random-macro", + "version": "0.1.16", + "mode": "todo", + "target": "", + "features": [], + "start": 88.75, + "duration": 1.35, + "unblocked_units": [ + 216 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 206, + "name": "clap", + "version": "4.6.1", + "mode": "todo", + "target": "", + "features": [ + "color", + "default", + "derive", + "error-context", + "help", + "std", + "suggestions", + "usage" + ], + "start": 90.37, + "duration": 0.66, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.47 + } + ], + [ + "codegen", + { + "start": 0.47, + "end": 0.66 + } + ] + ] + }, + { + "i": 6, + "name": "ahash", + "version": "0.8.12", + "mode": "todo", + "target": " build-script", + "features": [ + "compile-time-rng", + "const-random", + "no-rng", + "std" + ], + "start": 91.39, + "duration": 0.65, + "unblocked_units": [ + 7 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 60, + "name": "bevy_color", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "bevy_reflect", + "default", + "encase", + "serde", + "serialize", + "std", + "wgpu-types" + ], + "start": 92.81, + "duration": 34.54, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 4.72 + } + ], + [ + "codegen", + { + "start": 4.72, + "end": 34.54 + } + ] + ] + }, + { + "i": 575, + "name": "swash", + "version": "0.2.7", + "mode": "todo", + "target": "", + "features": [ + "default", + "render", + "scale", + "std" + ], + "start": 98.5, + "duration": 43.37, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 11.24 + } + ], + [ + "codegen", + { + "start": 11.24, + "end": 43.37 + } + ] + ] + }, + { + "i": 691, + "name": "windows_x86_64_msvc", + "version": "0.52.6", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 99.52, + "duration": 1.08, + "unblocked_units": [ + 692 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 495, + "name": "rand_core", + "version": "0.6.4", + "mode": "todo", + "target": "", + "features": [], + "start": 101.26, + "duration": 0.27, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 489 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.09 + } + ], + [ + "codegen", + { + "start": 0.09, + "end": 0.27 + } + ] + ] + }, + { + "i": 489, + "name": "rand", + "version": "0.8.6", + "mode": "todo", + "target": "", + "features": [ + "small_rng" + ], + "start": 101.97, + "duration": 1.63, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 452 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.31 + } + ], + [ + "codegen", + { + "start": 1.31, + "end": 1.63 + } + ] + ] + }, + { + "i": 692, + "name": "windows_x86_64_msvc", + "version": "0.52.6", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 104.16, + "duration": 0.0, + "unblocked_units": [ + 690 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 7, + "name": "ahash", + "version": "0.8.12", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "compile-time-rng", + "const-random", + "no-rng", + "std" + ], + "start": 104.61, + "duration": 0.0, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 216, + "name": "const-random", + "version": "0.1.18", + "mode": "todo", + "target": "", + "features": [], + "start": 105.61, + "duration": 0.1, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 5 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 0.1 + } + ] + ] + }, + { + "i": 465, + "name": "ppv-lite86", + "version": "0.2.21", + "mode": "todo", + "target": "", + "features": [ + "simd", + "std" + ], + "start": 106.4, + "duration": 1.12, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.12 + } + ], + [ + "codegen", + { + "start": 1.12, + "end": 1.12 + } + ] + ] + }, + { + "i": 442, + "name": "percent-encoding", + "version": "2.3.2", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default", + "std" + ], + "start": 107.52, + "duration": 1.04, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.85 + } + ], + [ + "codegen", + { + "start": 0.85, + "end": 1.04 + } + ] + ] + }, + { + "i": 5, + "name": "ahash", + "version": "0.8.12", + "mode": "todo", + "target": "", + "features": [ + "compile-time-rng", + "const-random", + "no-rng", + "std" + ], + "start": 107.84, + "duration": 1.34, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.05 + } + ], + [ + "codegen", + { + "start": 1.05, + "end": 1.34 + } + ] + ] + }, + { + "i": 690, + "name": "windows_x86_64_msvc", + "version": "0.52.6", + "mode": "todo", + "target": "", + "features": [], + "start": 108.89, + "duration": 0.5, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 687 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 0.5 + } + ] + ] + }, + { + "i": 452, + "name": "phf_generator", + "version": "0.11.3", + "mode": "todo", + "target": "", + "features": [], + "start": 109.47, + "duration": 0.56, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 451 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.27 + } + ], + [ + "codegen", + { + "start": 0.27, + "end": 0.56 + } + ] + ] + }, + { + "i": 652, + "name": "wasm-bindgen-shared", + "version": "0.2.120", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 109.74, + "duration": 0.7, + "unblocked_units": [ + 654, + 653 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 325, + "name": "heck", + "version": "0.4.1", + "mode": "todo", + "target": "", + "features": [ + "default" + ], + "start": 110.4, + "duration": 0.53, + "unblocked_units": [ + 572 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.3 + } + ], + [ + "codegen", + { + "start": 0.3, + "end": 0.53 + } + ] + ] + }, + { + "i": 703, + "name": "yansi", + "version": "1.0.1", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default", + "std" + ], + "start": 110.52, + "duration": 1.31, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.91 + } + ], + [ + "codegen", + { + "start": 0.91, + "end": 1.31 + } + ] + ] + }, + { + "i": 246, + "name": "diff", + "version": "0.1.13", + "mode": "todo", + "target": "", + "features": [], + "start": 111.35, + "duration": 1.36, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 470 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.13 + } + ], + [ + "codegen", + { + "start": 0.13, + "end": 1.36 + } + ] + ] + }, + { + "i": 669, + "name": "which", + "version": "8.0.4", + "mode": "todo", + "target": "", + "features": [ + "default", + "real-sys" + ], + "start": 111.89, + "duration": 0.79, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 390 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.49 + } + ], + [ + "codegen", + { + "start": 0.49, + "end": 0.79 + } + ] + ] + }, + { + "i": 470, + "name": "pretty_assertions", + "version": "1.4.1", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default", + "std" + ], + "start": 111.94, + "duration": 1.26, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.26 + } + ], + [ + "codegen", + { + "start": 0.26, + "end": 1.26 + } + ] + ] + }, + { + "i": 390, + "name": "luajit-src", + "version": "210.6.6+707c12b", + "mode": "todo", + "target": "", + "features": [], + "start": 112.7, + "duration": 0.84, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.34 + } + ], + [ + "codegen", + { + "start": 0.34, + "end": 0.84 + } + ] + ] + }, + { + "i": 451, + "name": "phf_codegen", + "version": "0.11.3", + "mode": "todo", + "target": "", + "features": [], + "start": 112.76, + "duration": 0.35, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.21 + } + ], + [ + "codegen", + { + "start": 0.21, + "end": 0.35 + } + ] + ] + }, + { + "i": 687, + "name": "windows-targets", + "version": "0.52.6", + "mode": "todo", + "target": "", + "features": [], + "start": 113.21, + "duration": 0.27, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 684 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.08 + } + ], + [ + "codegen", + { + "start": 0.08, + "end": 0.27 + } + ] + ] + }, + { + "i": 449, + "name": "phf", + "version": "0.11.3", + "mode": "todo", + "target": "", + "features": [], + "start": 113.25, + "duration": 0.52, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.3 + } + ], + [ + "codegen", + { + "start": 0.3, + "end": 0.52 + } + ] + ] + }, + { + "i": 440, + "name": "parse-zoneinfo", + "version": "0.3.1", + "mode": "todo", + "target": "", + "features": [], + "start": 113.77, + "duration": 1.57, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 202 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.65 + } + ], + [ + "codegen", + { + "start": 0.65, + "end": 1.57 + } + ] + ] + }, + { + "i": 386, + "name": "lua-src", + "version": "550.0.0", + "mode": "todo", + "target": "", + "features": [], + "start": 113.77, + "duration": 0.41, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.17 + } + ], + [ + "codegen", + { + "start": 0.17, + "end": 0.41 + } + ] + ] + }, + { + "i": 623, + "name": "ucd-trie", + "version": "0.1.7", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 114.18, + "duration": 0.47, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 443 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.2 + } + ], + [ + "codegen", + { + "start": 0.2, + "end": 0.47 + } + ] + ] + }, + { + "i": 191, + "name": "byteorder", + "version": "1.5.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 114.38, + "duration": 0.59, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 317 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.44 + } + ], + [ + "codegen", + { + "start": 0.44, + "end": 0.59 + } + ] + ] + }, + { + "i": 457, + "name": "pkg-config", + "version": "0.3.33", + "mode": "todo", + "target": "", + "features": [], + "start": 114.78, + "duration": 1.32, + "unblocked_units": [ + 405 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.45 + } + ], + [ + "codegen", + { + "start": 0.45, + "end": 1.32 + } + ] + ] + }, + { + "i": 202, + "name": "chrono-tz-build", + "version": "0.3.0", + "mode": "todo", + "target": "", + "features": [], + "start": 114.97, + "duration": 1.01, + "unblocked_units": [ + 200 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.27 + } + ], + [ + "codegen", + { + "start": 0.27, + "end": 1.01 + } + ] + ] + }, + { + "i": 443, + "name": "pest", + "version": "2.8.6", + "mode": "todo", + "target": "", + "features": [ + "default", + "memchr", + "std" + ], + "start": 115.11, + "duration": 3.89, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 447 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.36 + } + ], + [ + "codegen", + { + "start": 3.36, + "end": 3.89 + } + ] + ] + }, + { + "i": 262, + "name": "env_filter", + "version": "1.0.1", + "mode": "todo", + "target": "", + "features": [ + "regex" + ], + "start": 115.37, + "duration": 2.83, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.44 + } + ], + [ + "codegen", + { + "start": 0.44, + "end": 2.83 + } + ] + ] + }, + { + "i": 560, + "name": "smartstring", + "version": "1.0.1", + "mode": "todo", + "target": " build-script", + "features": [ + "std" + ], + "start": 116.02, + "duration": 0.62, + "unblocked_units": [ + 561 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 405, + "name": "mlua-sys", + "version": "0.10.0", + "mode": "todo", + "target": " build-script", + "features": [ + "lua-src", + "lua54", + "luajit-src", + "vendored" + ], + "start": 116.38, + "duration": 0.73, + "unblocked_units": [ + 406 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 582, + "name": "sysinfo", + "version": "0.38.4", + "mode": "todo", + "target": "", + "features": [ + "objc2-io-kit", + "system", + "windows" + ], + "start": 116.72, + "duration": 7.84, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.12 + } + ], + [ + "codegen", + { + "start": 2.12, + "end": 7.84 + } + ] + ] + }, + { + "i": 308, + "name": "gpu-allocator", + "version": "0.28.0", + "mode": "todo", + "target": "", + "features": [ + "d3d12", + "hashbrown", + "vulkan" + ], + "start": 117.38, + "duration": 5.28, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 664 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.09 + } + ], + [ + "codegen", + { + "start": 1.09, + "end": 5.28 + } + ] + ] + }, + { + "i": 52, + "name": "bevy_app", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_reflect", + "default", + "error_panic_hook", + "reflect_auto_register", + "std" + ], + "start": 118.47, + "duration": 26.51, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 165, + 86, + 128, + 162, + 47, + 94 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.38 + } + ], + [ + "codegen", + { + "start": 3.38, + "end": 26.51 + } + ] + ] + }, + { + "i": 664, + "name": "wgpu-hal", + "version": "29.0.3", + "mode": "todo", + "target": "", + "features": [ + "dx12", + "fragile-send-sync-non-atomic-wasm", + "portable-atomic", + "renderdoc", + "vulkan" + ], + "start": 119.21, + "duration": 56.95, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 663 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 9.46 + } + ], + [ + "codegen", + { + "start": 9.46, + "end": 56.95 + } + ] + ] + }, + { + "i": 162, + "name": "bevy_time", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_reflect", + "default", + "std" + ], + "start": 122.94, + "duration": 36.93, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 69 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.14 + } + ], + [ + "codegen", + { + "start": 2.14, + "end": 36.93 + } + ] + ] + }, + { + "i": 94, + "name": "bevy_log", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 123.19, + "duration": 8.13, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 59, + 131, + 158 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.56 + } + ], + [ + "codegen", + { + "start": 0.56, + "end": 8.13 + } + ] + ] + }, + { + "i": 86, + "name": "bevy_input", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_reflect", + "default", + "gamepad", + "gestures", + "keyboard", + "mouse", + "smol_str", + "std", + "touch" + ], + "start": 123.32, + "duration": 96.14, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 6.66 + } + ], + [ + "codegen", + { + "start": 6.66, + "end": 96.14 + } + ] + ] + }, + { + "i": 165, + "name": "bevy_transform", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "async_executor", + "bevy-support", + "bevy_reflect", + "bevy_utils", + "default", + "multi_threaded", + "std" + ], + "start": 123.32, + "duration": 47.18, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.5 + } + ], + [ + "codegen", + { + "start": 2.5, + "end": 47.18 + } + ] + ] + }, + { + "i": 131, + "name": "bevy_mod_scripting_world", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 124.93, + "duration": 3.8, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.68 + } + ], + [ + "codegen", + { + "start": 0.68, + "end": 3.8 + } + ] + ] + }, + { + "i": 69, + "name": "bevy_diagnostic", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std", + "sysinfo", + "sysinfo_plugin" + ], + "start": 127.53, + "duration": 15.46, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 54 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.41 + } + ], + [ + "codegen", + { + "start": 1.41, + "end": 15.46 + } + ] + ] + }, + { + "i": 158, + "name": "bevy_system_reflection", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 129.18, + "duration": 21.63, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.99 + } + ], + [ + "codegen", + { + "start": 0.99, + "end": 21.63 + } + ] + ] + }, + { + "i": 54, + "name": "bevy_asset", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "file_watcher", + "multi_threaded", + "notify-debouncer-full", + "watch" + ], + "start": 131.74, + "duration": 109.34, + "unblocked_units": [ + 61, + 166, + 163, + 85, + 141, + 117, + 71, + 53, + 48, + 87, + 107, + 367, + 125, + 587, + 100, + 111 + ], + "unblocked_rmeta_units": [ + 150, + 588, + 84, + 102, + 118 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 14.13 + } + ], + [ + "codegen", + { + "start": 14.13, + "end": 109.34 + } + ] + ] + }, + { + "i": 59, + "name": "bevy_clipboard", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 132.14, + "duration": 1.97, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.42 + } + ], + [ + "codegen", + { + "start": 0.42, + "end": 1.97 + } + ] + ] + }, + { + "i": 663, + "name": "wgpu-core-deps-windows-linux-android", + "version": "29.0.3", + "mode": "todo", + "target": "", + "features": [ + "dx12", + "renderdoc", + "vulkan" + ], + "start": 132.14, + "duration": 0.11, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 660 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 0.11 + } + ] + ] + }, + { + "i": 660, + "name": "wgpu-core", + "version": "29.0.3", + "mode": "todo", + "target": "", + "features": [ + "default", + "dx12", + "fragile-send-sync-non-atomic-wasm", + "metal", + "portable-atomic", + "renderdoc", + "std", + "vulkan", + "webgl", + "wgpu-core-deps-windows-linux-android", + "wgsl" + ], + "start": 132.56, + "duration": 109.03, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 657 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 15.1 + } + ], + [ + "codegen", + { + "start": 15.1, + "end": 109.03 + } + ] + ] + }, + { + "i": 47, + "name": "bevy_a11y", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_reflect", + "default", + "std" + ], + "start": 134.12, + "duration": 15.37, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.89 + } + ], + [ + "codegen", + { + "start": 0.89, + "end": 15.37 + } + ] + ] + }, + { + "i": 477, + "name": "proc-macro-error-attr2", + "version": "2.0.0", + "mode": "todo", + "target": "", + "features": [], + "start": 142.2, + "duration": 0.56, + "unblocked_units": [ + 478 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 295, + "name": "getrandom", + "version": "0.2.17", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 142.2, + "duration": 0.15, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 496 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 0.15 + } + ] + ] + }, + { + "i": 363, + "name": "jiff", + "version": "0.2.24", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "std" + ], + "start": 142.38, + "duration": 31.28, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 263 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 10.82 + } + ], + [ + "codegen", + { + "start": 10.82, + "end": 31.28 + } + ] + ] + }, + { + "i": 311, + "name": "grid", + "version": "1.0.1", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 142.99, + "duration": 0.54, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 583 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.35 + } + ], + [ + "codegen", + { + "start": 0.35, + "end": 0.54 + } + ] + ] + }, + { + "i": 550, + "name": "siphasher", + "version": "1.0.2", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 143.07, + "duration": 0.35, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 454 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.21 + } + ], + [ + "codegen", + { + "start": 0.21, + "end": 0.35 + } + ] + ] + }, + { + "i": 256, + "name": "either", + "version": "1.15.0", + "mode": "todo", + "target": "", + "features": [ + "std", + "use_std" + ], + "start": 143.53, + "duration": 0.36, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 360 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.22 + } + ], + [ + "codegen", + { + "start": 0.22, + "end": 0.36 + } + ] + ] + }, + { + "i": 583, + "name": "taffy", + "version": "0.10.1", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "block_layout", + "content_size", + "flexbox", + "grid", + "std", + "taffy_tree" + ], + "start": 143.59, + "duration": 6.66, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 4.6 + } + ], + [ + "codegen", + { + "start": 4.6, + "end": 6.66 + } + ] + ] + }, + { + "i": 360, + "name": "itertools", + "version": "0.14.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "use_alloc", + "use_std" + ], + "start": 143.96, + "duration": 3.12, + "unblocked_units": [ + 407 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.88 + } + ], + [ + "codegen", + { + "start": 2.88, + "end": 3.12 + } + ] + ] + }, + { + "i": 454, + "name": "phf_shared", + "version": "0.11.3", + "mode": "todo", + "target": "", + "features": [], + "start": 145.22, + "duration": 0.37, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 450 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.14 + } + ], + [ + "codegen", + { + "start": 0.14, + "end": 0.37 + } + ] + ] + }, + { + "i": 478, + "name": "proc-macro-error2", + "version": "2.0.1", + "mode": "todo", + "target": "", + "features": [ + "default", + "syn-error" + ], + "start": 146.02, + "duration": 0.83, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.53 + } + ], + [ + "codegen", + { + "start": 0.53, + "end": 0.83 + } + ] + ] + }, + { + "i": 118, + "name": "bevy_mod_scripting_display", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 147.03, + "duration": 2.44, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 112, + 108 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.7 + } + ], + [ + "codegen", + { + "start": 0.7, + "end": 2.44 + } + ] + ] + }, + { + "i": 102, + "name": "bevy_mesh", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_mikktspace", + "default", + "glam", + "morph" + ], + "start": 147.28, + "duration": 126.3, + "unblocked_units": [ + 97, + 103 + ], + "unblocked_rmeta_units": [ + 96 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 9.03 + } + ], + [ + "codegen", + { + "start": 9.03, + "end": 126.3 + } + ] + ] + }, + { + "i": 112, + "name": "bevy_mod_scripting_bindings_domain", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 149.48, + "duration": 1.13, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 368 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.74 + } + ], + [ + "codegen", + { + "start": 0.74, + "end": 1.13 + } + ] + ] + }, + { + "i": 108, + "name": "bevy_mod_scripting_asset", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 149.54, + "duration": 2.89, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 126 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.99 + } + ], + [ + "codegen", + { + "start": 0.99, + "end": 2.89 + } + ] + ] + }, + { + "i": 84, + "name": "bevy_image", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_reflect", + "default", + "hdr", + "ktx2", + "png", + "zstd", + "zstd_rust" + ], + "start": 150.54, + "duration": 70.72, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 160, + 175 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 4.97 + } + ], + [ + "codegen", + { + "start": 4.97, + "end": 70.72 + } + ] + ] + }, + { + "i": 126, + "name": "bevy_mod_scripting_script", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 150.81, + "duration": 10.49, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 110 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.61 + } + ], + [ + "codegen", + { + "start": 0.61, + "end": 10.49 + } + ] + ] + }, + { + "i": 150, + "name": "bevy_shader", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 151.05, + "duration": 4.19, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.01 + } + ], + [ + "codegen", + { + "start": 1.01, + "end": 4.19 + } + ] + ] + }, + { + "i": 110, + "name": "bevy_mod_scripting_bindings", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 152.48, + "duration": 78.81, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 114 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 17.61 + } + ], + [ + "codegen", + { + "start": 17.61, + "end": 78.81 + } + ] + ] + }, + { + "i": 657, + "name": "wgpu", + "version": "29.0.3", + "mode": "todo", + "target": "", + "features": [ + "dx12", + "fragile-send-sync-non-atomic-wasm", + "metal", + "naga-ir", + "vulkan", + "web", + "webgl", + "wgpu-core", + "wgsl" + ], + "start": 155.5, + "duration": 29.93, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 7.55 + } + ], + [ + "codegen", + { + "start": 7.55, + "end": 29.93 + } + ] + ] + }, + { + "i": 175, + "name": "bevy_window", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_asset", + "bevy_image", + "bevy_reflect", + "custom_cursor", + "default", + "std" + ], + "start": 160.59, + "duration": 120.07, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 57 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 6.17 + } + ], + [ + "codegen", + { + "start": 6.17, + "end": 120.07 + } + ] + ] + }, + { + "i": 96, + "name": "bevy_material", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 161.84, + "duration": 9.13, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.05 + } + ], + [ + "codegen", + { + "start": 2.05, + "end": 9.13 + } + ] + ] + }, + { + "i": 114, + "name": "bevy_mod_scripting_core", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [ + "default" + ], + "start": 170.71, + "duration": 49.11, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 101, + 62, + 164, + 72, + 167, + 88, + 142 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 5.31 + } + ], + [ + "codegen", + { + "start": 5.31, + "end": 49.11 + } + ] + ] + }, + { + "i": 57, + "name": "bevy_camera", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "default" + ], + "start": 171.22, + "duration": 164.06, + "unblocked_units": [ + 58, + 78, + 90, + 152, + 135 + ], + "unblocked_rmeta_units": [ + 77, + 144, + 177, + 134 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 8.62 + } + ], + [ + "codegen", + { + "start": 8.62, + "end": 164.06 + } + ] + ] + }, + { + "i": 160, + "name": "bevy_text", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "default_font" + ], + "start": 173.99, + "duration": 136.92, + "unblocked_units": [ + 161 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 8.29 + } + ], + [ + "codegen", + { + "start": 8.29, + "end": 136.92 + } + ] + ] + }, + { + "i": 263, + "name": "env_logger", + "version": "0.11.10", + "mode": "todo", + "target": "", + "features": [ + "auto-color", + "color", + "default", + "humantime", + "regex" + ], + "start": 174.46, + "duration": 3.1, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.63 + } + ], + [ + "codegen", + { + "start": 0.63, + "end": 3.1 + } + ] + ] + }, + { + "i": 368, + "name": "ladfile", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "testfile", + "visitor" + ], + "start": 176.43, + "duration": 18.24, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.62 + } + ], + [ + "codegen", + { + "start": 1.62, + "end": 18.24 + } + ] + ] + }, + { + "i": 496, + "name": "rand_core", + "version": "0.6.4", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "getrandom", + "std" + ], + "start": 177.8, + "duration": 0.44, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 493 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.25 + } + ], + [ + "codegen", + { + "start": 0.25, + "end": 0.44 + } + ] + ] + }, + { + "i": 447, + "name": "pest_meta", + "version": "2.8.6", + "mode": "todo", + "target": "", + "features": [ + "default" + ], + "start": 178.23, + "duration": 4.64, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 446 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.84 + } + ], + [ + "codegen", + { + "start": 1.84, + "end": 4.64 + } + ] + ] + }, + { + "i": 406, + "name": "mlua-sys", + "version": "0.10.0", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "lua-src", + "lua54", + "luajit-src", + "vendored" + ], + "start": 178.44, + "duration": 12.68, + "unblocked_units": [ + 404 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 77, + "name": "bevy_gizmos", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_mesh" + ], + "start": 180.38, + "duration": 105.72, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 92 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 6.97 + } + ], + [ + "codegen", + { + "start": 6.97, + "end": 105.72 + } + ] + ] + }, + { + "i": 144, + "name": "bevy_render", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "morph", + "multi_threaded", + "reflect_auto_register", + "webgl" + ], + "start": 183.06, + "duration": 339.35, + "unblocked_units": [ + 145, + 66 + ], + "unblocked_rmeta_units": [ + 65 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 87.65 + } + ], + [ + "codegen", + { + "start": 87.65, + "end": 339.35 + } + ] + ] + }, + { + "i": 134, + "name": "bevy_picking", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "mesh_picking" + ], + "start": 185.44, + "duration": 146.18, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 151, + 89 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 9.14 + } + ], + [ + "codegen", + { + "start": 9.14, + "end": 146.18 + } + ] + ] + }, + { + "i": 92, + "name": "bevy_light", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_gizmos", + "default", + "webgl" + ], + "start": 191.45, + "duration": 162.74, + "unblocked_units": [ + 93 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 8.59 + } + ], + [ + "codegen", + { + "start": 8.59, + "end": 162.74 + } + ] + ] + }, + { + "i": 151, + "name": "bevy_sprite", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_picking", + "bevy_text", + "bevy_window" + ], + "start": 194.9, + "duration": 101.81, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 5.04 + } + ], + [ + "codegen", + { + "start": 5.04, + "end": 101.81 + } + ] + ] + }, + { + "i": 89, + "name": "bevy_input_focus", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_picking", + "bevy_reflect", + "default", + "gamepad", + "keyboard", + "mouse", + "std" + ], + "start": 211.6, + "duration": 63.66, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 168 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.58 + } + ], + [ + "codegen", + { + "start": 3.58, + "end": 63.66 + } + ] + ] + }, + { + "i": 561, + "name": "smartstring", + "version": "1.0.1", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "std" + ], + "start": 219.81, + "duration": 0.32, + "unblocked_units": [ + 559 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 200, + "name": "chrono-tz", + "version": "0.9.0", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "std" + ], + "start": 219.93, + "duration": 1.67, + "unblocked_units": [ + 201 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 303, + "name": "globset", + "version": "0.4.18", + "mode": "todo", + "target": "", + "features": [ + "default", + "log" + ], + "start": 220.3, + "duration": 10.3, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 349 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.83 + } + ], + [ + "codegen", + { + "start": 0.83, + "end": 10.3 + } + ] + ] + }, + { + "i": 349, + "name": "ignore", + "version": "0.4.25", + "mode": "todo", + "target": "", + "features": [], + "start": 221.6, + "duration": 18.65, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 304 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.65 + } + ], + [ + "codegen", + { + "start": 1.65, + "end": 18.65 + } + ] + ] + }, + { + "i": 201, + "name": "chrono-tz", + "version": "0.9.0", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "std" + ], + "start": 221.72, + "duration": 2.32, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 559, + "name": "smartstring", + "version": "1.0.1", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 224.36, + "duration": 0.86, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.71 + } + ], + [ + "codegen", + { + "start": 0.71, + "end": 0.86 + } + ] + ] + }, + { + "i": 168, + "name": "bevy_ui", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_picking", + "default" + ], + "start": 225.97, + "duration": 285.07, + "unblocked_units": [ + 169 + ], + "unblocked_rmeta_units": [ + 172 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 19.35 + } + ], + [ + "codegen", + { + "start": 19.35, + "end": 285.07 + } + ] + ] + }, + { + "i": 404, + "name": "mlua-sys", + "version": "0.10.0", + "mode": "todo", + "target": "", + "features": [ + "lua-src", + "lua54", + "luajit-src", + "vendored" + ], + "start": 230.94, + "duration": 0.7, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.43 + } + ], + [ + "codegen", + { + "start": 0.43, + "end": 0.7 + } + ] + ] + }, + { + "i": 446, + "name": "pest_generator", + "version": "2.8.6", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 231.38, + "duration": 2.46, + "unblocked_units": [ + 445 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.22 + } + ], + [ + "codegen", + { + "start": 1.22, + "end": 2.46 + } + ] + ] + }, + { + "i": 493, + "name": "rand_chacha", + "version": "0.3.1", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 232.47, + "duration": 1.74, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 490 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 1.74 + } + ] + ] + }, + { + "i": 407, + "name": "mlua_derive", + "version": "0.11.0", + "mode": "todo", + "target": "", + "features": [ + "itertools", + "macros", + "once_cell", + "proc-macro-error2", + "regex" + ], + "start": 234.11, + "duration": 1.87, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 450, + "name": "phf", + "version": "0.11.3", + "mode": "todo", + "target": "", + "features": [], + "start": 234.41, + "duration": 0.33, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.08 + } + ], + [ + "codegen", + { + "start": 0.08, + "end": 0.33 + } + ] + ] + }, + { + "i": 653, + "name": "wasm-bindgen-shared", + "version": "0.2.120", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 234.94, + "duration": 0.41, + "unblocked_units": [ + 650 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 573, + "name": "strum_macros", + "version": "0.26.4", + "mode": "todo", + "target": "", + "features": [], + "start": 235.98, + "duration": 5.84, + "unblocked_units": [ + 571 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 697, + "name": "winit", + "version": "0.30.13", + "mode": "todo", + "target": " build-script", + "features": [ + "bytemuck", + "percent-encoding", + "rwh_06", + "x11", + "x11-dl", + "x11rb" + ], + "start": 236.3, + "duration": 1.56, + "unblocked_units": [ + 698 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 517, + "name": "rhai_codegen", + "version": "3.1.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "sync" + ], + "start": 238.6, + "duration": 3.22, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 198, + "name": "chrono", + "version": "0.4.44", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "clock", + "iana-time-zone", + "now", + "std", + "winapi", + "windows-link" + ], + "start": 240.56, + "duration": 11.38, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 199 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.31 + } + ], + [ + "codegen", + { + "start": 3.31, + "end": 11.38 + } + ] + ] + }, + { + "i": 460, + "name": "polycool", + "version": "0.4.0", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 241.51, + "duration": 2.9, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 366 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.36 + } + ], + [ + "codegen", + { + "start": 0.36, + "end": 2.9 + } + ] + ] + }, + { + "i": 245, + "name": "deunicode", + "version": "1.6.2", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default" + ], + "start": 241.82, + "duration": 0.55, + "unblocked_units": [ + 557 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.07 + } + ], + [ + "codegen", + { + "start": 0.07, + "end": 0.55 + } + ] + ] + }, + { + "i": 624, + "name": "ucd-trie", + "version": "0.1.7", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 241.87, + "duration": 1.66, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 444 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.2 + } + ], + [ + "codegen", + { + "start": 0.2, + "end": 1.66 + } + ] + ] + }, + { + "i": 589, + "name": "thin-vec", + "version": "0.2.18", + "mode": "todo", + "target": "", + "features": [], + "start": 241.87, + "duration": 0.67, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 516 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.42 + } + ], + [ + "codegen", + { + "start": 0.42, + "end": 0.67 + } + ] + ] + }, + { + "i": 520, + "name": "rustc-hash", + "version": "2.1.2", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 242.55, + "duration": 0.37, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 403 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.12 + } + ], + [ + "codegen", + { + "start": 0.12, + "end": 0.37 + } + ] + ] + }, + { + "i": 355, + "name": "inflections", + "version": "1.1.1", + "mode": "todo", + "target": "", + "features": [], + "start": 242.76, + "duration": 0.68, + "unblocked_units": [ + 306 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.46 + } + ], + [ + "codegen", + { + "start": 0.46, + "end": 0.68 + } + ] + ] + }, + { + "i": 403, + "name": "mlua", + "version": "0.11.6", + "mode": "todo", + "target": "", + "features": [ + "error-send", + "lua54", + "macros", + "mlua_derive", + "send", + "vendored" + ], + "start": 243.22, + "duration": 27.31, + "unblocked_units": [ + 121 + ], + "unblocked_rmeta_units": [ + 122 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 8.72 + } + ], + [ + "codegen", + { + "start": 8.72, + "end": 27.31 + } + ] + ] + }, + { + "i": 557, + "name": "slug", + "version": "0.1.6", + "mode": "todo", + "target": "", + "features": [], + "start": 243.78, + "duration": 1.23, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 306, + "name": "gltf-derive", + "version": "1.4.1", + "mode": "todo", + "target": "", + "features": [], + "start": 243.78, + "duration": 1.23, + "unblocked_units": [ + 307 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 199, + "name": "chrono-tz", + "version": "0.9.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 244.58, + "duration": 8.93, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 7.36 + } + ], + [ + "codegen", + { + "start": 7.36, + "end": 8.93 + } + ] + ] + }, + { + "i": 516, + "name": "rhai", + "version": "1.24.0", + "mode": "todo", + "target": "", + "features": [ + "std", + "sync" + ], + "start": 245.2, + "duration": 178.82, + "unblocked_units": [ + 123 + ], + "unblocked_rmeta_units": [ + 124 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 40.9 + } + ], + [ + "codegen", + { + "start": 40.9, + "end": 178.82 + } + ] + ] + }, + { + "i": 444, + "name": "pest", + "version": "2.8.6", + "mode": "todo", + "target": "", + "features": [ + "default", + "memchr", + "std" + ], + "start": 245.2, + "duration": 4.97, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.04 + } + ], + [ + "codegen", + { + "start": 3.04, + "end": 4.97 + } + ] + ] + }, + { + "i": 366, + "name": "kurbo", + "version": "0.13.1", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 251.94, + "duration": 12.14, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.77 + } + ], + [ + "codegen", + { + "start": 3.77, + "end": 12.14 + } + ] + ] + }, + { + "i": 571, + "name": "strum", + "version": "0.26.3", + "mode": "todo", + "target": "", + "features": [ + "derive", + "strum_macros" + ], + "start": 252.82, + "duration": 1.03, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.54 + } + ], + [ + "codegen", + { + "start": 0.54, + "end": 1.03 + } + ] + ] + }, + { + "i": 698, + "name": "winit", + "version": "0.30.13", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "bytemuck", + "percent-encoding", + "rwh_06", + "x11", + "x11-dl", + "x11rb" + ], + "start": 253.85, + "duration": 0.03, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 650, + "name": "wasm-bindgen-shared", + "version": "0.2.120", + "mode": "todo", + "target": "", + "features": [], + "start": 253.86, + "duration": 0.86, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.25 + } + ], + [ + "codegen", + { + "start": 0.25, + "end": 0.86 + } + ] + ] + }, + { + "i": 445, + "name": "pest_derive", + "version": "2.8.6", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 253.9, + "duration": 1.49, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 490, + "name": "rand", + "version": "0.8.6", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default", + "getrandom", + "libc", + "rand_chacha", + "std", + "std_rng" + ], + "start": 255.13, + "duration": 2.59, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.76 + } + ], + [ + "codegen", + { + "start": 1.76, + "end": 2.59 + } + ] + ] + }, + { + "i": 304, + "name": "globwalk", + "version": "0.9.1", + "mode": "todo", + "target": "", + "features": [], + "start": 256.4, + "duration": 2.06, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.08 + } + ], + [ + "codegen", + { + "start": 0.08, + "end": 2.06 + } + ] + ] + }, + { + "i": 684, + "name": "windows-sys", + "version": "0.52.0", + "mode": "todo", + "target": "", + "features": [ + "Win32", + "Win32_Devices", + "Win32_Devices_HumanInterfaceDevice", + "Win32_Foundation", + "Win32_Globalization", + "Win32_Graphics", + "Win32_Graphics_Dwm", + "Win32_Graphics_Gdi", + "Win32_Media", + "Win32_Security", + "Win32_System", + "Win32_System_Com", + "Win32_System_Com_StructuredStorage", + "Win32_System_LibraryLoader", + "Win32_System_Ole", + "Win32_System_SystemInformation", + "Win32_System_SystemServices", + "Win32_System_Threading", + "Win32_System_WindowsProgramming", + "Win32_UI", + "Win32_UI_Accessibility", + "Win32_UI_Controls", + "Win32_UI_HiDpi", + "Win32_UI_Input", + "Win32_UI_Input_Ime", + "Win32_UI_Input_KeyboardAndMouse", + "Win32_UI_Input_Pointer", + "Win32_UI_Input_Touch", + "Win32_UI_Shell", + "Win32_UI_TextServices", + "Win32_UI_WindowsAndMessaging", + "default" + ], + "start": 258.46, + "duration": 8.87, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 8.03 + } + ], + [ + "codegen", + { + "start": 8.03, + "end": 8.87 + } + ] + ] + }, + { + "i": 572, + "name": "strum_macros", + "version": "0.25.3", + "mode": "todo", + "target": "", + "features": [], + "start": 259.04, + "duration": 5.35, + "unblocked_units": [ + 570 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 654, + "name": "wasm-bindgen-shared", + "version": "0.2.120", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 264.59, + "duration": 0.0, + "unblocked_units": [ + 651 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 1, + "name": "accesskit_consumer", + "version": "0.35.0", + "mode": "todo", + "target": "", + "features": [], + "start": 264.9, + "duration": 13.11, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 2 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.21 + } + ], + [ + "codegen", + { + "start": 1.21, + "end": 13.11 + } + ] + ] + }, + { + "i": 212, + "name": "color", + "version": "0.3.3", + "mode": "todo", + "target": "", + "features": [ + "bytemuck", + "std" + ], + "start": 264.9, + "duration": 6.45, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 441 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.59 + } + ], + [ + "codegen", + { + "start": 1.59, + "end": 6.45 + } + ] + ] + }, + { + "i": 51, + "name": "bevy_animation_macros", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 268.59, + "duration": 2.12, + "unblocked_units": [ + 49 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 65, + "name": "bevy_core_pipeline", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "tonemapping_luts", + "webgl" + ], + "start": 271.07, + "duration": 193.16, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 153, + 67, + 137 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 43.48 + } + ], + [ + "codegen", + { + "start": 43.48, + "end": 193.16 + } + ] + ] + }, + { + "i": 329, + "name": "humansize", + "version": "2.1.3", + "mode": "todo", + "target": "", + "features": [], + "start": 271.07, + "duration": 0.8, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 584 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.26 + } + ], + [ + "codegen", + { + "start": 0.26, + "end": 0.8 + } + ] + ] + }, + { + "i": 352, + "name": "include_dir_macros", + "version": "0.7.4", + "mode": "todo", + "target": "", + "features": [], + "start": 271.87, + "duration": 0.87, + "unblocked_units": [ + 351 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 475, + "name": "proc-macro-error-attr", + "version": "1.0.4", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 272.34, + "duration": 0.61, + "unblocked_units": [ + 476 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 241, + "name": "cursor-icon", + "version": "1.2.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default", + "std" + ], + "start": 272.86, + "duration": 0.46, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.11 + } + ], + [ + "codegen", + { + "start": 0.11, + "end": 0.46 + } + ] + ] + }, + { + "i": 577, + "name": "syn", + "version": "1.0.109", + "mode": "todo", + "target": " build-script", + "features": [ + "clone-impls", + "default", + "derive", + "extra-traits", + "full", + "parsing", + "printing", + "proc-macro", + "quote" + ], + "start": 272.97, + "duration": 0.87, + "unblocked_units": [ + 578 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 187, + "name": "bumpalo", + "version": "3.20.2", + "mode": "todo", + "target": "", + "features": [ + "default" + ], + "start": 273.48, + "duration": 0.69, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 649 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.26 + } + ], + [ + "codegen", + { + "start": 0.26, + "end": 0.69 + } + ] + ] + }, + { + "i": 253, + "name": "dpi", + "version": "0.1.2", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 273.62, + "duration": 0.73, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 696 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.56 + } + ], + [ + "codegen", + { + "start": 0.56, + "end": 0.73 + } + ] + ] + }, + { + "i": 297, + "name": "getrandom", + "version": "0.3.4", + "mode": "todo", + "target": " build-script", + "features": [ + "std" + ], + "start": 274.18, + "duration": 0.72, + "unblocked_units": [ + 298 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 504, + "name": "rayon-core", + "version": "1.13.0", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 274.35, + "duration": 0.46, + "unblocked_units": [ + 505 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 696, + "name": "winit", + "version": "0.30.13", + "mode": "todo", + "target": "", + "features": [ + "bytemuck", + "percent-encoding", + "rwh_06", + "x11", + "x11-dl", + "x11rb" + ], + "start": 274.52, + "duration": 19.66, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 6.4 + } + ], + [ + "codegen", + { + "start": 6.4, + "end": 19.66 + } + ] + ] + }, + { + "i": 505, + "name": "rayon-core", + "version": "1.13.0", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 274.89, + "duration": 0.22, + "unblocked_units": [ + 503 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 298, + "name": "getrandom", + "version": "0.3.4", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "std" + ], + "start": 274.97, + "duration": 0.29, + "unblocked_units": [ + 296 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 578, + "name": "syn", + "version": "1.0.109", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "clone-impls", + "default", + "derive", + "extra-traits", + "full", + "parsing", + "printing", + "proc-macro", + "quote" + ], + "start": 275.26, + "duration": 0.19, + "unblocked_units": [ + 576 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 476, + "name": "proc-macro-error-attr", + "version": "1.0.4", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 275.29, + "duration": 0.29, + "unblocked_units": [ + 474 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 649, + "name": "wasm-bindgen-macro-support", + "version": "0.2.120", + "mode": "todo", + "target": "", + "features": [], + "start": 275.29, + "duration": 9.47, + "unblocked_units": [ + 648 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 4.59 + } + ], + [ + "codegen", + { + "start": 4.59, + "end": 9.47 + } + ] + ] + }, + { + "i": 351, + "name": "include_dir", + "version": "0.7.4", + "mode": "todo", + "target": "", + "features": [ + "default" + ], + "start": 275.55, + "duration": 0.93, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.52 + } + ], + [ + "codegen", + { + "start": 0.52, + "end": 0.93 + } + ] + ] + }, + { + "i": 584, + "name": "tera", + "version": "1.20.1", + "mode": "todo", + "target": "", + "features": [ + "builtins", + "chrono", + "chrono-tz", + "default", + "humansize", + "percent-encoding", + "rand", + "slug", + "urlencode" + ], + "start": 275.65, + "duration": 73.36, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 388 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 7.61 + } + ], + [ + "codegen", + { + "start": 7.61, + "end": 73.36 + } + ] + ] + }, + { + "i": 49, + "name": "bevy_animation", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_mesh" + ], + "start": 277.12, + "duration": 120.44, + "unblocked_units": [ + 50 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 8.58 + } + ], + [ + "codegen", + { + "start": 8.58, + "end": 120.44 + } + ] + ] + }, + { + "i": 441, + "name": "peniko", + "version": "0.6.1", + "mode": "todo", + "target": "", + "features": [ + "bytemuck", + "std" + ], + "start": 278.87, + "duration": 1.32, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.43 + } + ], + [ + "codegen", + { + "start": 0.43, + "end": 1.32 + } + ] + ] + }, + { + "i": 2, + "name": "accesskit_windows", + "version": "0.32.1", + "mode": "todo", + "target": "", + "features": [], + "start": 280.19, + "duration": 13.6, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 3 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.32 + } + ], + [ + "codegen", + { + "start": 2.32, + "end": 13.6 + } + ] + ] + }, + { + "i": 570, + "name": "strum", + "version": "0.25.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "derive", + "std", + "strum_macros" + ], + "start": 281.37, + "duration": 0.58, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.44 + } + ], + [ + "codegen", + { + "start": 0.44, + "end": 0.58 + } + ] + ] + }, + { + "i": 307, + "name": "gltf-json", + "version": "1.4.1", + "mode": "todo", + "target": "", + "features": [ + "KHR_lights_punctual", + "KHR_materials_emissive_strength", + "KHR_materials_ior", + "KHR_materials_transmission", + "KHR_materials_unlit", + "KHR_materials_volume", + "KHR_texture_transform", + "default", + "extensions", + "extras", + "names" + ], + "start": 282.51, + "duration": 90.88, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 305 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 8.51 + } + ], + [ + "codegen", + { + "start": 8.51, + "end": 90.88 + } + ] + ] + }, + { + "i": 177, + "name": "bevy_world_serialization", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "serialize" + ], + "start": 285.7, + "duration": 73.35, + "unblocked_units": [ + 178 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.6 + } + ], + [ + "codegen", + { + "start": 3.6, + "end": 73.35 + } + ] + ] + }, + { + "i": 645, + "name": "wasm-bindgen", + "version": "0.2.120", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "std" + ], + "start": 286.87, + "duration": 1.23, + "unblocked_units": [ + 646 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 313, + "name": "guillotiere", + "version": "0.7.0", + "mode": "todo", + "target": "", + "features": [], + "start": 289.3, + "duration": 1.45, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 1.45 + } + ] + ] + }, + { + "i": 472, + "name": "proc-macro-error", + "version": "1.0.4", + "mode": "todo", + "target": " build-script", + "features": [ + "default", + "syn", + "syn-error" + ], + "start": 290.95, + "duration": 0.7, + "unblocked_units": [ + 473 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 701, + "name": "winnow", + "version": "1.0.2", + "mode": "todo", + "target": "", + "features": [], + "start": 292.01, + "duration": 0.97, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 605 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.54 + } + ], + [ + "codegen", + { + "start": 0.54, + "end": 0.97 + } + ] + ] + }, + { + "i": 278, + "name": "fearless_simd", + "version": "0.4.1", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 293.02, + "duration": 11.08, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 638 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 10.59 + } + ], + [ + "codegen", + { + "start": 10.59, + "end": 11.08 + } + ] + ] + }, + { + "i": 626, + "name": "unicode-general-category", + "version": "1.1.0", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 294.18, + "duration": 1.05, + "unblocked_units": [ + 627 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 467, + "name": "predicates-core", + "version": "1.0.10", + "mode": "todo", + "target": "", + "features": [], + "start": 294.64, + "duration": 0.37, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.05 + } + ], + [ + "codegen", + { + "start": 0.05, + "end": 0.37 + } + ] + ] + }, + { + "i": 605, + "name": "toml_parser", + "version": "1.1.2+spec-1.1.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "std" + ], + "start": 295.19, + "duration": 4.64, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.81 + } + ], + [ + "codegen", + { + "start": 0.81, + "end": 4.64 + } + ] + ] + }, + { + "i": 627, + "name": "unicode-general-category", + "version": "1.1.0", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 295.53, + "duration": 0.89, + "unblocked_units": [ + 625 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 473, + "name": "proc-macro-error", + "version": "1.0.4", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "syn", + "syn-error" + ], + "start": 296.9, + "duration": 0.05, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 305, + "name": "gltf", + "version": "1.4.1", + "mode": "todo", + "target": "", + "features": [ + "KHR_lights_punctual", + "KHR_materials_emissive_strength", + "KHR_materials_ior", + "KHR_materials_transmission", + "KHR_materials_unlit", + "KHR_materials_volume", + "KHR_texture_transform", + "extensions", + "extras", + "names", + "utils" + ], + "start": 296.92, + "duration": 45.63, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.88 + } + ], + [ + "codegen", + { + "start": 3.88, + "end": 45.63 + } + ] + ] + }, + { + "i": 646, + "name": "wasm-bindgen", + "version": "0.2.120", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "default", + "std" + ], + "start": 296.98, + "duration": 0.2, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 124, + "name": "bevy_mod_scripting_rhai", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 297.49, + "duration": 82.82, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 4.38 + } + ], + [ + "codegen", + { + "start": 4.38, + "end": 82.82 + } + ] + ] + }, + { + "i": 648, + "name": "wasm-bindgen-macro", + "version": "0.2.120", + "mode": "todo", + "target": "", + "features": [], + "start": 300.51, + "duration": 1.44, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 3, + "name": "accesskit_winit", + "version": "0.32.2", + "mode": "todo", + "target": "", + "features": [ + "rwh_06" + ], + "start": 302.6, + "duration": 0.55, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.16 + } + ], + [ + "codegen", + { + "start": 0.16, + "end": 0.55 + } + ] + ] + }, + { + "i": 474, + "name": "proc-macro-error-attr", + "version": "1.0.4", + "mode": "todo", + "target": "", + "features": [], + "start": 303.61, + "duration": 1.41, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 638, + "name": "vello_common", + "version": "0.0.9", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 304.55, + "duration": 15.52, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 639 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.65 + } + ], + [ + "codegen", + { + "start": 3.65, + "end": 15.52 + } + ] + ] + }, + { + "i": 576, + "name": "syn", + "version": "1.0.109", + "mode": "todo", + "target": "", + "features": [ + "clone-impls", + "default", + "derive", + "extra-traits", + "full", + "parsing", + "printing", + "proc-macro", + "quote" + ], + "start": 305.38, + "duration": 14.16, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 471 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 8.09 + } + ], + [ + "codegen", + { + "start": 8.09, + "end": 14.16 + } + ] + ] + }, + { + "i": 296, + "name": "getrandom", + "version": "0.3.4", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 311.55, + "duration": 0.23, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 497 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 0.23 + } + ] + ] + }, + { + "i": 503, + "name": "rayon-core", + "version": "1.13.0", + "mode": "todo", + "target": "", + "features": [], + "start": 312.12, + "duration": 5.9, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 502 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.63 + } + ], + [ + "codegen", + { + "start": 1.63, + "end": 5.9 + } + ] + ] + }, + { + "i": 153, + "name": "bevy_sprite_render", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_text", + "webgl" + ], + "start": 318.25, + "duration": 267.96, + "unblocked_units": [ + 171, + 154 + ], + "unblocked_rmeta_units": [ + 170 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 36.18 + } + ], + [ + "codegen", + { + "start": 36.18, + "end": 267.96 + } + ] + ] + }, + { + "i": 67, + "name": "bevy_core_pipeline_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 319.9, + "duration": 19.95, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.06 + } + ], + [ + "codegen", + { + "start": 1.06, + "end": 19.95 + } + ] + ] + }, + { + "i": 651, + "name": "wasm-bindgen-shared", + "version": "0.2.120", + "mode": "todo", + "target": "", + "features": [], + "start": 320.35, + "duration": 1.86, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 644 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.37 + } + ], + [ + "codegen", + { + "start": 0.37, + "end": 1.86 + } + ] + ] + }, + { + "i": 122, + "name": "bevy_mod_scripting_lua", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [ + "lua54" + ], + "start": 322.34, + "duration": 62.03, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.37 + } + ], + [ + "codegen", + { + "start": 3.37, + "end": 62.03 + } + ] + ] + }, + { + "i": 164, + "name": "bevy_time_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 332.37, + "duration": 28.58, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.94 + } + ], + [ + "codegen", + { + "start": 0.94, + "end": 28.58 + } + ] + ] + }, + { + "i": 62, + "name": "bevy_color_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 335.68, + "duration": 48.58, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.77 + } + ], + [ + "codegen", + { + "start": 1.77, + "end": 48.58 + } + ] + ] + }, + { + "i": 72, + "name": "bevy_ecs_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 340.3, + "duration": 41.36, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.32 + } + ], + [ + "codegen", + { + "start": 1.32, + "end": 41.36 + } + ] + ] + }, + { + "i": 167, + "name": "bevy_transform_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 342.59, + "duration": 35.35, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.46 + } + ], + [ + "codegen", + { + "start": 1.46, + "end": 35.35 + } + ] + ] + }, + { + "i": 101, + "name": "bevy_math_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 349.4, + "duration": 185.91, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 6.31 + } + ], + [ + "codegen", + { + "start": 6.31, + "end": 185.91 + } + ] + ] + }, + { + "i": 88, + "name": "bevy_input_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 354.67, + "duration": 91.47, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.34 + } + ], + [ + "codegen", + { + "start": 2.34, + "end": 91.47 + } + ] + ] + }, + { + "i": 142, + "name": "bevy_reflect_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 359.22, + "duration": 432.57, + "unblocked_units": [ + 119, + 106, + 530 + ], + "unblocked_rmeta_units": [ + 120 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 35.24 + } + ], + [ + "codegen", + { + "start": 35.24, + "end": 432.57 + } + ] + ] + }, + { + "i": 258, + "name": "emath", + "version": "0.35.0", + "mode": "todo", + "target": "", + "features": [ + "bytemuck" + ], + "start": 361.16, + "duration": 1.72, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 254 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.25 + } + ], + [ + "codegen", + { + "start": 1.25, + "end": 1.72 + } + ] + ] + }, + { + "i": 21, + "name": "approx", + "version": "0.5.1", + "mode": "todo", + "target": "", + "features": [], + "start": 362.94, + "duration": 0.59, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 176 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.41 + } + ], + [ + "codegen", + { + "start": 0.41, + "end": 0.59 + } + ] + ] + }, + { + "i": 544, + "name": "serde_spanned", + "version": "1.1.1", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "serde", + "std" + ], + "start": 363.56, + "duration": 0.45, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.27 + } + ], + [ + "codegen", + { + "start": 0.27, + "end": 0.45 + } + ] + ] + }, + { + "i": 601, + "name": "toml_datetime", + "version": "0.7.5+spec-1.1.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "serde", + "std" + ], + "start": 364.03, + "duration": 1.33, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.64 + } + ], + [ + "codegen", + { + "start": 0.64, + "end": 1.33 + } + ] + ] + }, + { + "i": 43, + "name": "base64", + "version": "0.22.1", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "default", + "std" + ], + "start": 366.01, + "duration": 1.37, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 82 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.77 + } + ], + [ + "codegen", + { + "start": 0.77, + "end": 1.37 + } + ] + ] + }, + { + "i": 699, + "name": "winnow", + "version": "0.7.15", + "mode": "todo", + "target": "", + "features": [], + "start": 367.57, + "duration": 5.6, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 4.81 + } + ], + [ + "codegen", + { + "start": 4.81, + "end": 5.6 + } + ] + ] + }, + { + "i": 586, + "name": "termtree", + "version": "0.5.1", + "mode": "todo", + "target": "", + "features": [], + "start": 373.36, + "duration": 0.33, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 468 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.2 + } + ], + [ + "codegen", + { + "start": 0.2, + "end": 0.33 + } + ] + ] + }, + { + "i": 606, + "name": "toml_writer", + "version": "1.1.1+spec-1.1.0", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "std" + ], + "start": 373.55, + "duration": 0.64, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 600 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.36 + } + ], + [ + "codegen", + { + "start": 0.36, + "end": 0.64 + } + ] + ] + }, + { + "i": 204, + "name": "ciborium-io", + "version": "0.2.2", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "std" + ], + "start": 373.78, + "duration": 0.29, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 205 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.13 + } + ], + [ + "codegen", + { + "start": 0.13, + "end": 0.29 + } + ] + ] + }, + { + "i": 28, + "name": "assert_cmd", + "version": "2.2.1", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 374.17, + "duration": 0.64, + "unblocked_units": [ + 29 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 247, + "name": "difflib", + "version": "0.4.0", + "mode": "todo", + "target": "", + "features": [], + "start": 374.44, + "duration": 6.77, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 466 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.61 + } + ], + [ + "codegen", + { + "start": 0.61, + "end": 6.77 + } + ] + ] + }, + { + "i": 29, + "name": "assert_cmd", + "version": "2.2.1", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 375.05, + "duration": 0.0, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 466, + "name": "predicates", + "version": "3.1.4", + "mode": "todo", + "target": "", + "features": [ + "diff" + ], + "start": 375.27, + "duration": 6.42, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.62 + } + ], + [ + "codegen", + { + "start": 1.62, + "end": 6.42 + } + ] + ] + }, + { + "i": 600, + "name": "toml", + "version": "0.9.12+spec-1.1.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "display", + "parse", + "serde", + "std" + ], + "start": 378.01, + "duration": 14.33, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 393 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.52 + } + ], + [ + "codegen", + { + "start": 3.52, + "end": 14.33 + } + ] + ] + }, + { + "i": 205, + "name": "ciborium-ll", + "version": "0.2.2", + "mode": "todo", + "target": "", + "features": [], + "start": 380.78, + "duration": 0.48, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 203 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.19 + } + ], + [ + "codegen", + { + "start": 0.19, + "end": 0.48 + } + ] + ] + }, + { + "i": 468, + "name": "predicates-tree", + "version": "1.0.13", + "mode": "todo", + "target": "", + "features": [], + "start": 381.32, + "duration": 1.22, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.21 + } + ], + [ + "codegen", + { + "start": 0.21, + "end": 1.22 + } + ] + ] + }, + { + "i": 82, + "name": "bevy_gltf", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_animation" + ], + "start": 381.53, + "duration": 120.23, + "unblocked_units": [ + 83 + ], + "unblocked_rmeta_units": [ + 132 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 6.19 + } + ], + [ + "codegen", + { + "start": 6.19, + "end": 120.23 + } + ] + ] + }, + { + "i": 176, + "name": "bevy_winit", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_asset", + "bevy_image", + "bytemuck", + "custom_cursor", + "default", + "wgpu-types", + "x11" + ], + "start": 381.8, + "duration": 68.17, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 4.04 + } + ], + [ + "codegen", + { + "start": 4.04, + "end": 68.17 + } + ] + ] + }, + { + "i": 254, + "name": "ecolor", + "version": "0.35.0", + "mode": "todo", + "target": "", + "features": [ + "bytemuck" + ], + "start": 381.88, + "duration": 1.31, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.57 + } + ], + [ + "codegen", + { + "start": 0.57, + "end": 1.31 + } + ] + ] + }, + { + "i": 644, + "name": "wasm-bindgen", + "version": "0.2.120", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 382.73, + "duration": 3.99, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 364 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.18 + } + ], + [ + "codegen", + { + "start": 3.18, + "end": 3.99 + } + ] + ] + }, + { + "i": 502, + "name": "rayon", + "version": "1.12.0", + "mode": "todo", + "target": "", + "features": [], + "start": 383.23, + "duration": 8.66, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 279 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 7.85 + } + ], + [ + "codegen", + { + "start": 7.85, + "end": 8.66 + } + ] + ] + }, + { + "i": 471, + "name": "proc-macro-error", + "version": "1.0.4", + "mode": "todo", + "target": "", + "features": [ + "default", + "syn", + "syn-error" + ], + "start": 384.35, + "duration": 0.78, + "unblocked_units": [ + 45 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.46 + } + ], + [ + "codegen", + { + "start": 0.46, + "end": 0.78 + } + ] + ] + }, + { + "i": 497, + "name": "rand_core", + "version": "0.9.5", + "mode": "todo", + "target": "", + "features": [ + "os_rng", + "std" + ], + "start": 384.43, + "duration": 0.84, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 494 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.49 + } + ], + [ + "codegen", + { + "start": 0.49, + "end": 0.84 + } + ] + ] + }, + { + "i": 639, + "name": "vello_cpu", + "version": "0.0.9", + "mode": "todo", + "target": "", + "features": [ + "f32_pipeline", + "std", + "u8_pipeline" + ], + "start": 385.27, + "duration": 165.48, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.85 + } + ], + [ + "codegen", + { + "start": 3.85, + "end": 165.48 + } + ] + ] + }, + { + "i": 625, + "name": "unicode-general-category", + "version": "1.1.0", + "mode": "todo", + "target": "", + "features": [], + "start": 385.34, + "duration": 1.44, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.2 + } + ], + [ + "codegen", + { + "start": 1.2, + "end": 1.44 + } + ] + ] + }, + { + "i": 388, + "name": "lua_language_server_lad_backend", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 386.75, + "duration": 10.44, + "unblocked_units": [ + 369 + ], + "unblocked_rmeta_units": [ + 370 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.13 + } + ], + [ + "codegen", + { + "start": 1.13, + "end": 10.44 + } + ] + ] + }, + { + "i": 588, + "name": "test_utils", + "version": "0.1.0", + "mode": "todo", + "target": "", + "features": [], + "start": 386.87, + "duration": 39.42, + "unblocked_units": [ + 109, + 113 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.29 + } + ], + [ + "codegen", + { + "start": 2.29, + "end": 39.42 + } + ] + ] + }, + { + "i": 316, + "name": "harfrust", + "version": "0.7.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 392.28, + "duration": 45.13, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 264 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 8.19 + } + ], + [ + "codegen", + { + "start": 8.19, + "end": 45.13 + } + ] + ] + }, + { + "i": 156, + "name": "bevy_state_macros", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 392.49, + "duration": 1.05, + "unblocked_units": [ + 155 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 615, + "name": "tracy-client-sys", + "version": "0.28.0", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 393.64, + "duration": 0.78, + "unblocked_units": [ + 616 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 359, + "name": "itertools", + "version": "0.10.5", + "mode": "todo", + "target": "", + "features": [ + "default", + "use_alloc", + "use_std" + ], + "start": 394.65, + "duration": 4.87, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 229 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 4.49 + } + ], + [ + "codegen", + { + "start": 4.49, + "end": 4.87 + } + ] + ] + }, + { + "i": 193, + "name": "cast", + "version": "0.3.0", + "mode": "todo", + "target": "", + "features": [], + "start": 397.47, + "duration": 0.52, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.23 + } + ], + [ + "codegen", + { + "start": 0.23, + "end": 0.52 + } + ] + ] + }, + { + "i": 642, + "name": "wait-timeout", + "version": "0.2.1", + "mode": "todo", + "target": "", + "features": [], + "start": 397.99, + "duration": 0.29, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 27 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 0.29 + } + ] + ] + }, + { + "i": 265, + "name": "epaint_default_fonts", + "version": "0.35.0", + "mode": "todo", + "target": "", + "features": [], + "start": 398.3, + "duration": 0.37, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.21 + } + ], + [ + "codegen", + { + "start": 0.21, + "end": 0.37 + } + ] + ] + }, + { + "i": 413, + "name": "nohash-hasher", + "version": "0.2.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 398.44, + "duration": 0.19, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.06 + } + ], + [ + "codegen", + { + "start": 0.06, + "end": 0.19 + } + ] + ] + }, + { + "i": 323, + "name": "heapless", + "version": "0.8.0", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 398.68, + "duration": 0.67, + "unblocked_units": [ + 324 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 532, + "name": "self_cell", + "version": "1.3.0", + "mode": "todo", + "target": "", + "features": [], + "start": 398.8, + "duration": 0.29, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.12 + } + ], + [ + "codegen", + { + "start": 0.12, + "end": 0.29 + } + ] + ] + }, + { + "i": 27, + "name": "assert_cmd", + "version": "2.2.1", + "mode": "todo", + "target": "", + "features": [], + "start": 399.11, + "duration": 6.22, + "unblocked_units": [ + 387, + 389 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.93 + } + ], + [ + "codegen", + { + "start": 0.93, + "end": 6.22 + } + ] + ] + }, + { + "i": 324, + "name": "heapless", + "version": "0.8.0", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 399.36, + "duration": 0.36, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 229, + "name": "criterion-plot", + "version": "0.5.0", + "mode": "todo", + "target": "", + "features": [], + "start": 399.72, + "duration": 3.87, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.08 + } + ], + [ + "codegen", + { + "start": 1.08, + "end": 3.87 + } + ] + ] + }, + { + "i": 120, + "name": "bevy_mod_scripting_functions", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_color", + "bevy_color_bms_bindings", + "bevy_core_pipeline", + "bevy_core_pipeline_bms_bindings", + "bevy_ecs", + "bevy_ecs_bms_bindings", + "bevy_input", + "bevy_input_bms_bindings", + "bevy_math", + "bevy_math_bms_bindings", + "bevy_mod_scripting_lua", + "bevy_mod_scripting_rhai", + "bevy_reflect", + "bevy_reflect_bms_bindings", + "bevy_time", + "bevy_time_bms_bindings", + "bevy_transform", + "bevy_transform_bms_bindings", + "core_functions", + "lua_bindings", + "rhai_bindings" + ], + "start": 399.99, + "duration": 125.21, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 4.31 + } + ], + [ + "codegen", + { + "start": 4.31, + "end": 125.21 + } + ] + ] + }, + { + "i": 264, + "name": "epaint", + "version": "0.35.0", + "mode": "todo", + "target": "", + "features": [ + "bytemuck", + "default_fonts", + "epaint_default_fonts" + ], + "start": 404.13, + "duration": 35.76, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 255 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 5.56 + } + ], + [ + "codegen", + { + "start": 5.56, + "end": 35.76 + } + ] + ] + }, + { + "i": 616, + "name": "tracy-client-sys", + "version": "0.28.0", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 405.64, + "duration": 0.29, + "unblocked_units": [ + 614 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 155, + "name": "bevy_state", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_app", + "bevy_reflect", + "std" + ], + "start": 406.56, + "duration": 33.09, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 91 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 27.07 + } + ], + [ + "codegen", + { + "start": 27.07, + "end": 33.09 + } + ] + ] + }, + { + "i": 279, + "name": "fid-rs", + "version": "0.2.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "rayon" + ], + "start": 424.34, + "duration": 3.78, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 385 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.01 + } + ], + [ + "codegen", + { + "start": 1.01, + "end": 3.78 + } + ] + ] + }, + { + "i": 364, + "name": "js-sys", + "version": "0.3.97", + "mode": "todo", + "target": "", + "features": [ + "default", + "std", + "unsafe-eval" + ], + "start": 426.35, + "duration": 19.53, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 656, + 647 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 15.1 + } + ], + [ + "codegen", + { + "start": 15.1, + "end": 19.53 + } + ] + ] + }, + { + "i": 45, + "name": "better-bae-macros", + "version": "0.1.9", + "mode": "todo", + "target": "", + "features": [], + "start": 428.34, + "duration": 1.53, + "unblocked_units": [ + 44 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 494, + "name": "rand_chacha", + "version": "0.9.0", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 430.06, + "duration": 2.38, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 491 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.61 + } + ], + [ + "codegen", + { + "start": 0.61, + "end": 2.38 + } + ] + ] + }, + { + "i": 393, + "name": "mdbook-core", + "version": "0.5.2", + "mode": "todo", + "target": "", + "features": [], + "start": 432.68, + "duration": 24.45, + "unblocked_units": [ + 395 + ], + "unblocked_rmeta_units": [ + 394 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.27 + } + ], + [ + "codegen", + { + "start": 2.27, + "end": 24.45 + } + ] + ] + }, + { + "i": 203, + "name": "ciborium", + "version": "0.2.2", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 437.58, + "duration": 2.67, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.61 + } + ], + [ + "codegen", + { + "start": 1.61, + "end": 2.67 + } + ] + ] + }, + { + "i": 128, + "name": "bevy_mod_scripting_test_scenario_syntax", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 439.72, + "duration": 21.33, + "unblocked_units": [ + 129 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.77 + } + ], + [ + "codegen", + { + "start": 1.77, + "end": 21.33 + } + ] + ] + }, + { + "i": 317, + "name": "hash32", + "version": "0.3.1", + "mode": "todo", + "target": "", + "features": [], + "start": 439.96, + "duration": 0.38, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 322 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.22 + } + ], + [ + "codegen", + { + "start": 0.22, + "end": 0.38 + } + ] + ] + }, + { + "i": 599, + "name": "tinytemplate", + "version": "1.2.1", + "mode": "todo", + "target": "", + "features": [], + "start": 440.27, + "duration": 3.94, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.67 + } + ], + [ + "codegen", + { + "start": 0.67, + "end": 3.94 + } + ] + ] + }, + { + "i": 357, + "name": "is-terminal", + "version": "0.4.17", + "mode": "todo", + "target": "", + "features": [], + "start": 440.43, + "duration": 0.6, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.12 + } + ], + [ + "codegen", + { + "start": 0.12, + "end": 0.6 + } + ] + ] + }, + { + "i": 11, + "name": "anes", + "version": "0.1.6", + "mode": "todo", + "target": "", + "features": [ + "default" + ], + "start": 441.13, + "duration": 1.0, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.7 + } + ], + [ + "codegen", + { + "start": 0.7, + "end": 1.0 + } + ] + ] + }, + { + "i": 430, + "name": "oorandom", + "version": "11.1.5", + "mode": "todo", + "target": "", + "features": [], + "start": 442.24, + "duration": 0.33, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 228 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.15 + } + ], + [ + "codegen", + { + "start": 0.15, + "end": 0.33 + } + ] + ] + }, + { + "i": 401, + "name": "minimal-lexical", + "version": "0.2.1", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 442.62, + "duration": 1.29, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 414 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.87 + } + ], + [ + "codegen", + { + "start": 0.87, + "end": 1.29 + } + ] + ] + }, + { + "i": 522, + "name": "rustix", + "version": "1.1.4", + "mode": "todo", + "target": " build-script", + "features": [ + "alloc", + "fs", + "net", + "std" + ], + "start": 444.0, + "duration": 0.88, + "unblocked_units": [ + 523 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 414, + "name": "nom", + "version": "7.1.3", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "std" + ], + "start": 444.23, + "duration": 5.22, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 12 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 4.52 + } + ], + [ + "codegen", + { + "start": 4.52, + "end": 5.22 + } + ] + ] + }, + { + "i": 523, + "name": "rustix", + "version": "1.1.4", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [ + "alloc", + "fs", + "net", + "std" + ], + "start": 444.96, + "duration": 0.56, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 228, + "name": "criterion", + "version": "0.5.1", + "mode": "todo", + "target": "", + "features": [], + "start": 445.59, + "duration": 44.1, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 531 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 5.66 + } + ], + [ + "codegen", + { + "start": 5.66, + "end": 44.1 + } + ] + ] + }, + { + "i": 322, + "name": "heapless", + "version": "0.8.0", + "mode": "todo", + "target": "", + "features": [], + "start": 445.91, + "duration": 1.53, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.34 + } + ], + [ + "codegen", + { + "start": 1.34, + "end": 1.53 + } + ] + ] + }, + { + "i": 394, + "name": "mdbook-preprocessor", + "version": "0.5.2", + "mode": "todo", + "target": "", + "features": [], + "start": 446.23, + "duration": 0.58, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 396 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.22 + } + ], + [ + "codegen", + { + "start": 0.22, + "end": 0.58 + } + ] + ] + }, + { + "i": 91, + "name": "bevy_internal", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_asset", + "bevy_camera", + "bevy_color", + "bevy_core_pipeline", + "bevy_image", + "bevy_log", + "bevy_material", + "bevy_mesh", + "bevy_render", + "bevy_shader", + "bevy_sprite", + "bevy_sprite_render", + "bevy_state", + "bevy_text", + "bevy_ui", + "bevy_window", + "bevy_winit", + "custom_cursor", + "default_font", + "keyboard", + "mouse", + "std", + "x11" + ], + "start": 446.85, + "duration": 1.67, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 46 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.56 + } + ], + [ + "codegen", + { + "start": 0.56, + "end": 1.67 + } + ] + ] + }, + { + "i": 491, + "name": "rand", + "version": "0.9.4", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "os_rng", + "std", + "std_rng", + "thread_rng" + ], + "start": 447.48, + "duration": 2.34, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.02 + } + ], + [ + "codegen", + { + "start": 2.02, + "end": 2.34 + } + ] + ] + }, + { + "i": 44, + "name": "better-bae", + "version": "0.1.9", + "mode": "todo", + "target": "", + "features": [], + "start": 448.6, + "duration": 0.49, + "unblocked_units": [ + 64 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.37 + } + ], + [ + "codegen", + { + "start": 0.37, + "end": 0.49 + } + ] + ] + }, + { + "i": 385, + "name": "louds-rs", + "version": "0.7.0", + "mode": "todo", + "target": "", + "features": [], + "start": 449.12, + "duration": 0.74, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 617 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.32 + } + ], + [ + "codegen", + { + "start": 0.32, + "end": 0.74 + } + ] + ] + }, + { + "i": 255, + "name": "egui", + "version": "0.35.0", + "mode": "todo", + "target": "", + "features": [ + "bytemuck", + "default_fonts" + ], + "start": 449.48, + "duration": 99.18, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 75 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 13.84 + } + ], + [ + "codegen", + { + "start": 13.84, + "end": 99.18 + } + ] + ] + }, + { + "i": 614, + "name": "tracy-client-sys", + "version": "0.28.0", + "mode": "todo", + "target": "", + "features": [], + "start": 449.87, + "duration": 0.22, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 613 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.09 + } + ], + [ + "codegen", + { + "start": 0.09, + "end": 0.22 + } + ] + ] + }, + { + "i": 132, + "name": "bevy_pbr", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_gltf", + "webgl" + ], + "start": 449.88, + "duration": 215.65, + "unblocked_units": [ + 133, + 81 + ], + "unblocked_rmeta_units": [ + 80 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 160.89 + } + ], + [ + "codegen", + { + "start": 160.89, + "end": 215.65 + } + ] + ] + }, + { + "i": 36, + "name": "async-io", + "version": "2.6.0", + "mode": "todo", + "target": " build-script", + "features": [], + "start": 450.0, + "duration": 0.53, + "unblocked_units": [ + 37 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 271, + "name": "errno", + "version": "0.3.14", + "mode": "todo", + "target": "", + "features": [ + "std" + ], + "start": 450.18, + "duration": 0.52, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 521 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.26 + } + ], + [ + "codegen", + { + "start": 0.26, + "end": 0.52 + } + ] + ] + }, + { + "i": 641, + "name": "vte", + "version": "0.14.1", + "mode": "todo", + "target": "", + "features": [], + "start": 450.56, + "duration": 0.52, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 568 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.33 + } + ], + [ + "codegen", + { + "start": 0.33, + "end": 0.52 + } + ] + ] + }, + { + "i": 37, + "name": "async-io", + "version": "2.6.0", + "mode": "run-custom-build", + "target": " build-script (run)", + "features": [], + "start": 450.89, + "duration": 0.26, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 568, + "name": "strip-ansi-escapes", + "version": "0.2.1", + "mode": "todo", + "target": "", + "features": [], + "start": 451.12, + "duration": 1.53, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.18 + } + ], + [ + "codegen", + { + "start": 0.18, + "end": 1.53 + } + ] + ] + }, + { + "i": 521, + "name": "rustix", + "version": "1.1.4", + "mode": "todo", + "target": "", + "features": [ + "alloc", + "fs", + "net", + "std" + ], + "start": 451.25, + "duration": 3.2, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 2.14 + } + ], + [ + "codegen", + { + "start": 2.14, + "end": 3.2 + } + ] + ] + }, + { + "i": 613, + "name": "tracy-client", + "version": "0.18.4", + "mode": "todo", + "target": "", + "features": [], + "start": 452.89, + "duration": 0.32, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 612 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.18 + } + ], + [ + "codegen", + { + "start": 0.18, + "end": 0.32 + } + ] + ] + }, + { + "i": 617, + "name": "trie-rs", + "version": "0.4.2", + "mode": "todo", + "target": "", + "features": [], + "start": 453.34, + "duration": 0.91, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.73 + } + ], + [ + "codegen", + { + "start": 0.73, + "end": 0.91 + } + ] + ] + }, + { + "i": 64, + "name": "bevy_console_derive", + "version": "0.6.0", + "mode": "todo", + "target": "", + "features": [], + "start": 454.45, + "duration": 0.73, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 12, + "name": "ansi-parser", + "version": "0.9.1", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 454.69, + "duration": 3.39, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.52 + } + ], + [ + "codegen", + { + "start": 0.52, + "end": 3.39 + } + ] + ] + }, + { + "i": 46, + "name": "bevy", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_asset", + "bevy_core_pipeline", + "bevy_log", + "bevy_render", + "bevy_sprite", + "bevy_sprite_render", + "bevy_state", + "bevy_ui", + "bevy_window", + "custom_cursor", + "default_font", + "keyboard", + "mouse", + "std", + "x11" + ], + "start": 455.33, + "duration": 0.43, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.23 + } + ], + [ + "codegen", + { + "start": 0.23, + "end": 0.43 + } + ] + ] + }, + { + "i": 656, + "name": "web-sys", + "version": "0.3.97", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 455.97, + "duration": 0.29, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.15 + } + ], + [ + "codegen", + { + "start": 0.15, + "end": 0.29 + } + ] + ] + }, + { + "i": 370, + "name": "ladfile_builder", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "lua_language_server_files", + "lua_language_server_lad_backend" + ], + "start": 456.45, + "duration": 15.22, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 105 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.44 + } + ], + [ + "codegen", + { + "start": 1.44, + "end": 15.22 + } + ] + ] + }, + { + "i": 149, + "name": "bevy_scene_macros", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 457.47, + "duration": 2.08, + "unblocked_units": [ + 147 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 459, + "name": "polling", + "version": "3.11.0", + "mode": "todo", + "target": "", + "features": [], + "start": 458.5, + "duration": 4.06, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 35 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.8 + } + ], + [ + "codegen", + { + "start": 0.8, + "end": 4.06 + } + ] + ] + }, + { + "i": 272, + "name": "escape8259", + "version": "0.5.3", + "mode": "todo", + "target": "", + "features": [], + "start": 459.72, + "duration": 0.83, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 379 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.14 + } + ], + [ + "codegen", + { + "start": 0.14, + "end": 0.83 + } + ] + ] + }, + { + "i": 547, + "name": "shlex", + "version": "1.3.0", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 460.65, + "duration": 0.59, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.15 + } + ], + [ + "codegen", + { + "start": 0.15, + "end": 0.59 + } + ] + ] + }, + { + "i": 379, + "name": "libtest-mimic", + "version": "0.8.2", + "mode": "todo", + "target": "", + "features": [], + "start": 461.14, + "duration": 13.19, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.86 + } + ], + [ + "codegen", + { + "start": 0.86, + "end": 13.19 + } + ] + ] + }, + { + "i": 147, + "name": "bevy_scene", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [], + "start": 461.65, + "duration": 40.95, + "unblocked_units": [ + 148 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.43 + } + ], + [ + "codegen", + { + "start": 3.43, + "end": 40.95 + } + ] + ] + }, + { + "i": 35, + "name": "async-io", + "version": "2.6.0", + "mode": "todo", + "target": "", + "features": [], + "start": 462.58, + "duration": 4.8, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.04 + } + ], + [ + "codegen", + { + "start": 1.04, + "end": 4.8 + } + ] + ] + }, + { + "i": 75, + "name": "bevy_egui", + "version": "0.41.1", + "mode": "todo", + "target": "", + "features": [ + "bevy_asset", + "bevy_color", + "bevy_core_pipeline", + "bevy_image", + "bevy_mesh", + "bevy_render", + "bevy_shader", + "bevy_transform", + "bytemuck", + "default_fonts", + "encase", + "itertools", + "render", + "wgpu-types" + ], + "start": 464.77, + "duration": 95.89, + "unblocked_units": [], + "unblocked_rmeta_units": [ + 63 + ], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 18.52 + } + ], + [ + "codegen", + { + "start": 18.52, + "end": 95.89 + } + ] + ] + }, + { + "i": 105, + "name": "bevy_mod_scripting", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_color_bindings", + "bevy_core_pipeline_bindings", + "bevy_ecs_bindings", + "bevy_input_bindings", + "bevy_math_bindings", + "bevy_mod_scripting_lua", + "bevy_mod_scripting_rhai", + "bevy_reflect_bindings", + "bevy_time_bindings", + "bevy_transform_bindings", + "core_functions", + "ladfile_builder", + "lua", + "lua54", + "lua_language_server_files", + "rhai" + ], + "start": 467.43, + "duration": 0.96, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.4 + } + ], + [ + "codegen", + { + "start": 0.4, + "end": 0.96 + } + ] + ] + }, + { + "i": 612, + "name": "tracing-tracy", + "version": "0.11.4", + "mode": "todo", + "target": "", + "features": [], + "start": 468.48, + "duration": 1.01, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.36 + } + ], + [ + "codegen", + { + "start": 0.36, + "end": 1.01 + } + ] + ] + }, + { + "i": 531, + "name": "script_integration_test_harness", + "version": "0.1.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_mod_scripting_lua", + "bevy_mod_scripting_rhai", + "default", + "lua", + "rhai" + ], + "start": 469.54, + "duration": 85.56, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 5.37 + } + ], + [ + "codegen", + { + "start": 5.37, + "end": 85.56 + } + ] + ] + }, + { + "i": 396, + "name": "mdbook_lad_preprocessor", + "version": "0.20.0", + "mode": "todo", + "target": "", + "features": [], + "start": 471.8, + "duration": 12.7, + "unblocked_units": [ + 397 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 1.02 + } + ], + [ + "codegen", + { + "start": 1.02, + "end": 12.7 + } + ] + ] + }, + { + "i": 647, + "name": "wasm-bindgen-futures", + "version": "0.4.70", + "mode": "todo", + "target": "", + "features": [ + "default", + "std" + ], + "start": 474.55, + "duration": 0.17, + "unblocked_units": [ + 55 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 0.17 + } + ] + ] + }, + { + "i": 170, + "name": "bevy_ui_render", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_ui_debug", + "default" + ], + "start": 474.91, + "duration": 97.03, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 16.23 + } + ], + [ + "codegen", + { + "start": 16.23, + "end": 97.03 + } + ] + ] + }, + { + "i": 63, + "name": "bevy_console", + "version": "0.18.0", + "mode": "todo", + "target": "", + "features": [], + "start": 484.71, + "duration": 31.31, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 3.04 + } + ], + [ + "codegen", + { + "start": 3.04, + "end": 31.31 + } + ] + ] + }, + { + "i": 137, + "name": "bevy_post_process", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "webgl" + ], + "start": 489.79, + "duration": 106.7, + "unblocked_units": [ + 138 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 25.64 + } + ], + [ + "codegen", + { + "start": 25.64, + "end": 106.7 + } + ] + ] + }, + { + "i": 172, + "name": "bevy_ui_widgets", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "default" + ], + "start": 501.78, + "duration": 93.15, + "unblocked_units": [ + 173 + ], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 10.44 + } + ], + [ + "codegen", + { + "start": 10.44, + "end": 93.15 + } + ] + ] + }, + { + "i": 391, + "name": "manifest-dir-macros", + "version": "0.1.18", + "mode": "todo", + "target": "", + "features": [], + "start": 503.2, + "duration": 1.18, + "unblocked_units": [ + 157 + ], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 533, + "name": "send_wrapper", + "version": "0.6.0", + "mode": "todo", + "target": "", + "features": [], + "start": 504.72, + "duration": 0.23, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 0.0 + } + ], + [ + "codegen", + { + "start": 0.0, + "end": 0.23 + } + ] + ] + }, + { + "i": 157, + "name": "bevy_system_reflection", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_system_reflection \"lib\" (test)", + "features": [], + "start": 505.19, + "duration": 29.29, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 169, + "name": "bevy_ui_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_ui_bms_bindings \"lib\" (test)", + "features": [], + "start": 511.47, + "duration": 9.63, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 148, + "name": "bevy_scene_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_scene_bms_bindings \"lib\" (test)", + "features": [], + "start": 516.49, + "duration": 1.7, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 83, + "name": "bevy_gltf_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_gltf_bms_bindings \"lib\" (test)", + "features": [], + "start": 518.57, + "duration": 4.97, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 397, + "name": "mdbook_lad_preprocessor", + "version": "0.20.0", + "mode": "todo", + "target": " mdbook-lad-preprocessor \"bin\" (test)", + "features": [], + "start": 521.6, + "duration": 2.08, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 145, + "name": "bevy_render_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_render_bms_bindings \"lib\" (test)", + "features": [], + "start": 522.84, + "duration": 4.35, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 66, + "name": "bevy_core_pipeline_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_core_pipeline_bms_bindings \"lib\" (test)", + "features": [], + "start": 523.68, + "duration": 4.62, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 55, + "name": "bevy_asset_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_asset_bms_bindings \"lib\" (test)", + "features": [], + "start": 523.88, + "duration": 1.83, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 129, + "name": "bevy_mod_scripting_test_scenario_syntax", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_mod_scripting_test_scenario_syntax \"bin\" (test)", + "features": [], + "start": 525.44, + "duration": 0.74, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 395, + "name": "mdbook_lad_preprocessor", + "version": "0.20.0", + "mode": "todo", + "target": " mdbook_lad_preprocessor \"lib\" (test)", + "features": [], + "start": 525.83, + "duration": 7.48, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 113, + "name": "bevy_mod_scripting_core", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_mod_scripting_core \"lib\" (test)", + "features": [ + "default" + ], + "start": 526.37, + "duration": 73.15, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 109, + "name": "bevy_mod_scripting_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_mod_scripting_bindings \"lib\" (test)", + "features": [], + "start": 527.34, + "duration": 71.26, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 123, + "name": "bevy_mod_scripting_rhai", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_mod_scripting_rhai \"lib\" (test)", + "features": [], + "start": 528.58, + "duration": 2.87, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 389, + "name": "lua_language_server_lad_backend", + "version": "0.20.0", + "mode": "todo", + "target": " lad-lls \"bin\" (test)", + "features": [], + "start": 531.72, + "duration": 2.17, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 387, + "name": "lua_language_server_lad_backend", + "version": "0.20.0", + "mode": "todo", + "target": " lua_language_server_lad_backend \"lib\" (test)", + "features": [], + "start": 533.55, + "duration": 1.93, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 50, + "name": "bevy_animation_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_animation_bms_bindings \"lib\" (test)", + "features": [], + "start": 534.33, + "duration": 2.56, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 369, + "name": "ladfile_builder", + "version": "0.20.0", + "mode": "todo", + "target": " ladfile_builder \"lib\" (test)", + "features": [ + "default", + "lua_language_server_files", + "lua_language_server_lad_backend" + ], + "start": 534.73, + "duration": 24.91, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 178, + "name": "bevy_world_serialization_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_world_serialization_bms_bindings \"lib\" (test)", + "features": [], + "start": 535.35, + "duration": 3.37, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 93, + "name": "bevy_light_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_light_bms_bindings \"lib\" (test)", + "features": [], + "start": 535.83, + "duration": 3.66, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 135, + "name": "bevy_picking_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_picking_bms_bindings \"lib\" (test)", + "features": [], + "start": 537.13, + "duration": 3.87, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 58, + "name": "bevy_camera_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_camera_bms_bindings \"lib\" (test)", + "features": [], + "start": 538.99, + "duration": 3.91, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 78, + "name": "bevy_gizmos_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_gizmos_bms_bindings \"lib\" (test)", + "features": [], + "start": 539.81, + "duration": 3.55, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 90, + "name": "bevy_input_focus_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_input_focus_bms_bindings \"lib\" (test)", + "features": [], + "start": 541.06, + "duration": 3.7, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 152, + "name": "bevy_sprite_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_sprite_bms_bindings \"lib\" (test)", + "features": [], + "start": 543.36, + "duration": 4.33, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 161, + "name": "bevy_text_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_text_bms_bindings \"lib\" (test)", + "features": [], + "start": 543.52, + "duration": 3.41, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 103, + "name": "bevy_mesh_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_mesh_bms_bindings \"lib\" (test)", + "features": [], + "start": 544.81, + "duration": 3.3, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 97, + "name": "bevy_material_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_material_bms_bindings \"lib\" (test)", + "features": [], + "start": 546.99, + "duration": 2.32, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 121, + "name": "bevy_mod_scripting_lua", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_mod_scripting_lua \"lib\" (test)", + "features": [ + "lua54" + ], + "start": 547.98, + "duration": 6.28, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 85, + "name": "bevy_image_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_image_bms_bindings \"lib\" (test)", + "features": [], + "start": 548.33, + "duration": 2.22, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 87, + "name": "bevy_input_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_input_bms_bindings \"lib\" (test)", + "features": [], + "start": 548.78, + "duration": 2.94, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 163, + "name": "bevy_time_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_time_bms_bindings \"lib\" (test)", + "features": [], + "start": 549.48, + "duration": 2.07, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 117, + "name": "bevy_mod_scripting_display", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_mod_scripting_display \"lib\" (test)", + "features": [], + "start": 550.62, + "duration": 17.68, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 71, + "name": "bevy_ecs_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_ecs_bms_bindings \"lib\" (test)", + "features": [], + "start": 550.77, + "duration": 2.37, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 166, + "name": "bevy_transform_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_transform_bms_bindings \"lib\" (test)", + "features": [], + "start": 551.69, + "duration": 2.41, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 111, + "name": "bevy_mod_scripting_bindings_domain", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_mod_scripting_bindings_domain \"lib\" (test)", + "features": [], + "start": 551.83, + "duration": 1.66, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 367, + "name": "ladfile", + "version": "0.20.0", + "mode": "todo", + "target": " ladfile \"lib\" (test)", + "features": [ + "default", + "testfile", + "visitor" + ], + "start": 553.21, + "duration": 2.48, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 48, + "name": "bevy_a11y_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_a11y_bms_bindings \"lib\" (test)", + "features": [], + "start": 553.53, + "duration": 1.87, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 587, + "name": "test_utils", + "version": "0.1.0", + "mode": "todo", + "target": " test_utils \"lib\" (test)", + "features": [], + "start": 554.12, + "duration": 31.51, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 61, + "name": "bevy_color_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_color_bms_bindings \"lib\" (test)", + "features": [], + "start": 554.51, + "duration": 2.51, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 125, + "name": "bevy_mod_scripting_script", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_mod_scripting_script \"lib\" (test)", + "features": [], + "start": 555.32, + "duration": 11.35, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 53, + "name": "bevy_app_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_app_bms_bindings \"lib\" (test)", + "features": [], + "start": 555.54, + "duration": 1.81, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 141, + "name": "bevy_reflect_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_reflect_bms_bindings \"lib\" (test)", + "features": [], + "start": 555.91, + "duration": 22.01, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 107, + "name": "bevy_mod_scripting_asset", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_mod_scripting_asset \"lib\" (test)", + "features": [], + "start": 557.07, + "duration": 2.95, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 100, + "name": "bevy_math_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_math_bms_bindings \"lib\" (test)", + "features": [], + "start": 557.45, + "duration": 4.75, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 127, + "name": "bevy_mod_scripting_test_scenario_syntax", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_mod_scripting_test_scenario_syntax \"lib\" (test)", + "features": [], + "start": 559.87, + "duration": 15.48, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 130, + "name": "bevy_mod_scripting_world", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_mod_scripting_world \"lib\" (test)", + "features": [], + "start": 560.18, + "duration": 7.02, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 116, + "name": "bevy_mod_scripting_derive", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_mod_scripting_derive \"lib\" (test)", + "features": [], + "start": 560.75, + "duration": 0.93, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 171, + "name": "bevy_ui_render_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_ui_render_bms_bindings \"lib\" (test)", + "features": [], + "start": 586.42, + "duration": 6.86, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 154, + "name": "bevy_sprite_render_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_sprite_render_bms_bindings \"lib\" (test)", + "features": [], + "start": 592.87, + "duration": 5.26, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 173, + "name": "bevy_ui_widgets_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_ui_widgets_bms_bindings \"lib\" (test)", + "features": [], + "start": 595.23, + "duration": 3.87, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 138, + "name": "bevy_post_process_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_post_process_bms_bindings \"lib\" (test)", + "features": [], + "start": 596.52, + "duration": 3.17, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 80, + "name": "bevy_gizmos_render", + "version": "0.19.0", + "mode": "todo", + "target": "", + "features": [ + "bevy_pbr", + "bevy_sprite_render", + "webgl" + ], + "start": 610.77, + "duration": 21.96, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": [ + [ + "frontend", + { + "start": 0.0, + "end": 6.39 + } + ], + [ + "codegen", + { + "start": 6.39, + "end": 21.96 + } + ] + ] + }, + { + "i": 133, + "name": "bevy_pbr_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_pbr_bms_bindings \"lib\" (test)", + "features": [], + "start": 665.53, + "duration": 2.93, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 81, + "name": "bevy_gizmos_render_bms_bindings", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_gizmos_render_bms_bindings \"lib\" (test)", + "features": [], + "start": 665.53, + "duration": 3.42, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 530, + "name": "script_integration_test_harness", + "version": "0.1.0", + "mode": "todo", + "target": " script_integration_test_harness \"lib\" (test)", + "features": [ + "bevy_mod_scripting_lua", + "bevy_mod_scripting_rhai", + "default", + "lua", + "rhai" + ], + "start": 791.79, + "duration": 6.15, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 119, + "name": "bevy_mod_scripting_functions", + "version": "0.20.0", + "mode": "todo", + "target": " bevy_mod_scripting_functions \"lib\" (test)", + "features": [ + "bevy_color", + "bevy_color_bms_bindings", + "bevy_core_pipeline", + "bevy_core_pipeline_bms_bindings", + "bevy_ecs", + "bevy_ecs_bms_bindings", + "bevy_input", + "bevy_input_bms_bindings", + "bevy_math", + "bevy_math_bms_bindings", + "bevy_mod_scripting_lua", + "bevy_mod_scripting_rhai", + "bevy_reflect", + "bevy_reflect_bms_bindings", + "bevy_time", + "bevy_time_bms_bindings", + "bevy_transform", + "bevy_transform_bms_bindings", + "core_functions", + "lua_bindings", + "rhai_bindings" + ], + "start": 791.79, + "duration": 3.51, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + }, + { + "i": 106, + "name": "bevy_mod_scripting", + "version": "0.20.0", + "mode": "todo", + "target": " benchmarks \"bench\" (test)", + "features": [ + "bevy_color_bindings", + "bevy_core_pipeline_bindings", + "bevy_ecs_bindings", + "bevy_input_bindings", + "bevy_math_bindings", + "bevy_mod_scripting_lua", + "bevy_mod_scripting_rhai", + "bevy_reflect_bindings", + "bevy_time_bindings", + "bevy_transform_bindings", + "core_functions", + "ladfile_builder", + "lua", + "lua54", + "lua_language_server_files", + "rhai" + ], + "start": 791.79, + "duration": 10.89, + "unblocked_units": [], + "unblocked_rmeta_units": [], + "sections": null + } +]; +const CONCURRENCY_DATA = [ + { + "t": 0.96, + "active": 16, + "waiting": 0, + "inactive": 704 + }, + { + "t": 1.03, + "active": 16, + "waiting": 2, + "inactive": 702 + }, + { + "t": 1.04, + "active": 16, + "waiting": 7, + "inactive": 697 + }, + { + "t": 1.1199999999999999, + "active": 15, + "waiting": 7, + "inactive": 697 + }, + { + "t": 1.15, + "active": 16, + "waiting": 6, + "inactive": 696 + }, + { + "t": 1.29, + "active": 15, + "waiting": 6, + "inactive": 696 + }, + { + "t": 1.3, + "active": 14, + "waiting": 6, + "inactive": 696 + }, + { + "t": 1.39, + "active": 16, + "waiting": 6, + "inactive": 694 + }, + { + "t": 1.43, + "active": 16, + "waiting": 7, + "inactive": 693 + }, + { + "t": 1.46, + "active": 16, + "waiting": 6, + "inactive": 693 + }, + { + "t": 1.5499999999999998, + "active": 15, + "waiting": 6, + "inactive": 693 + }, + { + "t": 1.63, + "active": 14, + "waiting": 8, + "inactive": 690 + }, + { + "t": 1.69, + "active": 12, + "waiting": 9, + "inactive": 687 + }, + { + "t": 1.7, + "active": 14, + "waiting": 7, + "inactive": 686 + }, + { + "t": 1.71, + "active": 16, + "waiting": 6, + "inactive": 685 + }, + { + "t": 1.72, + "active": 16, + "waiting": 6, + "inactive": 684 + }, + { + "t": 1.75, + "active": 15, + "waiting": 7, + "inactive": 683 + }, + { + "t": 1.76, + "active": 16, + "waiting": 6, + "inactive": 683 + }, + { + "t": 1.7799999999999998, + "active": 15, + "waiting": 10, + "inactive": 679 + }, + { + "t": 1.78, + "active": 16, + "waiting": 10, + "inactive": 678 + }, + { + "t": 1.8399999999999999, + "active": 15, + "waiting": 11, + "inactive": 677 + }, + { + "t": 1.84, + "active": 16, + "waiting": 10, + "inactive": 677 + }, + { + "t": 1.8499999999999999, + "active": 15, + "waiting": 10, + "inactive": 677 + }, + { + "t": 1.8599999999999999, + "active": 15, + "waiting": 11, + "inactive": 676 + }, + { + "t": 1.86, + "active": 16, + "waiting": 11, + "inactive": 675 + }, + { + "t": 1.94, + "active": 16, + "waiting": 11, + "inactive": 674 + }, + { + "t": 2.01, + "active": 15, + "waiting": 12, + "inactive": 673 + }, + { + "t": 2.02, + "active": 16, + "waiting": 11, + "inactive": 673 + }, + { + "t": 2.06, + "active": 16, + "waiting": 11, + "inactive": 672 + }, + { + "t": 2.15, + "active": 15, + "waiting": 11, + "inactive": 672 + }, + { + "t": 2.16, + "active": 16, + "waiting": 11, + "inactive": 671 + }, + { + "t": 2.1799999999999997, + "active": 14, + "waiting": 13, + "inactive": 669 + }, + { + "t": 2.18, + "active": 15, + "waiting": 12, + "inactive": 669 + }, + { + "t": 2.19, + "active": 16, + "waiting": 11, + "inactive": 669 + }, + { + "t": 2.25, + "active": 15, + "waiting": 11, + "inactive": 669 + }, + { + "t": 2.26, + "active": 16, + "waiting": 11, + "inactive": 668 + }, + { + "t": 2.37, + "active": 15, + "waiting": 11, + "inactive": 668 + }, + { + "t": 2.39, + "active": 16, + "waiting": 11, + "inactive": 667 + }, + { + "t": 2.45, + "active": 15, + "waiting": 12, + "inactive": 666 + }, + { + "t": 2.46, + "active": 16, + "waiting": 11, + "inactive": 666 + }, + { + "t": 2.56, + "active": 16, + "waiting": 13, + "inactive": 664 + }, + { + "t": 2.5999999999999996, + "active": 15, + "waiting": 13, + "inactive": 664 + }, + { + "t": 2.62, + "active": 13, + "waiting": 13, + "inactive": 664 + }, + { + "t": 2.66, + "active": 15, + "waiting": 13, + "inactive": 662 + }, + { + "t": 2.7399999999999998, + "active": 15, + "waiting": 14, + "inactive": 661 + }, + { + "t": 2.74, + "active": 15, + "waiting": 14, + "inactive": 660 + }, + { + "t": 2.88, + "active": 14, + "waiting": 14, + "inactive": 660 + }, + { + "t": 2.89, + "active": 15, + "waiting": 13, + "inactive": 660 + }, + { + "t": 2.94, + "active": 16, + "waiting": 13, + "inactive": 659 + }, + { + "t": 2.99, + "active": 16, + "waiting": 14, + "inactive": 658 + }, + { + "t": 3.08, + "active": 16, + "waiting": 15, + "inactive": 657 + }, + { + "t": 3.0999999999999996, + "active": 15, + "waiting": 15, + "inactive": 657 + }, + { + "t": 3.18, + "active": 16, + "waiting": 14, + "inactive": 657 + }, + { + "t": 3.26, + "active": 15, + "waiting": 14, + "inactive": 657 + }, + { + "t": 3.29, + "active": 15, + "waiting": 15, + "inactive": 656 + }, + { + "t": 3.3499999999999996, + "active": 14, + "waiting": 15, + "inactive": 656 + }, + { + "t": 3.36, + "active": 15, + "waiting": 14, + "inactive": 656 + }, + { + "t": 3.3600000000000003, + "active": 14, + "waiting": 15, + "inactive": 655 + }, + { + "t": 3.4, + "active": 16, + "waiting": 13, + "inactive": 655 + }, + { + "t": 3.4000000000000004, + "active": 15, + "waiting": 13, + "inactive": 655 + }, + { + "t": 3.43, + "active": 15, + "waiting": 17, + "inactive": 651 + }, + { + "t": 3.46, + "active": 16, + "waiting": 17, + "inactive": 650 + }, + { + "t": 3.4699999999999998, + "active": 15, + "waiting": 18, + "inactive": 649 + }, + { + "t": 3.52, + "active": 16, + "waiting": 17, + "inactive": 649 + }, + { + "t": 3.7700000000000005, + "active": 15, + "waiting": 17, + "inactive": 649 + }, + { + "t": 3.91, + "active": 16, + "waiting": 17, + "inactive": 648 + }, + { + "t": 3.96, + "active": 16, + "waiting": 18, + "inactive": 647 + }, + { + "t": 4.0, + "active": 16, + "waiting": 19, + "inactive": 646 + }, + { + "t": 4.03, + "active": 15, + "waiting": 19, + "inactive": 646 + }, + { + "t": 4.15, + "active": 15, + "waiting": 20, + "inactive": 645 + }, + { + "t": 4.24, + "active": 14, + "waiting": 19, + "inactive": 645 + }, + { + "t": 4.25, + "active": 13, + "waiting": 19, + "inactive": 645 + }, + { + "t": 4.32, + "active": 13, + "waiting": 19, + "inactive": 643 + }, + { + "t": 4.4, + "active": 12, + "waiting": 19, + "inactive": 643 + }, + { + "t": 4.41, + "active": 14, + "waiting": 19, + "inactive": 641 + }, + { + "t": 4.48, + "active": 16, + "waiting": 19, + "inactive": 639 + }, + { + "t": 4.65, + "active": 15, + "waiting": 19, + "inactive": 639 + }, + { + "t": 4.84, + "active": 15, + "waiting": 22, + "inactive": 636 + }, + { + "t": 4.85, + "active": 15, + "waiting": 21, + "inactive": 636 + }, + { + "t": 4.8500000000000005, + "active": 15, + "waiting": 22, + "inactive": 635 + }, + { + "t": 4.9, + "active": 14, + "waiting": 22, + "inactive": 635 + }, + { + "t": 4.97, + "active": 16, + "waiting": 20, + "inactive": 635 + }, + { + "t": 4.970000000000001, + "active": 14, + "waiting": 20, + "inactive": 635 + }, + { + "t": 4.98, + "active": 13, + "waiting": 20, + "inactive": 635 + }, + { + "t": 5.03, + "active": 13, + "waiting": 18, + "inactive": 635 + }, + { + "t": 5.08, + "active": 15, + "waiting": 21, + "inactive": 630 + }, + { + "t": 5.13, + "active": 16, + "waiting": 21, + "inactive": 629 + }, + { + "t": 5.2, + "active": 15, + "waiting": 21, + "inactive": 629 + }, + { + "t": 5.21, + "active": 14, + "waiting": 21, + "inactive": 629 + }, + { + "t": 5.22, + "active": 13, + "waiting": 21, + "inactive": 629 + }, + { + "t": 5.220000000000001, + "active": 12, + "waiting": 22, + "inactive": 628 + }, + { + "t": 5.28, + "active": 15, + "waiting": 20, + "inactive": 627 + }, + { + "t": 5.31, + "active": 16, + "waiting": 20, + "inactive": 626 + }, + { + "t": 5.42, + "active": 15, + "waiting": 20, + "inactive": 626 + }, + { + "t": 5.46, + "active": 14, + "waiting": 21, + "inactive": 625 + }, + { + "t": 5.6, + "active": 15, + "waiting": 21, + "inactive": 623 + }, + { + "t": 5.71, + "active": 16, + "waiting": 21, + "inactive": 622 + }, + { + "t": 5.73, + "active": 15, + "waiting": 21, + "inactive": 622 + }, + { + "t": 5.76, + "active": 13, + "waiting": 21, + "inactive": 622 + }, + { + "t": 5.81, + "active": 15, + "waiting": 20, + "inactive": 621 + }, + { + "t": 5.949999999999999, + "active": 14, + "waiting": 21, + "inactive": 620 + }, + { + "t": 5.95, + "active": 13, + "waiting": 22, + "inactive": 618 + }, + { + "t": 6.21, + "active": 15, + "waiting": 22, + "inactive": 615 + }, + { + "t": 6.27, + "active": 14, + "waiting": 22, + "inactive": 615 + }, + { + "t": 6.28, + "active": 13, + "waiting": 22, + "inactive": 615 + }, + { + "t": 6.34, + "active": 13, + "waiting": 21, + "inactive": 615 + }, + { + "t": 6.56, + "active": 13, + "waiting": 21, + "inactive": 612 + }, + { + "t": 6.66, + "active": 15, + "waiting": 19, + "inactive": 612 + }, + { + "t": 6.699999999999999, + "active": 14, + "waiting": 19, + "inactive": 612 + }, + { + "t": 6.7, + "active": 15, + "waiting": 18, + "inactive": 612 + }, + { + "t": 6.74, + "active": 14, + "waiting": 18, + "inactive": 612 + }, + { + "t": 6.75, + "active": 15, + "waiting": 18, + "inactive": 611 + }, + { + "t": 6.8, + "active": 16, + "waiting": 18, + "inactive": 610 + }, + { + "t": 6.83, + "active": 15, + "waiting": 18, + "inactive": 610 + }, + { + "t": 6.9799999999999995, + "active": 15, + "waiting": 19, + "inactive": 609 + }, + { + "t": 6.98, + "active": 16, + "waiting": 19, + "inactive": 608 + }, + { + "t": 7.1000000000000005, + "active": 15, + "waiting": 20, + "inactive": 607 + }, + { + "t": 7.27, + "active": 14, + "waiting": 20, + "inactive": 607 + }, + { + "t": 7.28, + "active": 15, + "waiting": 19, + "inactive": 607 + }, + { + "t": 7.5, + "active": 12, + "waiting": 25, + "inactive": 601 + }, + { + "t": 7.66, + "active": 15, + "waiting": 22, + "inactive": 601 + }, + { + "t": 8.25, + "active": 16, + "waiting": 29, + "inactive": 593 + }, + { + "t": 8.26, + "active": 14, + "waiting": 32, + "inactive": 590 + }, + { + "t": 8.42, + "active": 15, + "waiting": 31, + "inactive": 590 + }, + { + "t": 9.09, + "active": 15, + "waiting": 30, + "inactive": 590 + }, + { + "t": 9.31, + "active": 13, + "waiting": 32, + "inactive": 588 + }, + { + "t": 9.42, + "active": 15, + "waiting": 30, + "inactive": 588 + }, + { + "t": 9.6, + "active": 16, + "waiting": 30, + "inactive": 587 + }, + { + "t": 9.69, + "active": 15, + "waiting": 30, + "inactive": 587 + }, + { + "t": 9.72, + "active": 16, + "waiting": 30, + "inactive": 586 + }, + { + "t": 10.07, + "active": 15, + "waiting": 30, + "inactive": 586 + }, + { + "t": 10.33, + "active": 14, + "waiting": 32, + "inactive": 583 + }, + { + "t": 10.72, + "active": 13, + "waiting": 32, + "inactive": 583 + }, + { + "t": 10.73, + "active": 10, + "waiting": 31, + "inactive": 583 + }, + { + "t": 10.75, + "active": 12, + "waiting": 31, + "inactive": 581 + }, + { + "t": 10.87, + "active": 16, + "waiting": 30, + "inactive": 578 + }, + { + "t": 10.96, + "active": 15, + "waiting": 30, + "inactive": 578 + }, + { + "t": 11.01, + "active": 14, + "waiting": 30, + "inactive": 578 + }, + { + "t": 11.02, + "active": 16, + "waiting": 29, + "inactive": 577 + }, + { + "t": 11.19, + "active": 16, + "waiting": 30, + "inactive": 576 + }, + { + "t": 11.28, + "active": 15, + "waiting": 30, + "inactive": 576 + }, + { + "t": 11.39, + "active": 16, + "waiting": 29, + "inactive": 576 + }, + { + "t": 11.44, + "active": 16, + "waiting": 30, + "inactive": 575 + }, + { + "t": 11.52, + "active": 15, + "waiting": 30, + "inactive": 575 + }, + { + "t": 11.55, + "active": 14, + "waiting": 30, + "inactive": 575 + }, + { + "t": 11.77, + "active": 15, + "waiting": 29, + "inactive": 574 + }, + { + "t": 12.1, + "active": 14, + "waiting": 30, + "inactive": 572 + }, + { + "t": 12.21, + "active": 16, + "waiting": 30, + "inactive": 570 + }, + { + "t": 12.23, + "active": 15, + "waiting": 30, + "inactive": 570 + }, + { + "t": 12.42, + "active": 15, + "waiting": 29, + "inactive": 570 + }, + { + "t": 12.43, + "active": 14, + "waiting": 29, + "inactive": 570 + }, + { + "t": 12.430000000000001, + "active": 13, + "waiting": 29, + "inactive": 570 + }, + { + "t": 12.44, + "active": 10, + "waiting": 32, + "inactive": 567 + }, + { + "t": 12.67, + "active": 13, + "waiting": 33, + "inactive": 561 + }, + { + "t": 12.7, + "active": 16, + "waiting": 31, + "inactive": 560 + }, + { + "t": 12.799999999999999, + "active": 15, + "waiting": 32, + "inactive": 559 + }, + { + "t": 12.8, + "active": 14, + "waiting": 32, + "inactive": 559 + }, + { + "t": 12.85, + "active": 15, + "waiting": 31, + "inactive": 559 + }, + { + "t": 12.86, + "active": 16, + "waiting": 30, + "inactive": 559 + }, + { + "t": 12.88, + "active": 15, + "waiting": 30, + "inactive": 559 + }, + { + "t": 13.02, + "active": 16, + "waiting": 29, + "inactive": 559 + }, + { + "t": 13.04, + "active": 14, + "waiting": 30, + "inactive": 558 + }, + { + "t": 13.14, + "active": 15, + "waiting": 29, + "inactive": 558 + }, + { + "t": 13.22, + "active": 16, + "waiting": 28, + "inactive": 558 + }, + { + "t": 13.35, + "active": 15, + "waiting": 29, + "inactive": 557 + }, + { + "t": 13.52, + "active": 14, + "waiting": 29, + "inactive": 557 + }, + { + "t": 13.54, + "active": 13, + "waiting": 28, + "inactive": 557 + }, + { + "t": 13.59, + "active": 16, + "waiting": 27, + "inactive": 555 + }, + { + "t": 13.69, + "active": 15, + "waiting": 27, + "inactive": 555 + }, + { + "t": 13.700000000000001, + "active": 14, + "waiting": 27, + "inactive": 555 + }, + { + "t": 13.709999999999999, + "active": 14, + "waiting": 28, + "inactive": 554 + }, + { + "t": 13.8, + "active": 16, + "waiting": 26, + "inactive": 554 + }, + { + "t": 13.89, + "active": 15, + "waiting": 26, + "inactive": 554 + }, + { + "t": 13.92, + "active": 13, + "waiting": 26, + "inactive": 554 + }, + { + "t": 13.98, + "active": 13, + "waiting": 27, + "inactive": 553 + }, + { + "t": 13.99, + "active": 14, + "waiting": 27, + "inactive": 552 + }, + { + "t": 14.09, + "active": 16, + "waiting": 26, + "inactive": 551 + }, + { + "t": 14.139999999999999, + "active": 15, + "waiting": 27, + "inactive": 550 + }, + { + "t": 14.14, + "active": 16, + "waiting": 27, + "inactive": 549 + }, + { + "t": 14.18, + "active": 15, + "waiting": 27, + "inactive": 549 + }, + { + "t": 14.28, + "active": 15, + "waiting": 30, + "inactive": 546 + }, + { + "t": 14.29, + "active": 16, + "waiting": 30, + "inactive": 545 + }, + { + "t": 14.49, + "active": 15, + "waiting": 30, + "inactive": 545 + }, + { + "t": 14.530000000000001, + "active": 14, + "waiting": 32, + "inactive": 543 + }, + { + "t": 14.549999999999999, + "active": 13, + "waiting": 32, + "inactive": 543 + }, + { + "t": 14.59, + "active": 15, + "waiting": 30, + "inactive": 543 + }, + { + "t": 14.65, + "active": 15, + "waiting": 29, + "inactive": 543 + }, + { + "t": 14.66, + "active": 14, + "waiting": 30, + "inactive": 542 + }, + { + "t": 14.72, + "active": 16, + "waiting": 28, + "inactive": 542 + }, + { + "t": 14.99, + "active": 15, + "waiting": 29, + "inactive": 541 + }, + { + "t": 15.18, + "active": 14, + "waiting": 29, + "inactive": 541 + }, + { + "t": 15.19, + "active": 15, + "waiting": 28, + "inactive": 541 + }, + { + "t": 15.4, + "active": 16, + "waiting": 28, + "inactive": 540 + }, + { + "t": 15.63, + "active": 15, + "waiting": 28, + "inactive": 540 + }, + { + "t": 15.85, + "active": 16, + "waiting": 27, + "inactive": 540 + }, + { + "t": 15.860000000000001, + "active": 15, + "waiting": 28, + "inactive": 539 + }, + { + "t": 16.03, + "active": 13, + "waiting": 27, + "inactive": 539 + }, + { + "t": 16.19, + "active": 15, + "waiting": 28, + "inactive": 536 + }, + { + "t": 16.33, + "active": 16, + "waiting": 28, + "inactive": 535 + }, + { + "t": 16.39, + "active": 16, + "waiting": 29, + "inactive": 534 + }, + { + "t": 16.419999999999998, + "active": 15, + "waiting": 29, + "inactive": 534 + }, + { + "t": 16.45, + "active": 14, + "waiting": 29, + "inactive": 534 + }, + { + "t": 16.49, + "active": 15, + "waiting": 28, + "inactive": 534 + }, + { + "t": 16.73, + "active": 16, + "waiting": 32, + "inactive": 529 + }, + { + "t": 16.74, + "active": 15, + "waiting": 32, + "inactive": 529 + }, + { + "t": 16.869999999999997, + "active": 14, + "waiting": 33, + "inactive": 528 + }, + { + "t": 16.95, + "active": 16, + "waiting": 31, + "inactive": 528 + }, + { + "t": 17.009999999999998, + "active": 15, + "waiting": 32, + "inactive": 527 + }, + { + "t": 17.02, + "active": 16, + "waiting": 31, + "inactive": 527 + }, + { + "t": 17.040000000000003, + "active": 15, + "waiting": 31, + "inactive": 527 + }, + { + "t": 17.07, + "active": 16, + "waiting": 31, + "inactive": 526 + }, + { + "t": 17.200000000000003, + "active": 15, + "waiting": 32, + "inactive": 525 + }, + { + "t": 17.25, + "active": 14, + "waiting": 32, + "inactive": 525 + }, + { + "t": 17.26, + "active": 14, + "waiting": 31, + "inactive": 525 + }, + { + "t": 17.29, + "active": 15, + "waiting": 30, + "inactive": 525 + }, + { + "t": 17.36, + "active": 16, + "waiting": 30, + "inactive": 524 + }, + { + "t": 17.47, + "active": 15, + "waiting": 30, + "inactive": 524 + }, + { + "t": 17.52, + "active": 16, + "waiting": 30, + "inactive": 523 + }, + { + "t": 17.520000000000003, + "active": 15, + "waiting": 30, + "inactive": 523 + }, + { + "t": 17.53, + "active": 16, + "waiting": 30, + "inactive": 522 + }, + { + "t": 17.58, + "active": 15, + "waiting": 30, + "inactive": 522 + }, + { + "t": 17.59, + "active": 16, + "waiting": 30, + "inactive": 521 + }, + { + "t": 17.68, + "active": 15, + "waiting": 31, + "inactive": 520 + }, + { + "t": 17.849999999999998, + "active": 15, + "waiting": 32, + "inactive": 519 + }, + { + "t": 17.85, + "active": 16, + "waiting": 32, + "inactive": 518 + }, + { + "t": 18.07, + "active": 15, + "waiting": 32, + "inactive": 518 + }, + { + "t": 18.18, + "active": 16, + "waiting": 31, + "inactive": 518 + }, + { + "t": 18.3, + "active": 15, + "waiting": 31, + "inactive": 518 + }, + { + "t": 18.35, + "active": 16, + "waiting": 30, + "inactive": 518 + }, + { + "t": 18.55, + "active": 15, + "waiting": 30, + "inactive": 518 + }, + { + "t": 18.63, + "active": 16, + "waiting": 30, + "inactive": 517 + }, + { + "t": 18.939999999999998, + "active": 16, + "waiting": 31, + "inactive": 516 + }, + { + "t": 19.27, + "active": 15, + "waiting": 31, + "inactive": 516 + }, + { + "t": 19.270000000000003, + "active": 14, + "waiting": 32, + "inactive": 515 + }, + { + "t": 19.33, + "active": 15, + "waiting": 31, + "inactive": 515 + }, + { + "t": 19.62, + "active": 16, + "waiting": 33, + "inactive": 512 + }, + { + "t": 19.72, + "active": 15, + "waiting": 62, + "inactive": 483 + }, + { + "t": 19.88, + "active": 14, + "waiting": 62, + "inactive": 483 + }, + { + "t": 19.89, + "active": 13, + "waiting": 63, + "inactive": 482 + }, + { + "t": 19.95, + "active": 15, + "waiting": 61, + "inactive": 482 + }, + { + "t": 20.11, + "active": 16, + "waiting": 59, + "inactive": 482 + }, + { + "t": 20.220000000000002, + "active": 15, + "waiting": 59, + "inactive": 482 + }, + { + "t": 20.34, + "active": 15, + "waiting": 58, + "inactive": 482 + }, + { + "t": 20.57, + "active": 14, + "waiting": 58, + "inactive": 482 + }, + { + "t": 20.59, + "active": 15, + "waiting": 57, + "inactive": 482 + }, + { + "t": 20.9, + "active": 16, + "waiting": 56, + "inactive": 482 + }, + { + "t": 20.97, + "active": 15, + "waiting": 56, + "inactive": 482 + }, + { + "t": 21.32, + "active": 13, + "waiting": 56, + "inactive": 482 + }, + { + "t": 21.33, + "active": 13, + "waiting": 55, + "inactive": 482 + }, + { + "t": 21.38, + "active": 16, + "waiting": 52, + "inactive": 482 + }, + { + "t": 21.779999999999998, + "active": 15, + "waiting": 52, + "inactive": 482 + }, + { + "t": 21.96, + "active": 16, + "waiting": 51, + "inactive": 482 + }, + { + "t": 22.549999999999997, + "active": 15, + "waiting": 51, + "inactive": 482 + }, + { + "t": 23.08, + "active": 16, + "waiting": 50, + "inactive": 482 + }, + { + "t": 23.46, + "active": 15, + "waiting": 50, + "inactive": 482 + }, + { + "t": 23.48, + "active": 16, + "waiting": 48, + "inactive": 482 + }, + { + "t": 23.57, + "active": 15, + "waiting": 48, + "inactive": 482 + }, + { + "t": 23.59, + "active": 14, + "waiting": 49, + "inactive": 481 + }, + { + "t": 23.68, + "active": 15, + "waiting": 48, + "inactive": 481 + }, + { + "t": 23.96, + "active": 15, + "waiting": 47, + "inactive": 481 + }, + { + "t": 24.1, + "active": 14, + "waiting": 48, + "inactive": 480 + }, + { + "t": 24.16, + "active": 14, + "waiting": 48, + "inactive": 479 + }, + { + "t": 24.45, + "active": 16, + "waiting": 46, + "inactive": 479 + }, + { + "t": 24.82, + "active": 15, + "waiting": 47, + "inactive": 478 + }, + { + "t": 25.05, + "active": 15, + "waiting": 48, + "inactive": 477 + }, + { + "t": 25.060000000000002, + "active": 14, + "waiting": 52, + "inactive": 473 + }, + { + "t": 25.91, + "active": 14, + "waiting": 50, + "inactive": 473 + }, + { + "t": 26.23, + "active": 15, + "waiting": 52, + "inactive": 470 + }, + { + "t": 26.37, + "active": 14, + "waiting": 53, + "inactive": 469 + }, + { + "t": 26.4, + "active": 14, + "waiting": 52, + "inactive": 469 + }, + { + "t": 26.41, + "active": 15, + "waiting": 51, + "inactive": 469 + }, + { + "t": 26.42, + "active": 16, + "waiting": 54, + "inactive": 465 + }, + { + "t": 27.01, + "active": 15, + "waiting": 54, + "inactive": 465 + }, + { + "t": 27.19, + "active": 16, + "waiting": 53, + "inactive": 465 + }, + { + "t": 27.3, + "active": 15, + "waiting": 53, + "inactive": 465 + }, + { + "t": 27.32, + "active": 16, + "waiting": 52, + "inactive": 465 + }, + { + "t": 27.369999999999997, + "active": 14, + "waiting": 53, + "inactive": 464 + }, + { + "t": 27.41, + "active": 15, + "waiting": 52, + "inactive": 464 + }, + { + "t": 27.49, + "active": 16, + "waiting": 51, + "inactive": 464 + }, + { + "t": 27.66, + "active": 16, + "waiting": 54, + "inactive": 461 + }, + { + "t": 27.67, + "active": 16, + "waiting": 55, + "inactive": 460 + }, + { + "t": 27.689999999999998, + "active": 15, + "waiting": 55, + "inactive": 460 + }, + { + "t": 27.82, + "active": 16, + "waiting": 54, + "inactive": 460 + }, + { + "t": 28.06, + "active": 15, + "waiting": 54, + "inactive": 460 + }, + { + "t": 28.060000000000002, + "active": 15, + "waiting": 55, + "inactive": 459 + }, + { + "t": 28.26, + "active": 14, + "waiting": 55, + "inactive": 459 + }, + { + "t": 28.27, + "active": 15, + "waiting": 54, + "inactive": 459 + }, + { + "t": 28.43, + "active": 14, + "waiting": 54, + "inactive": 459 + }, + { + "t": 28.48, + "active": 14, + "waiting": 55, + "inactive": 458 + }, + { + "t": 28.51, + "active": 16, + "waiting": 53, + "inactive": 458 + }, + { + "t": 28.599999999999998, + "active": 15, + "waiting": 53, + "inactive": 458 + }, + { + "t": 28.72, + "active": 14, + "waiting": 54, + "inactive": 457 + }, + { + "t": 28.720000000000002, + "active": 13, + "waiting": 54, + "inactive": 457 + }, + { + "t": 29.27, + "active": 13, + "waiting": 52, + "inactive": 456 + }, + { + "t": 29.28, + "active": 12, + "waiting": 53, + "inactive": 455 + }, + { + "t": 29.439999999999998, + "active": 11, + "waiting": 54, + "inactive": 454 + }, + { + "t": 29.44, + "active": 14, + "waiting": 51, + "inactive": 454 + }, + { + "t": 29.48, + "active": 15, + "waiting": 51, + "inactive": 453 + }, + { + "t": 29.73, + "active": 16, + "waiting": 50, + "inactive": 453 + }, + { + "t": 29.77, + "active": 15, + "waiting": 50, + "inactive": 453 + }, + { + "t": 29.87, + "active": 15, + "waiting": 52, + "inactive": 451 + }, + { + "t": 30.03, + "active": 16, + "waiting": 51, + "inactive": 451 + }, + { + "t": 30.1, + "active": 15, + "waiting": 51, + "inactive": 451 + }, + { + "t": 30.14, + "active": 16, + "waiting": 50, + "inactive": 451 + }, + { + "t": 30.290000000000003, + "active": 16, + "waiting": 51, + "inactive": 450 + }, + { + "t": 30.330000000000002, + "active": 14, + "waiting": 51, + "inactive": 450 + }, + { + "t": 30.44, + "active": 15, + "waiting": 49, + "inactive": 450 + }, + { + "t": 30.59, + "active": 15, + "waiting": 54, + "inactive": 445 + }, + { + "t": 30.919999999999998, + "active": 14, + "waiting": 54, + "inactive": 445 + }, + { + "t": 30.93, + "active": 15, + "waiting": 53, + "inactive": 445 + }, + { + "t": 31.21, + "active": 14, + "waiting": 53, + "inactive": 445 + }, + { + "t": 31.34, + "active": 16, + "waiting": 51, + "inactive": 445 + }, + { + "t": 32.46, + "active": 15, + "waiting": 51, + "inactive": 445 + }, + { + "t": 32.48, + "active": 16, + "waiting": 50, + "inactive": 445 + }, + { + "t": 32.58, + "active": 16, + "waiting": 52, + "inactive": 443 + }, + { + "t": 32.93, + "active": 15, + "waiting": 52, + "inactive": 443 + }, + { + "t": 33.12, + "active": 16, + "waiting": 51, + "inactive": 443 + }, + { + "t": 33.6, + "active": 15, + "waiting": 51, + "inactive": 443 + }, + { + "t": 33.65, + "active": 14, + "waiting": 51, + "inactive": 443 + }, + { + "t": 33.650000000000006, + "active": 14, + "waiting": 52, + "inactive": 442 + }, + { + "t": 33.73, + "active": 16, + "waiting": 50, + "inactive": 442 + }, + { + "t": 33.879999999999995, + "active": 15, + "waiting": 50, + "inactive": 442 + }, + { + "t": 33.910000000000004, + "active": 14, + "waiting": 50, + "inactive": 442 + }, + { + "t": 33.93, + "active": 15, + "waiting": 49, + "inactive": 442 + }, + { + "t": 34.02, + "active": 16, + "waiting": 48, + "inactive": 442 + }, + { + "t": 34.97, + "active": 15, + "waiting": 48, + "inactive": 442 + }, + { + "t": 35.38, + "active": 16, + "waiting": 48, + "inactive": 441 + }, + { + "t": 36.18, + "active": 15, + "waiting": 48, + "inactive": 441 + }, + { + "t": 36.21, + "active": 16, + "waiting": 48, + "inactive": 440 + }, + { + "t": 36.480000000000004, + "active": 15, + "waiting": 53, + "inactive": 435 + }, + { + "t": 36.49, + "active": 16, + "waiting": 52, + "inactive": 435 + }, + { + "t": 37.730000000000004, + "active": 15, + "waiting": 52, + "inactive": 435 + }, + { + "t": 38.08, + "active": 16, + "waiting": 51, + "inactive": 435 + }, + { + "t": 38.28, + "active": 16, + "waiting": 52, + "inactive": 434 + }, + { + "t": 38.95, + "active": 15, + "waiting": 52, + "inactive": 434 + }, + { + "t": 39.26, + "active": 16, + "waiting": 52, + "inactive": 433 + }, + { + "t": 39.529999999999994, + "active": 15, + "waiting": 52, + "inactive": 433 + }, + { + "t": 40.04, + "active": 16, + "waiting": 51, + "inactive": 433 + }, + { + "t": 40.19, + "active": 15, + "waiting": 51, + "inactive": 433 + }, + { + "t": 40.29, + "active": 15, + "waiting": 53, + "inactive": 431 + }, + { + "t": 40.43, + "active": 16, + "waiting": 53, + "inactive": 430 + }, + { + "t": 40.449999999999996, + "active": 15, + "waiting": 53, + "inactive": 430 + }, + { + "t": 40.54, + "active": 16, + "waiting": 52, + "inactive": 430 + }, + { + "t": 40.88, + "active": 16, + "waiting": 53, + "inactive": 429 + }, + { + "t": 41.06, + "active": 15, + "waiting": 54, + "inactive": 428 + }, + { + "t": 41.21, + "active": 16, + "waiting": 53, + "inactive": 428 + }, + { + "t": 41.22, + "active": 15, + "waiting": 53, + "inactive": 428 + }, + { + "t": 41.47, + "active": 14, + "waiting": 53, + "inactive": 428 + }, + { + "t": 41.5, + "active": 15, + "waiting": 52, + "inactive": 428 + }, + { + "t": 41.51, + "active": 16, + "waiting": 51, + "inactive": 428 + }, + { + "t": 41.95, + "active": 15, + "waiting": 51, + "inactive": 428 + }, + { + "t": 41.98, + "active": 16, + "waiting": 51, + "inactive": 427 + }, + { + "t": 42.22, + "active": 15, + "waiting": 51, + "inactive": 427 + }, + { + "t": 42.29, + "active": 14, + "waiting": 51, + "inactive": 427 + }, + { + "t": 42.31, + "active": 15, + "waiting": 51, + "inactive": 426 + }, + { + "t": 42.48, + "active": 16, + "waiting": 50, + "inactive": 426 + }, + { + "t": 42.81, + "active": 15, + "waiting": 50, + "inactive": 426 + }, + { + "t": 43.04, + "active": 16, + "waiting": 50, + "inactive": 425 + }, + { + "t": 43.32, + "active": 15, + "waiting": 50, + "inactive": 425 + }, + { + "t": 43.43, + "active": 14, + "waiting": 50, + "inactive": 425 + }, + { + "t": 43.47, + "active": 16, + "waiting": 50, + "inactive": 423 + }, + { + "t": 43.64, + "active": 16, + "waiting": 52, + "inactive": 421 + }, + { + "t": 43.83, + "active": 15, + "waiting": 52, + "inactive": 421 + }, + { + "t": 43.93, + "active": 14, + "waiting": 54, + "inactive": 419 + }, + { + "t": 43.96, + "active": 15, + "waiting": 53, + "inactive": 419 + }, + { + "t": 44.0, + "active": 15, + "waiting": 52, + "inactive": 419 + }, + { + "t": 44.01, + "active": 16, + "waiting": 51, + "inactive": 419 + }, + { + "t": 44.14, + "active": 15, + "waiting": 51, + "inactive": 419 + }, + { + "t": 44.32, + "active": 15, + "waiting": 52, + "inactive": 417 + }, + { + "t": 44.5, + "active": 15, + "waiting": 51, + "inactive": 417 + }, + { + "t": 44.57, + "active": 16, + "waiting": 51, + "inactive": 416 + }, + { + "t": 44.59, + "active": 15, + "waiting": 52, + "inactive": 415 + }, + { + "t": 44.62, + "active": 14, + "waiting": 52, + "inactive": 415 + }, + { + "t": 44.65, + "active": 15, + "waiting": 51, + "inactive": 415 + }, + { + "t": 44.68, + "active": 16, + "waiting": 50, + "inactive": 415 + }, + { + "t": 44.92, + "active": 15, + "waiting": 51, + "inactive": 414 + }, + { + "t": 45.0, + "active": 16, + "waiting": 50, + "inactive": 414 + }, + { + "t": 45.09, + "active": 15, + "waiting": 50, + "inactive": 414 + }, + { + "t": 45.11, + "active": 16, + "waiting": 49, + "inactive": 414 + }, + { + "t": 45.17, + "active": 15, + "waiting": 50, + "inactive": 413 + }, + { + "t": 45.2, + "active": 16, + "waiting": 49, + "inactive": 413 + }, + { + "t": 45.34, + "active": 15, + "waiting": 49, + "inactive": 413 + }, + { + "t": 45.36, + "active": 16, + "waiting": 49, + "inactive": 412 + }, + { + "t": 45.51, + "active": 16, + "waiting": 50, + "inactive": 411 + }, + { + "t": 45.550000000000004, + "active": 16, + "waiting": 51, + "inactive": 410 + }, + { + "t": 45.67, + "active": 15, + "waiting": 51, + "inactive": 410 + }, + { + "t": 45.71, + "active": 16, + "waiting": 50, + "inactive": 410 + }, + { + "t": 45.72, + "active": 16, + "waiting": 51, + "inactive": 409 + }, + { + "t": 46.06, + "active": 15, + "waiting": 51, + "inactive": 409 + }, + { + "t": 46.35, + "active": 16, + "waiting": 50, + "inactive": 409 + }, + { + "t": 46.480000000000004, + "active": 15, + "waiting": 50, + "inactive": 409 + }, + { + "t": 46.94, + "active": 16, + "waiting": 50, + "inactive": 408 + }, + { + "t": 46.989999999999995, + "active": 15, + "waiting": 50, + "inactive": 408 + }, + { + "t": 47.0, + "active": 16, + "waiting": 49, + "inactive": 408 + }, + { + "t": 47.14, + "active": 16, + "waiting": 50, + "inactive": 407 + }, + { + "t": 47.27, + "active": 15, + "waiting": 51, + "inactive": 406 + }, + { + "t": 47.29, + "active": 16, + "waiting": 50, + "inactive": 406 + }, + { + "t": 47.599999999999994, + "active": 15, + "waiting": 50, + "inactive": 406 + }, + { + "t": 47.6, + "active": 16, + "waiting": 49, + "inactive": 406 + }, + { + "t": 47.629999999999995, + "active": 15, + "waiting": 49, + "inactive": 406 + }, + { + "t": 47.68, + "active": 16, + "waiting": 48, + "inactive": 406 + }, + { + "t": 47.87, + "active": 16, + "waiting": 49, + "inactive": 405 + }, + { + "t": 48.01, + "active": 15, + "waiting": 49, + "inactive": 405 + }, + { + "t": 48.18, + "active": 16, + "waiting": 48, + "inactive": 405 + }, + { + "t": 48.59, + "active": 15, + "waiting": 48, + "inactive": 405 + }, + { + "t": 48.6, + "active": 14, + "waiting": 48, + "inactive": 405 + }, + { + "t": 48.61, + "active": 13, + "waiting": 49, + "inactive": 404 + }, + { + "t": 48.64, + "active": 14, + "waiting": 48, + "inactive": 404 + }, + { + "t": 48.67, + "active": 16, + "waiting": 46, + "inactive": 404 + }, + { + "t": 48.980000000000004, + "active": 16, + "waiting": 47, + "inactive": 403 + }, + { + "t": 49.09, + "active": 15, + "waiting": 47, + "inactive": 403 + }, + { + "t": 49.11, + "active": 16, + "waiting": 47, + "inactive": 402 + }, + { + "t": 49.26, + "active": 15, + "waiting": 47, + "inactive": 402 + }, + { + "t": 49.31, + "active": 16, + "waiting": 47, + "inactive": 401 + }, + { + "t": 49.45, + "active": 15, + "waiting": 47, + "inactive": 401 + }, + { + "t": 49.47, + "active": 16, + "waiting": 46, + "inactive": 401 + }, + { + "t": 49.64, + "active": 15, + "waiting": 46, + "inactive": 401 + }, + { + "t": 49.9, + "active": 15, + "waiting": 45, + "inactive": 401 + }, + { + "t": 49.910000000000004, + "active": 15, + "waiting": 47, + "inactive": 399 + }, + { + "t": 49.98, + "active": 14, + "waiting": 47, + "inactive": 399 + }, + { + "t": 50.05, + "active": 16, + "waiting": 45, + "inactive": 399 + }, + { + "t": 50.11, + "active": 15, + "waiting": 46, + "inactive": 398 + }, + { + "t": 50.23, + "active": 16, + "waiting": 45, + "inactive": 398 + }, + { + "t": 50.230000000000004, + "active": 15, + "waiting": 45, + "inactive": 398 + }, + { + "t": 50.33, + "active": 15, + "waiting": 44, + "inactive": 398 + }, + { + "t": 50.349999999999994, + "active": 14, + "waiting": 45, + "inactive": 397 + }, + { + "t": 50.36, + "active": 15, + "waiting": 44, + "inactive": 397 + }, + { + "t": 50.38, + "active": 16, + "waiting": 44, + "inactive": 396 + }, + { + "t": 50.6, + "active": 16, + "waiting": 45, + "inactive": 395 + }, + { + "t": 50.71, + "active": 15, + "waiting": 45, + "inactive": 395 + }, + { + "t": 50.81, + "active": 16, + "waiting": 45, + "inactive": 394 + }, + { + "t": 50.82, + "active": 15, + "waiting": 45, + "inactive": 394 + }, + { + "t": 50.86, + "active": 16, + "waiting": 44, + "inactive": 394 + }, + { + "t": 51.13, + "active": 15, + "waiting": 44, + "inactive": 394 + }, + { + "t": 51.16, + "active": 16, + "waiting": 43, + "inactive": 394 + }, + { + "t": 51.2, + "active": 15, + "waiting": 43, + "inactive": 394 + }, + { + "t": 51.28, + "active": 14, + "waiting": 43, + "inactive": 394 + }, + { + "t": 51.29, + "active": 15, + "waiting": 43, + "inactive": 393 + }, + { + "t": 51.43, + "active": 15, + "waiting": 44, + "inactive": 391 + }, + { + "t": 51.58, + "active": 15, + "waiting": 44, + "inactive": 390 + }, + { + "t": 51.8, + "active": 16, + "waiting": 44, + "inactive": 389 + }, + { + "t": 52.12, + "active": 15, + "waiting": 45, + "inactive": 388 + }, + { + "t": 52.339999999999996, + "active": 15, + "waiting": 46, + "inactive": 387 + }, + { + "t": 52.34, + "active": 16, + "waiting": 45, + "inactive": 387 + }, + { + "t": 52.39, + "active": 15, + "waiting": 45, + "inactive": 387 + }, + { + "t": 52.5, + "active": 15, + "waiting": 47, + "inactive": 385 + }, + { + "t": 52.65, + "active": 16, + "waiting": 46, + "inactive": 385 + }, + { + "t": 53.019999999999996, + "active": 15, + "waiting": 46, + "inactive": 385 + }, + { + "t": 53.04, + "active": 14, + "waiting": 46, + "inactive": 385 + }, + { + "t": 53.14, + "active": 15, + "waiting": 45, + "inactive": 384 + }, + { + "t": 53.28, + "active": 16, + "waiting": 44, + "inactive": 384 + }, + { + "t": 53.4, + "active": 15, + "waiting": 45, + "inactive": 383 + }, + { + "t": 53.46, + "active": 16, + "waiting": 44, + "inactive": 383 + }, + { + "t": 53.949999999999996, + "active": 15, + "waiting": 45, + "inactive": 382 + }, + { + "t": 53.99, + "active": 16, + "waiting": 44, + "inactive": 382 + }, + { + "t": 54.1, + "active": 15, + "waiting": 44, + "inactive": 382 + }, + { + "t": 54.12, + "active": 16, + "waiting": 44, + "inactive": 381 + }, + { + "t": 54.52, + "active": 15, + "waiting": 44, + "inactive": 381 + }, + { + "t": 54.56, + "active": 16, + "waiting": 44, + "inactive": 380 + }, + { + "t": 54.59, + "active": 15, + "waiting": 44, + "inactive": 380 + }, + { + "t": 54.61, + "active": 16, + "waiting": 43, + "inactive": 380 + }, + { + "t": 54.67, + "active": 15, + "waiting": 43, + "inactive": 380 + }, + { + "t": 54.839999999999996, + "active": 14, + "waiting": 43, + "inactive": 380 + }, + { + "t": 54.84, + "active": 15, + "waiting": 42, + "inactive": 380 + }, + { + "t": 55.01, + "active": 16, + "waiting": 41, + "inactive": 380 + }, + { + "t": 55.010000000000005, + "active": 15, + "waiting": 41, + "inactive": 380 + }, + { + "t": 55.07, + "active": 16, + "waiting": 41, + "inactive": 379 + }, + { + "t": 55.23, + "active": 16, + "waiting": 43, + "inactive": 377 + }, + { + "t": 55.43, + "active": 15, + "waiting": 43, + "inactive": 377 + }, + { + "t": 55.55, + "active": 13, + "waiting": 43, + "inactive": 377 + }, + { + "t": 55.58, + "active": 14, + "waiting": 42, + "inactive": 377 + }, + { + "t": 55.67, + "active": 16, + "waiting": 41, + "inactive": 376 + }, + { + "t": 57.269999999999996, + "active": 15, + "waiting": 41, + "inactive": 376 + }, + { + "t": 57.37, + "active": 16, + "waiting": 40, + "inactive": 376 + }, + { + "t": 57.38, + "active": 16, + "waiting": 41, + "inactive": 375 + }, + { + "t": 57.56, + "active": 15, + "waiting": 41, + "inactive": 375 + }, + { + "t": 57.68, + "active": 16, + "waiting": 41, + "inactive": 374 + }, + { + "t": 57.83, + "active": 15, + "waiting": 41, + "inactive": 374 + }, + { + "t": 57.92, + "active": 15, + "waiting": 40, + "inactive": 374 + }, + { + "t": 58.04, + "active": 16, + "waiting": 40, + "inactive": 373 + }, + { + "t": 58.65, + "active": 15, + "waiting": 40, + "inactive": 373 + }, + { + "t": 58.73, + "active": 14, + "waiting": 41, + "inactive": 372 + }, + { + "t": 58.74, + "active": 15, + "waiting": 41, + "inactive": 371 + }, + { + "t": 58.86, + "active": 16, + "waiting": 41, + "inactive": 370 + }, + { + "t": 58.92, + "active": 15, + "waiting": 41, + "inactive": 370 + }, + { + "t": 59.0, + "active": 16, + "waiting": 41, + "inactive": 369 + }, + { + "t": 59.07, + "active": 16, + "waiting": 42, + "inactive": 368 + }, + { + "t": 59.19, + "active": 15, + "waiting": 42, + "inactive": 368 + }, + { + "t": 59.2, + "active": 16, + "waiting": 42, + "inactive": 367 + }, + { + "t": 59.39, + "active": 15, + "waiting": 43, + "inactive": 366 + }, + { + "t": 59.4, + "active": 16, + "waiting": 42, + "inactive": 366 + }, + { + "t": 59.58, + "active": 15, + "waiting": 43, + "inactive": 365 + }, + { + "t": 59.71, + "active": 16, + "waiting": 42, + "inactive": 365 + }, + { + "t": 59.81, + "active": 15, + "waiting": 43, + "inactive": 364 + }, + { + "t": 59.97, + "active": 16, + "waiting": 43, + "inactive": 363 + }, + { + "t": 60.1, + "active": 15, + "waiting": 45, + "inactive": 361 + }, + { + "t": 60.14, + "active": 16, + "waiting": 45, + "inactive": 360 + }, + { + "t": 60.18, + "active": 15, + "waiting": 45, + "inactive": 360 + }, + { + "t": 60.24, + "active": 16, + "waiting": 45, + "inactive": 359 + }, + { + "t": 60.33, + "active": 15, + "waiting": 46, + "inactive": 358 + }, + { + "t": 60.45, + "active": 16, + "waiting": 46, + "inactive": 357 + }, + { + "t": 60.620000000000005, + "active": 15, + "waiting": 47, + "inactive": 356 + }, + { + "t": 60.7, + "active": 16, + "waiting": 46, + "inactive": 356 + }, + { + "t": 60.75, + "active": 15, + "waiting": 47, + "inactive": 355 + }, + { + "t": 60.77, + "active": 16, + "waiting": 46, + "inactive": 355 + }, + { + "t": 60.86, + "active": 15, + "waiting": 47, + "inactive": 354 + }, + { + "t": 60.98, + "active": 16, + "waiting": 46, + "inactive": 354 + }, + { + "t": 60.980000000000004, + "active": 15, + "waiting": 46, + "inactive": 354 + }, + { + "t": 61.04, + "active": 15, + "waiting": 46, + "inactive": 353 + }, + { + "t": 61.05, + "active": 16, + "waiting": 45, + "inactive": 353 + }, + { + "t": 61.629999999999995, + "active": 15, + "waiting": 45, + "inactive": 353 + }, + { + "t": 61.67, + "active": 16, + "waiting": 44, + "inactive": 353 + }, + { + "t": 61.96, + "active": 15, + "waiting": 44, + "inactive": 353 + }, + { + "t": 62.03, + "active": 16, + "waiting": 43, + "inactive": 353 + }, + { + "t": 62.04, + "active": 16, + "waiting": 44, + "inactive": 352 + }, + { + "t": 62.16, + "active": 15, + "waiting": 44, + "inactive": 352 + }, + { + "t": 62.22, + "active": 16, + "waiting": 43, + "inactive": 352 + }, + { + "t": 62.260000000000005, + "active": 15, + "waiting": 43, + "inactive": 352 + }, + { + "t": 62.28, + "active": 16, + "waiting": 42, + "inactive": 352 + }, + { + "t": 62.33, + "active": 16, + "waiting": 43, + "inactive": 351 + }, + { + "t": 62.870000000000005, + "active": 15, + "waiting": 43, + "inactive": 351 + }, + { + "t": 62.92, + "active": 16, + "waiting": 42, + "inactive": 351 + }, + { + "t": 63.0, + "active": 16, + "waiting": 43, + "inactive": 350 + }, + { + "t": 63.33, + "active": 16, + "waiting": 45, + "inactive": 348 + }, + { + "t": 64.52, + "active": 15, + "waiting": 45, + "inactive": 348 + }, + { + "t": 64.53, + "active": 16, + "waiting": 44, + "inactive": 348 + }, + { + "t": 66.11, + "active": 15, + "waiting": 44, + "inactive": 348 + }, + { + "t": 66.25, + "active": 14, + "waiting": 44, + "inactive": 348 + }, + { + "t": 66.3, + "active": 15, + "waiting": 43, + "inactive": 348 + }, + { + "t": 66.39, + "active": 16, + "waiting": 43, + "inactive": 347 + }, + { + "t": 66.41, + "active": 16, + "waiting": 44, + "inactive": 346 + }, + { + "t": 66.44, + "active": 16, + "waiting": 45, + "inactive": 345 + }, + { + "t": 66.51, + "active": 16, + "waiting": 46, + "inactive": 344 + }, + { + "t": 66.54, + "active": 15, + "waiting": 46, + "inactive": 344 + }, + { + "t": 66.66, + "active": 14, + "waiting": 45, + "inactive": 344 + }, + { + "t": 66.76, + "active": 16, + "waiting": 46, + "inactive": 341 + }, + { + "t": 66.9, + "active": 16, + "waiting": 47, + "inactive": 340 + }, + { + "t": 66.99000000000001, + "active": 15, + "waiting": 47, + "inactive": 340 + }, + { + "t": 67.11, + "active": 16, + "waiting": 46, + "inactive": 340 + }, + { + "t": 67.6, + "active": 16, + "waiting": 47, + "inactive": 339 + }, + { + "t": 67.98, + "active": 15, + "waiting": 47, + "inactive": 339 + }, + { + "t": 68.04, + "active": 16, + "waiting": 47, + "inactive": 338 + }, + { + "t": 68.05, + "active": 15, + "waiting": 47, + "inactive": 338 + }, + { + "t": 68.33, + "active": 16, + "waiting": 46, + "inactive": 338 + }, + { + "t": 68.67, + "active": 15, + "waiting": 46, + "inactive": 338 + }, + { + "t": 68.87, + "active": 14, + "waiting": 46, + "inactive": 338 + }, + { + "t": 68.94, + "active": 15, + "waiting": 45, + "inactive": 338 + }, + { + "t": 69.08, + "active": 15, + "waiting": 44, + "inactive": 338 + }, + { + "t": 69.22, + "active": 14, + "waiting": 44, + "inactive": 338 + }, + { + "t": 69.52, + "active": 16, + "waiting": 43, + "inactive": 337 + }, + { + "t": 69.7, + "active": 15, + "waiting": 43, + "inactive": 337 + }, + { + "t": 69.77, + "active": 16, + "waiting": 42, + "inactive": 337 + }, + { + "t": 69.94, + "active": 15, + "waiting": 42, + "inactive": 337 + }, + { + "t": 70.08, + "active": 16, + "waiting": 42, + "inactive": 336 + }, + { + "t": 70.1, + "active": 15, + "waiting": 42, + "inactive": 336 + }, + { + "t": 70.19, + "active": 14, + "waiting": 42, + "inactive": 336 + }, + { + "t": 70.2, + "active": 15, + "waiting": 42, + "inactive": 335 + }, + { + "t": 70.26, + "active": 14, + "waiting": 42, + "inactive": 335 + }, + { + "t": 70.33, + "active": 16, + "waiting": 42, + "inactive": 333 + }, + { + "t": 70.39, + "active": 16, + "waiting": 43, + "inactive": 332 + }, + { + "t": 70.42, + "active": 15, + "waiting": 43, + "inactive": 332 + }, + { + "t": 70.45, + "active": 16, + "waiting": 43, + "inactive": 331 + }, + { + "t": 70.5, + "active": 15, + "waiting": 43, + "inactive": 331 + }, + { + "t": 70.72, + "active": 16, + "waiting": 43, + "inactive": 330 + }, + { + "t": 70.73, + "active": 15, + "waiting": 44, + "inactive": 329 + }, + { + "t": 70.92, + "active": 15, + "waiting": 44, + "inactive": 328 + }, + { + "t": 71.16, + "active": 16, + "waiting": 45, + "inactive": 326 + }, + { + "t": 71.6, + "active": 15, + "waiting": 46, + "inactive": 325 + }, + { + "t": 71.75, + "active": 15, + "waiting": 45, + "inactive": 325 + }, + { + "t": 71.85, + "active": 16, + "waiting": 44, + "inactive": 325 + }, + { + "t": 72.2, + "active": 15, + "waiting": 44, + "inactive": 325 + }, + { + "t": 72.36, + "active": 16, + "waiting": 43, + "inactive": 325 + }, + { + "t": 72.84, + "active": 16, + "waiting": 45, + "inactive": 323 + }, + { + "t": 72.88, + "active": 15, + "waiting": 46, + "inactive": 322 + }, + { + "t": 72.94, + "active": 14, + "waiting": 46, + "inactive": 322 + }, + { + "t": 73.19, + "active": 15, + "waiting": 44, + "inactive": 322 + }, + { + "t": 73.41, + "active": 16, + "waiting": 43, + "inactive": 322 + }, + { + "t": 73.52, + "active": 15, + "waiting": 43, + "inactive": 322 + }, + { + "t": 73.73, + "active": 16, + "waiting": 43, + "inactive": 321 + }, + { + "t": 74.19, + "active": 16, + "waiting": 44, + "inactive": 320 + }, + { + "t": 74.53, + "active": 15, + "waiting": 44, + "inactive": 320 + }, + { + "t": 74.67999999999999, + "active": 14, + "waiting": 44, + "inactive": 320 + }, + { + "t": 75.0, + "active": 16, + "waiting": 43, + "inactive": 319 + }, + { + "t": 75.24000000000001, + "active": 15, + "waiting": 43, + "inactive": 319 + }, + { + "t": 75.92999999999999, + "active": 14, + "waiting": 43, + "inactive": 319 + }, + { + "t": 75.93, + "active": 15, + "waiting": 42, + "inactive": 319 + }, + { + "t": 76.14, + "active": 15, + "waiting": 42, + "inactive": 318 + }, + { + "t": 76.15, + "active": 14, + "waiting": 42, + "inactive": 318 + }, + { + "t": 76.23, + "active": 16, + "waiting": 41, + "inactive": 317 + }, + { + "t": 76.27000000000001, + "active": 15, + "waiting": 42, + "inactive": 316 + }, + { + "t": 76.3, + "active": 15, + "waiting": 42, + "inactive": 315 + }, + { + "t": 76.31, + "active": 16, + "waiting": 42, + "inactive": 314 + }, + { + "t": 76.66, + "active": 16, + "waiting": 43, + "inactive": 313 + }, + { + "t": 76.79, + "active": 16, + "waiting": 47, + "inactive": 309 + }, + { + "t": 77.0, + "active": 16, + "waiting": 48, + "inactive": 308 + }, + { + "t": 77.07, + "active": 15, + "waiting": 48, + "inactive": 308 + }, + { + "t": 77.32, + "active": 16, + "waiting": 47, + "inactive": 308 + }, + { + "t": 77.38, + "active": 15, + "waiting": 47, + "inactive": 308 + }, + { + "t": 77.41, + "active": 16, + "waiting": 46, + "inactive": 308 + }, + { + "t": 77.75, + "active": 15, + "waiting": 46, + "inactive": 308 + }, + { + "t": 77.84, + "active": 16, + "waiting": 45, + "inactive": 308 + }, + { + "t": 78.05, + "active": 15, + "waiting": 45, + "inactive": 308 + }, + { + "t": 78.11, + "active": 16, + "waiting": 44, + "inactive": 308 + }, + { + "t": 78.75, + "active": 15, + "waiting": 44, + "inactive": 308 + }, + { + "t": 78.77, + "active": 16, + "waiting": 43, + "inactive": 308 + }, + { + "t": 78.8, + "active": 15, + "waiting": 43, + "inactive": 308 + }, + { + "t": 79.03, + "active": 16, + "waiting": 42, + "inactive": 308 + }, + { + "t": 79.52, + "active": 15, + "waiting": 42, + "inactive": 308 + }, + { + "t": 79.66, + "active": 16, + "waiting": 41, + "inactive": 308 + }, + { + "t": 79.76, + "active": 16, + "waiting": 42, + "inactive": 307 + }, + { + "t": 84.47, + "active": 15, + "waiting": 42, + "inactive": 307 + }, + { + "t": 85.0, + "active": 16, + "waiting": 41, + "inactive": 307 + }, + { + "t": 85.47999999999999, + "active": 15, + "waiting": 42, + "inactive": 306 + }, + { + "t": 85.66, + "active": 16, + "waiting": 41, + "inactive": 306 + }, + { + "t": 86.11999999999999, + "active": 15, + "waiting": 42, + "inactive": 305 + }, + { + "t": 86.56, + "active": 16, + "waiting": 42, + "inactive": 304 + }, + { + "t": 86.82000000000001, + "active": 16, + "waiting": 43, + "inactive": 303 + }, + { + "t": 87.0, + "active": 15, + "waiting": 43, + "inactive": 303 + }, + { + "t": 87.01, + "active": 16, + "waiting": 43, + "inactive": 302 + }, + { + "t": 87.03, + "active": 16, + "waiting": 44, + "inactive": 301 + }, + { + "t": 87.64, + "active": 15, + "waiting": 44, + "inactive": 301 + }, + { + "t": 87.93, + "active": 14, + "waiting": 44, + "inactive": 301 + }, + { + "t": 87.99, + "active": 15, + "waiting": 43, + "inactive": 301 + }, + { + "t": 88.44, + "active": 16, + "waiting": 43, + "inactive": 300 + }, + { + "t": 88.6, + "active": 15, + "waiting": 43, + "inactive": 300 + }, + { + "t": 88.75, + "active": 16, + "waiting": 42, + "inactive": 300 + }, + { + "t": 90.1, + "active": 15, + "waiting": 43, + "inactive": 299 + }, + { + "t": 90.37, + "active": 16, + "waiting": 42, + "inactive": 299 + }, + { + "t": 91.03, + "active": 15, + "waiting": 42, + "inactive": 299 + }, + { + "t": 91.39, + "active": 16, + "waiting": 41, + "inactive": 299 + }, + { + "t": 91.47, + "active": 16, + "waiting": 42, + "inactive": 298 + }, + { + "t": 92.04, + "active": 15, + "waiting": 43, + "inactive": 297 + }, + { + "t": 92.81, + "active": 16, + "waiting": 42, + "inactive": 297 + }, + { + "t": 94.38, + "active": 16, + "waiting": 43, + "inactive": 296 + }, + { + "t": 97.58, + "active": 15, + "waiting": 43, + "inactive": 296 + }, + { + "t": 98.5, + "active": 16, + "waiting": 42, + "inactive": 296 + }, + { + "t": 99.36000000000001, + "active": 15, + "waiting": 42, + "inactive": 296 + }, + { + "t": 99.52, + "active": 16, + "waiting": 42, + "inactive": 295 + }, + { + "t": 100.6, + "active": 15, + "waiting": 43, + "inactive": 294 + }, + { + "t": 101.26, + "active": 16, + "waiting": 43, + "inactive": 293 + }, + { + "t": 101.35000000000001, + "active": 16, + "waiting": 44, + "inactive": 292 + }, + { + "t": 101.53, + "active": 15, + "waiting": 44, + "inactive": 292 + }, + { + "t": 101.97, + "active": 16, + "waiting": 43, + "inactive": 292 + }, + { + "t": 103.28, + "active": 16, + "waiting": 44, + "inactive": 291 + }, + { + "t": 103.6, + "active": 15, + "waiting": 44, + "inactive": 291 + }, + { + "t": 104.16, + "active": 15, + "waiting": 44, + "inactive": 290 + }, + { + "t": 104.61, + "active": 15, + "waiting": 43, + "inactive": 290 + }, + { + "t": 105.61, + "active": 16, + "waiting": 43, + "inactive": 289 + }, + { + "t": 105.71, + "active": 15, + "waiting": 43, + "inactive": 289 + }, + { + "t": 106.4, + "active": 16, + "waiting": 42, + "inactive": 289 + }, + { + "t": 107.17, + "active": 15, + "waiting": 42, + "inactive": 289 + }, + { + "t": 107.52, + "active": 16, + "waiting": 42, + "inactive": 288 + }, + { + "t": 107.52000000000001, + "active": 15, + "waiting": 42, + "inactive": 288 + }, + { + "t": 107.84, + "active": 16, + "waiting": 41, + "inactive": 288 + }, + { + "t": 108.56, + "active": 15, + "waiting": 41, + "inactive": 288 + }, + { + "t": 108.89, + "active": 16, + "waiting": 41, + "inactive": 287 + }, + { + "t": 109.18, + "active": 15, + "waiting": 41, + "inactive": 287 + }, + { + "t": 109.39, + "active": 14, + "waiting": 41, + "inactive": 287 + }, + { + "t": 109.47, + "active": 15, + "waiting": 40, + "inactive": 287 + }, + { + "t": 109.74, + "active": 16, + "waiting": 41, + "inactive": 285 + }, + { + "t": 110.03, + "active": 15, + "waiting": 41, + "inactive": 285 + }, + { + "t": 110.4, + "active": 16, + "waiting": 41, + "inactive": 284 + }, + { + "t": 110.44, + "active": 15, + "waiting": 43, + "inactive": 282 + }, + { + "t": 110.52, + "active": 16, + "waiting": 43, + "inactive": 281 + }, + { + "t": 110.93, + "active": 15, + "waiting": 44, + "inactive": 280 + }, + { + "t": 111.35, + "active": 16, + "waiting": 44, + "inactive": 279 + }, + { + "t": 111.47999999999999, + "active": 16, + "waiting": 45, + "inactive": 278 + }, + { + "t": 111.81, + "active": 15, + "waiting": 45, + "inactive": 278 + }, + { + "t": 111.83, + "active": 14, + "waiting": 45, + "inactive": 278 + }, + { + "t": 111.89, + "active": 15, + "waiting": 45, + "inactive": 277 + }, + { + "t": 111.94, + "active": 16, + "waiting": 44, + "inactive": 277 + }, + { + "t": 112.38, + "active": 16, + "waiting": 45, + "inactive": 276 + }, + { + "t": 112.68, + "active": 15, + "waiting": 45, + "inactive": 276 + }, + { + "t": 112.7, + "active": 16, + "waiting": 44, + "inactive": 276 + }, + { + "t": 112.71, + "active": 15, + "waiting": 44, + "inactive": 276 + }, + { + "t": 112.76, + "active": 16, + "waiting": 43, + "inactive": 276 + }, + { + "t": 113.11, + "active": 15, + "waiting": 43, + "inactive": 276 + }, + { + "t": 113.2, + "active": 14, + "waiting": 43, + "inactive": 276 + }, + { + "t": 113.21, + "active": 15, + "waiting": 42, + "inactive": 276 + }, + { + "t": 113.25, + "active": 16, + "waiting": 41, + "inactive": 276 + }, + { + "t": 113.28999999999999, + "active": 16, + "waiting": 42, + "inactive": 275 + }, + { + "t": 113.47999999999999, + "active": 15, + "waiting": 42, + "inactive": 275 + }, + { + "t": 113.54, + "active": 14, + "waiting": 42, + "inactive": 275 + }, + { + "t": 113.77, + "active": 15, + "waiting": 40, + "inactive": 275 + }, + { + "t": 114.17999999999999, + "active": 14, + "waiting": 40, + "inactive": 275 + }, + { + "t": 114.18, + "active": 15, + "waiting": 40, + "inactive": 274 + }, + { + "t": 114.38, + "active": 16, + "waiting": 40, + "inactive": 273 + }, + { + "t": 114.38000000000001, + "active": 16, + "waiting": 41, + "inactive": 272 + }, + { + "t": 114.42, + "active": 16, + "waiting": 42, + "inactive": 271 + }, + { + "t": 114.65, + "active": 15, + "waiting": 42, + "inactive": 271 + }, + { + "t": 114.78, + "active": 15, + "waiting": 42, + "inactive": 270 + }, + { + "t": 114.82, + "active": 15, + "waiting": 43, + "inactive": 269 + }, + { + "t": 114.97, + "active": 15, + "waiting": 42, + "inactive": 269 + }, + { + "t": 115.11, + "active": 16, + "waiting": 41, + "inactive": 269 + }, + { + "t": 115.33999999999999, + "active": 15, + "waiting": 41, + "inactive": 269 + }, + { + "t": 115.37, + "active": 16, + "waiting": 40, + "inactive": 269 + }, + { + "t": 115.98, + "active": 15, + "waiting": 41, + "inactive": 268 + }, + { + "t": 116.02, + "active": 16, + "waiting": 40, + "inactive": 268 + }, + { + "t": 116.1, + "active": 15, + "waiting": 41, + "inactive": 267 + }, + { + "t": 116.38, + "active": 16, + "waiting": 40, + "inactive": 267 + }, + { + "t": 116.41, + "active": 16, + "waiting": 42, + "inactive": 265 + }, + { + "t": 116.64, + "active": 15, + "waiting": 43, + "inactive": 264 + }, + { + "t": 116.72, + "active": 16, + "waiting": 42, + "inactive": 264 + }, + { + "t": 117.11, + "active": 15, + "waiting": 43, + "inactive": 263 + }, + { + "t": 117.38, + "active": 16, + "waiting": 42, + "inactive": 263 + }, + { + "t": 117.72, + "active": 16, + "waiting": 43, + "inactive": 262 + }, + { + "t": 118.2, + "active": 15, + "waiting": 43, + "inactive": 262 + }, + { + "t": 118.47, + "active": 16, + "waiting": 44, + "inactive": 260 + }, + { + "t": 119.0, + "active": 15, + "waiting": 44, + "inactive": 260 + }, + { + "t": 119.21, + "active": 16, + "waiting": 43, + "inactive": 260 + }, + { + "t": 121.85, + "active": 16, + "waiting": 49, + "inactive": 254 + }, + { + "t": 122.66, + "active": 15, + "waiting": 49, + "inactive": 254 + }, + { + "t": 122.94, + "active": 15, + "waiting": 48, + "inactive": 254 + }, + { + "t": 123.12, + "active": 14, + "waiting": 48, + "inactive": 254 + }, + { + "t": 123.13, + "active": 13, + "waiting": 48, + "inactive": 254 + }, + { + "t": 123.19, + "active": 14, + "waiting": 47, + "inactive": 254 + }, + { + "t": 123.32, + "active": 16, + "waiting": 45, + "inactive": 254 + }, + { + "t": 123.75, + "active": 16, + "waiting": 48, + "inactive": 251 + }, + { + "t": 124.56, + "active": 15, + "waiting": 48, + "inactive": 251 + }, + { + "t": 124.93, + "active": 16, + "waiting": 47, + "inactive": 251 + }, + { + "t": 125.08, + "active": 16, + "waiting": 48, + "inactive": 250 + }, + { + "t": 127.35, + "active": 15, + "waiting": 48, + "inactive": 250 + }, + { + "t": 127.53, + "active": 16, + "waiting": 47, + "inactive": 250 + }, + { + "t": 128.67, + "active": 16, + "waiting": 48, + "inactive": 249 + }, + { + "t": 128.73000000000002, + "active": 15, + "waiting": 48, + "inactive": 249 + }, + { + "t": 128.94, + "active": 15, + "waiting": 49, + "inactive": 248 + }, + { + "t": 129.18, + "active": 16, + "waiting": 48, + "inactive": 248 + }, + { + "t": 131.32, + "active": 15, + "waiting": 48, + "inactive": 248 + }, + { + "t": 131.74, + "active": 15, + "waiting": 47, + "inactive": 248 + }, + { + "t": 131.9, + "active": 14, + "waiting": 47, + "inactive": 248 + }, + { + "t": 132.14, + "active": 16, + "waiting": 46, + "inactive": 247 + }, + { + "t": 132.25, + "active": 15, + "waiting": 46, + "inactive": 247 + }, + { + "t": 132.56, + "active": 16, + "waiting": 45, + "inactive": 247 + }, + { + "t": 134.10999999999999, + "active": 15, + "waiting": 45, + "inactive": 247 + }, + { + "t": 134.12, + "active": 16, + "waiting": 44, + "inactive": 247 + }, + { + "t": 141.68, + "active": 15, + "waiting": 44, + "inactive": 247 + }, + { + "t": 141.87, + "active": 14, + "waiting": 44, + "inactive": 247 + }, + { + "t": 142.2, + "active": 16, + "waiting": 43, + "inactive": 246 + }, + { + "t": 142.35, + "active": 15, + "waiting": 43, + "inactive": 246 + }, + { + "t": 142.38, + "active": 16, + "waiting": 43, + "inactive": 245 + }, + { + "t": 142.76, + "active": 15, + "waiting": 44, + "inactive": 244 + }, + { + "t": 142.99, + "active": 15, + "waiting": 44, + "inactive": 243 + }, + { + "t": 143.07, + "active": 16, + "waiting": 44, + "inactive": 242 + }, + { + "t": 143.28, + "active": 16, + "waiting": 45, + "inactive": 241 + }, + { + "t": 143.34, + "active": 16, + "waiting": 46, + "inactive": 240 + }, + { + "t": 143.42, + "active": 15, + "waiting": 46, + "inactive": 240 + }, + { + "t": 143.53, + "active": 15, + "waiting": 46, + "inactive": 239 + }, + { + "t": 143.59, + "active": 16, + "waiting": 45, + "inactive": 239 + }, + { + "t": 143.75, + "active": 16, + "waiting": 46, + "inactive": 238 + }, + { + "t": 143.89000000000001, + "active": 15, + "waiting": 46, + "inactive": 238 + }, + { + "t": 143.96, + "active": 16, + "waiting": 45, + "inactive": 238 + }, + { + "t": 144.98, + "active": 15, + "waiting": 45, + "inactive": 238 + }, + { + "t": 145.22, + "active": 16, + "waiting": 44, + "inactive": 238 + }, + { + "t": 145.35999999999999, + "active": 16, + "waiting": 45, + "inactive": 237 + }, + { + "t": 145.59, + "active": 15, + "waiting": 45, + "inactive": 237 + }, + { + "t": 145.87, + "active": 15, + "waiting": 50, + "inactive": 232 + }, + { + "t": 146.02, + "active": 16, + "waiting": 49, + "inactive": 232 + }, + { + "t": 146.85000000000002, + "active": 15, + "waiting": 49, + "inactive": 232 + }, + { + "t": 147.03, + "active": 16, + "waiting": 48, + "inactive": 232 + }, + { + "t": 147.08, + "active": 15, + "waiting": 49, + "inactive": 231 + }, + { + "t": 147.28, + "active": 16, + "waiting": 48, + "inactive": 231 + }, + { + "t": 147.66, + "active": 16, + "waiting": 49, + "inactive": 230 + }, + { + "t": 147.73, + "active": 16, + "waiting": 51, + "inactive": 228 + }, + { + "t": 149.47, + "active": 15, + "waiting": 51, + "inactive": 228 + }, + { + "t": 149.48, + "active": 16, + "waiting": 50, + "inactive": 228 + }, + { + "t": 149.49, + "active": 15, + "waiting": 50, + "inactive": 228 + }, + { + "t": 149.54, + "active": 16, + "waiting": 49, + "inactive": 228 + }, + { + "t": 150.22, + "active": 16, + "waiting": 50, + "inactive": 227 + }, + { + "t": 150.25, + "active": 15, + "waiting": 50, + "inactive": 227 + }, + { + "t": 150.53, + "active": 15, + "waiting": 51, + "inactive": 226 + }, + { + "t": 150.54, + "active": 16, + "waiting": 50, + "inactive": 226 + }, + { + "t": 150.60999999999999, + "active": 15, + "waiting": 50, + "inactive": 226 + }, + { + "t": 150.81, + "active": 15, + "waiting": 49, + "inactive": 226 + }, + { + "t": 151.05, + "active": 16, + "waiting": 48, + "inactive": 226 + }, + { + "t": 151.42000000000002, + "active": 16, + "waiting": 49, + "inactive": 225 + }, + { + "t": 152.42999999999998, + "active": 15, + "waiting": 49, + "inactive": 225 + }, + { + "t": 152.48, + "active": 16, + "waiting": 48, + "inactive": 225 + }, + { + "t": 153.2, + "active": 16, + "waiting": 49, + "inactive": 224 + }, + { + "t": 155.24, + "active": 15, + "waiting": 49, + "inactive": 224 + }, + { + "t": 155.5, + "active": 16, + "waiting": 48, + "inactive": 224 + }, + { + "t": 155.51, + "active": 16, + "waiting": 50, + "inactive": 222 + }, + { + "t": 156.31, + "active": 16, + "waiting": 51, + "inactive": 221 + }, + { + "t": 159.87, + "active": 15, + "waiting": 51, + "inactive": 221 + }, + { + "t": 160.59, + "active": 16, + "waiting": 50, + "inactive": 221 + }, + { + "t": 161.3, + "active": 15, + "waiting": 50, + "inactive": 221 + }, + { + "t": 161.84, + "active": 16, + "waiting": 49, + "inactive": 221 + }, + { + "t": 166.76, + "active": 16, + "waiting": 50, + "inactive": 220 + }, + { + "t": 170.08999999999997, + "active": 16, + "waiting": 51, + "inactive": 219 + }, + { + "t": 170.5, + "active": 15, + "waiting": 51, + "inactive": 219 + }, + { + "t": 170.71, + "active": 16, + "waiting": 50, + "inactive": 219 + }, + { + "t": 170.97, + "active": 15, + "waiting": 50, + "inactive": 219 + }, + { + "t": 171.22, + "active": 16, + "waiting": 49, + "inactive": 219 + }, + { + "t": 173.66, + "active": 15, + "waiting": 49, + "inactive": 219 + }, + { + "t": 173.99, + "active": 16, + "waiting": 48, + "inactive": 219 + }, + { + "t": 174.20999999999998, + "active": 15, + "waiting": 48, + "inactive": 219 + }, + { + "t": 174.46, + "active": 16, + "waiting": 47, + "inactive": 219 + }, + { + "t": 176.02, + "active": 16, + "waiting": 54, + "inactive": 212 + }, + { + "t": 176.16, + "active": 15, + "waiting": 54, + "inactive": 212 + }, + { + "t": 176.43, + "active": 16, + "waiting": 53, + "inactive": 212 + }, + { + "t": 177.56, + "active": 15, + "waiting": 53, + "inactive": 212 + }, + { + "t": 177.79999999999998, + "active": 14, + "waiting": 53, + "inactive": 212 + }, + { + "t": 177.8, + "active": 15, + "waiting": 52, + "inactive": 212 + }, + { + "t": 178.05, + "active": 15, + "waiting": 53, + "inactive": 211 + }, + { + "t": 178.23, + "active": 16, + "waiting": 52, + "inactive": 211 + }, + { + "t": 178.24, + "active": 15, + "waiting": 52, + "inactive": 211 + }, + { + "t": 178.44, + "active": 16, + "waiting": 51, + "inactive": 211 + }, + { + "t": 179.84, + "active": 16, + "waiting": 55, + "inactive": 207 + }, + { + "t": 180.07, + "active": 16, + "waiting": 56, + "inactive": 206 + }, + { + "t": 180.16, + "active": 15, + "waiting": 56, + "inactive": 206 + }, + { + "t": 180.38, + "active": 16, + "waiting": 55, + "inactive": 206 + }, + { + "t": 182.86999999999998, + "active": 15, + "waiting": 55, + "inactive": 206 + }, + { + "t": 183.06, + "active": 16, + "waiting": 54, + "inactive": 206 + }, + { + "t": 185.43, + "active": 15, + "waiting": 54, + "inactive": 206 + }, + { + "t": 185.44, + "active": 16, + "waiting": 53, + "inactive": 206 + }, + { + "t": 187.35, + "active": 16, + "waiting": 54, + "inactive": 205 + }, + { + "t": 191.12, + "active": 15, + "waiting": 55, + "inactive": 204 + }, + { + "t": 191.45, + "active": 16, + "waiting": 54, + "inactive": 204 + }, + { + "t": 194.57999999999998, + "active": 16, + "waiting": 56, + "inactive": 202 + }, + { + "t": 194.67000000000002, + "active": 15, + "waiting": 56, + "inactive": 202 + }, + { + "t": 194.9, + "active": 16, + "waiting": 55, + "inactive": 202 + }, + { + "t": 211.47, + "active": 15, + "waiting": 57, + "inactive": 200 + }, + { + "t": 211.6, + "active": 16, + "waiting": 56, + "inactive": 200 + }, + { + "t": 215.18, + "active": 16, + "waiting": 57, + "inactive": 199 + }, + { + "t": 219.45999999999998, + "active": 15, + "waiting": 57, + "inactive": 199 + }, + { + "t": 219.81, + "active": 16, + "waiting": 56, + "inactive": 199 + }, + { + "t": 219.82, + "active": 15, + "waiting": 56, + "inactive": 199 + }, + { + "t": 219.93, + "active": 16, + "waiting": 55, + "inactive": 199 + }, + { + "t": 220.13, + "active": 15, + "waiting": 56, + "inactive": 198 + }, + { + "t": 220.3, + "active": 16, + "waiting": 55, + "inactive": 198 + }, + { + "t": 221.13000000000002, + "active": 16, + "waiting": 56, + "inactive": 197 + }, + { + "t": 221.26, + "active": 15, + "waiting": 56, + "inactive": 197 + }, + { + "t": 221.6, + "active": 15, + "waiting": 56, + "inactive": 196 + }, + { + "t": 221.72, + "active": 16, + "waiting": 55, + "inactive": 196 + }, + { + "t": 223.25, + "active": 16, + "waiting": 56, + "inactive": 195 + }, + { + "t": 224.04, + "active": 15, + "waiting": 56, + "inactive": 195 + }, + { + "t": 224.36, + "active": 16, + "waiting": 55, + "inactive": 195 + }, + { + "t": 225.22000000000003, + "active": 15, + "waiting": 55, + "inactive": 195 + }, + { + "t": 225.97, + "active": 16, + "waiting": 54, + "inactive": 195 + }, + { + "t": 230.60000000000002, + "active": 15, + "waiting": 54, + "inactive": 195 + }, + { + "t": 230.94, + "active": 16, + "waiting": 53, + "inactive": 195 + }, + { + "t": 231.29, + "active": 15, + "waiting": 53, + "inactive": 195 + }, + { + "t": 231.38, + "active": 16, + "waiting": 52, + "inactive": 195 + }, + { + "t": 231.64, + "active": 15, + "waiting": 52, + "inactive": 195 + }, + { + "t": 232.47, + "active": 16, + "waiting": 52, + "inactive": 194 + }, + { + "t": 233.84, + "active": 15, + "waiting": 53, + "inactive": 193 + }, + { + "t": 234.11, + "active": 16, + "waiting": 52, + "inactive": 193 + }, + { + "t": 234.21, + "active": 15, + "waiting": 52, + "inactive": 193 + }, + { + "t": 234.41, + "active": 16, + "waiting": 51, + "inactive": 193 + }, + { + "t": 234.74, + "active": 15, + "waiting": 51, + "inactive": 193 + }, + { + "t": 234.94, + "active": 16, + "waiting": 50, + "inactive": 193 + }, + { + "t": 235.35, + "active": 15, + "waiting": 51, + "inactive": 192 + }, + { + "t": 235.98, + "active": 16, + "waiting": 50, + "inactive": 192 + }, + { + "t": 235.98000000000002, + "active": 15, + "waiting": 50, + "inactive": 192 + }, + { + "t": 236.3, + "active": 16, + "waiting": 49, + "inactive": 192 + }, + { + "t": 237.86, + "active": 15, + "waiting": 50, + "inactive": 191 + }, + { + "t": 238.6, + "active": 16, + "waiting": 49, + "inactive": 191 + }, + { + "t": 240.25, + "active": 15, + "waiting": 49, + "inactive": 191 + }, + { + "t": 240.56, + "active": 16, + "waiting": 48, + "inactive": 191 + }, + { + "t": 241.08, + "active": 15, + "waiting": 64, + "inactive": 175 + }, + { + "t": 241.51, + "active": 16, + "waiting": 63, + "inactive": 175 + }, + { + "t": 241.59, + "active": 15, + "waiting": 63, + "inactive": 175 + }, + { + "t": 241.82, + "active": 14, + "waiting": 64, + "inactive": 173 + }, + { + "t": 241.87, + "active": 16, + "waiting": 65, + "inactive": 170 + }, + { + "t": 242.07, + "active": 16, + "waiting": 66, + "inactive": 169 + }, + { + "t": 242.29, + "active": 16, + "waiting": 67, + "inactive": 168 + }, + { + "t": 242.37, + "active": 15, + "waiting": 68, + "inactive": 167 + }, + { + "t": 242.54, + "active": 14, + "waiting": 68, + "inactive": 167 + }, + { + "t": 242.55, + "active": 15, + "waiting": 68, + "inactive": 166 + }, + { + "t": 242.67000000000002, + "active": 15, + "waiting": 69, + "inactive": 165 + }, + { + "t": 242.76, + "active": 16, + "waiting": 69, + "inactive": 164 + }, + { + "t": 242.92000000000002, + "active": 15, + "waiting": 69, + "inactive": 164 + }, + { + "t": 243.22, + "active": 16, + "waiting": 68, + "inactive": 164 + }, + { + "t": 243.44, + "active": 15, + "waiting": 69, + "inactive": 163 + }, + { + "t": 243.53, + "active": 14, + "waiting": 69, + "inactive": 163 + }, + { + "t": 243.78, + "active": 16, + "waiting": 67, + "inactive": 163 + }, + { + "t": 243.87, + "active": 16, + "waiting": 68, + "inactive": 162 + }, + { + "t": 244.41, + "active": 15, + "waiting": 68, + "inactive": 162 + }, + { + "t": 244.58, + "active": 16, + "waiting": 67, + "inactive": 162 + }, + { + "t": 245.01, + "active": 14, + "waiting": 68, + "inactive": 161 + }, + { + "t": 245.2, + "active": 16, + "waiting": 66, + "inactive": 161 + }, + { + "t": 245.32, + "active": 16, + "waiting": 67, + "inactive": 160 + }, + { + "t": 250.17, + "active": 15, + "waiting": 67, + "inactive": 160 + }, + { + "t": 251.94, + "active": 15, + "waiting": 67, + "inactive": 159 + }, + { + "t": 252.82, + "active": 16, + "waiting": 66, + "inactive": 159 + }, + { + "t": 253.51000000000002, + "active": 15, + "waiting": 66, + "inactive": 159 + }, + { + "t": 253.85, + "active": 15, + "waiting": 65, + "inactive": 159 + }, + { + "t": 253.86, + "active": 16, + "waiting": 64, + "inactive": 159 + }, + { + "t": 253.88, + "active": 15, + "waiting": 64, + "inactive": 159 + }, + { + "t": 253.9, + "active": 16, + "waiting": 63, + "inactive": 159 + }, + { + "t": 254.72000000000003, + "active": 15, + "waiting": 63, + "inactive": 159 + }, + { + "t": 255.13, + "active": 16, + "waiting": 62, + "inactive": 159 + }, + { + "t": 255.39000000000001, + "active": 15, + "waiting": 62, + "inactive": 159 + }, + { + "t": 256.4, + "active": 16, + "waiting": 61, + "inactive": 159 + }, + { + "t": 257.71999999999997, + "active": 15, + "waiting": 61, + "inactive": 159 + }, + { + "t": 258.46, + "active": 15, + "waiting": 60, + "inactive": 159 + }, + { + "t": 259.04, + "active": 16, + "waiting": 59, + "inactive": 159 + }, + { + "t": 264.08, + "active": 15, + "waiting": 59, + "inactive": 159 + }, + { + "t": 264.39000000000004, + "active": 14, + "waiting": 60, + "inactive": 158 + }, + { + "t": 264.59, + "active": 14, + "waiting": 60, + "inactive": 157 + }, + { + "t": 264.9, + "active": 16, + "waiting": 58, + "inactive": 157 + }, + { + "t": 266.10999999999996, + "active": 16, + "waiting": 59, + "inactive": 156 + }, + { + "t": 266.48999999999995, + "active": 16, + "waiting": 60, + "inactive": 155 + }, + { + "t": 267.33, + "active": 15, + "waiting": 60, + "inactive": 155 + }, + { + "t": 268.59, + "active": 16, + "waiting": 59, + "inactive": 155 + }, + { + "t": 270.53, + "active": 15, + "waiting": 60, + "inactive": 154 + }, + { + "t": 270.71, + "active": 14, + "waiting": 61, + "inactive": 153 + }, + { + "t": 270.71000000000004, + "active": 14, + "waiting": 62, + "inactive": 152 + }, + { + "t": 271.07, + "active": 16, + "waiting": 60, + "inactive": 152 + }, + { + "t": 271.33, + "active": 16, + "waiting": 61, + "inactive": 151 + }, + { + "t": 271.34999999999997, + "active": 15, + "waiting": 61, + "inactive": 151 + }, + { + "t": 271.87, + "active": 15, + "waiting": 60, + "inactive": 151 + }, + { + "t": 272.34, + "active": 16, + "waiting": 59, + "inactive": 151 + }, + { + "t": 272.74, + "active": 15, + "waiting": 60, + "inactive": 150 + }, + { + "t": 272.86, + "active": 16, + "waiting": 60, + "inactive": 149 + }, + { + "t": 272.95, + "active": 15, + "waiting": 61, + "inactive": 148 + }, + { + "t": 272.97, + "active": 16, + "waiting": 61, + "inactive": 147 + }, + { + "t": 273.32, + "active": 15, + "waiting": 61, + "inactive": 147 + }, + { + "t": 273.48, + "active": 16, + "waiting": 61, + "inactive": 146 + }, + { + "t": 273.58, + "active": 15, + "waiting": 63, + "inactive": 144 + }, + { + "t": 273.62, + "active": 16, + "waiting": 63, + "inactive": 143 + }, + { + "t": 273.74, + "active": 16, + "waiting": 64, + "inactive": 142 + }, + { + "t": 273.84000000000003, + "active": 15, + "waiting": 65, + "inactive": 141 + }, + { + "t": 274.17, + "active": 14, + "waiting": 65, + "inactive": 141 + }, + { + "t": 274.18, + "active": 15, + "waiting": 66, + "inactive": 139 + }, + { + "t": 274.35, + "active": 15, + "waiting": 66, + "inactive": 138 + }, + { + "t": 274.52, + "active": 16, + "waiting": 65, + "inactive": 138 + }, + { + "t": 274.81, + "active": 15, + "waiting": 66, + "inactive": 137 + }, + { + "t": 274.89, + "active": 16, + "waiting": 65, + "inactive": 137 + }, + { + "t": 274.90000000000003, + "active": 15, + "waiting": 66, + "inactive": 136 + }, + { + "t": 274.97, + "active": 16, + "waiting": 65, + "inactive": 136 + }, + { + "t": 275.11, + "active": 15, + "waiting": 66, + "inactive": 135 + }, + { + "t": 275.26, + "active": 15, + "waiting": 65, + "inactive": 135 + }, + { + "t": 275.26000000000005, + "active": 14, + "waiting": 66, + "inactive": 134 + }, + { + "t": 275.29, + "active": 16, + "waiting": 64, + "inactive": 134 + }, + { + "t": 275.45, + "active": 15, + "waiting": 65, + "inactive": 133 + }, + { + "t": 275.55, + "active": 16, + "waiting": 64, + "inactive": 133 + }, + { + "t": 275.58000000000004, + "active": 15, + "waiting": 65, + "inactive": 132 + }, + { + "t": 275.65, + "active": 16, + "waiting": 64, + "inactive": 132 + }, + { + "t": 276.48, + "active": 15, + "waiting": 64, + "inactive": 132 + }, + { + "t": 277.12, + "active": 16, + "waiting": 63, + "inactive": 132 + }, + { + "t": 278.01, + "active": 15, + "waiting": 63, + "inactive": 132 + }, + { + "t": 278.87, + "active": 16, + "waiting": 62, + "inactive": 132 + }, + { + "t": 280.19, + "active": 16, + "waiting": 61, + "inactive": 132 + }, + { + "t": 280.65999999999997, + "active": 15, + "waiting": 61, + "inactive": 132 + }, + { + "t": 281.37, + "active": 16, + "waiting": 60, + "inactive": 132 + }, + { + "t": 281.95, + "active": 15, + "waiting": 60, + "inactive": 132 + }, + { + "t": 282.51, + "active": 16, + "waiting": 60, + "inactive": 131 + }, + { + "t": 283.26, + "active": 16, + "waiting": 61, + "inactive": 130 + }, + { + "t": 284.76000000000005, + "active": 15, + "waiting": 62, + "inactive": 129 + }, + { + "t": 285.7, + "active": 16, + "waiting": 61, + "inactive": 129 + }, + { + "t": 286.09999999999997, + "active": 16, + "waiting": 62, + "inactive": 128 + }, + { + "t": 286.1, + "active": 15, + "waiting": 62, + "inactive": 128 + }, + { + "t": 286.87, + "active": 16, + "waiting": 61, + "inactive": 128 + }, + { + "t": 288.1, + "active": 15, + "waiting": 62, + "inactive": 127 + }, + { + "t": 289.3, + "active": 16, + "waiting": 61, + "inactive": 127 + }, + { + "t": 290.75, + "active": 15, + "waiting": 61, + "inactive": 127 + }, + { + "t": 290.95, + "active": 16, + "waiting": 60, + "inactive": 127 + }, + { + "t": 291.02, + "active": 16, + "waiting": 61, + "inactive": 126 + }, + { + "t": 291.65, + "active": 15, + "waiting": 62, + "inactive": 125 + }, + { + "t": 292.01, + "active": 16, + "waiting": 62, + "inactive": 124 + }, + { + "t": 292.55, + "active": 16, + "waiting": 63, + "inactive": 123 + }, + { + "t": 292.98, + "active": 15, + "waiting": 63, + "inactive": 123 + }, + { + "t": 293.02, + "active": 16, + "waiting": 63, + "inactive": 122 + }, + { + "t": 293.79, + "active": 15, + "waiting": 63, + "inactive": 122 + }, + { + "t": 294.18, + "active": 15, + "waiting": 63, + "inactive": 121 + }, + { + "t": 294.64, + "active": 16, + "waiting": 63, + "inactive": 120 + }, + { + "t": 295.01, + "active": 15, + "waiting": 63, + "inactive": 120 + }, + { + "t": 295.19, + "active": 16, + "waiting": 62, + "inactive": 120 + }, + { + "t": 295.23, + "active": 15, + "waiting": 63, + "inactive": 119 + }, + { + "t": 295.53, + "active": 16, + "waiting": 62, + "inactive": 119 + }, + { + "t": 296.41999999999996, + "active": 15, + "waiting": 63, + "inactive": 118 + }, + { + "t": 296.71000000000004, + "active": 14, + "waiting": 63, + "inactive": 118 + }, + { + "t": 296.9, + "active": 15, + "waiting": 62, + "inactive": 118 + }, + { + "t": 296.92, + "active": 16, + "waiting": 61, + "inactive": 118 + }, + { + "t": 296.95, + "active": 15, + "waiting": 61, + "inactive": 118 + }, + { + "t": 296.98, + "active": 16, + "waiting": 60, + "inactive": 118 + }, + { + "t": 297.18, + "active": 15, + "waiting": 60, + "inactive": 118 + }, + { + "t": 297.49, + "active": 16, + "waiting": 59, + "inactive": 118 + }, + { + "t": 299.83, + "active": 15, + "waiting": 59, + "inactive": 118 + }, + { + "t": 300.51, + "active": 16, + "waiting": 58, + "inactive": 118 + }, + { + "t": 301.95, + "active": 15, + "waiting": 58, + "inactive": 118 + }, + { + "t": 302.6, + "active": 16, + "waiting": 57, + "inactive": 118 + }, + { + "t": 303.15000000000003, + "active": 15, + "waiting": 57, + "inactive": 118 + }, + { + "t": 303.60999999999996, + "active": 15, + "waiting": 58, + "inactive": 117 + }, + { + "t": 303.61, + "active": 16, + "waiting": 57, + "inactive": 117 + }, + { + "t": 304.09999999999997, + "active": 15, + "waiting": 57, + "inactive": 117 + }, + { + "t": 304.55, + "active": 16, + "waiting": 56, + "inactive": 117 + }, + { + "t": 305.02000000000004, + "active": 15, + "waiting": 56, + "inactive": 117 + }, + { + "t": 305.38, + "active": 16, + "waiting": 55, + "inactive": 117 + }, + { + "t": 308.2, + "active": 16, + "waiting": 56, + "inactive": 116 + }, + { + "t": 310.90999999999997, + "active": 15, + "waiting": 57, + "inactive": 115 + }, + { + "t": 311.55, + "active": 16, + "waiting": 57, + "inactive": 114 + }, + { + "t": 311.78000000000003, + "active": 15, + "waiting": 57, + "inactive": 114 + }, + { + "t": 312.12, + "active": 16, + "waiting": 56, + "inactive": 114 + }, + { + "t": 313.46999999999997, + "active": 16, + "waiting": 57, + "inactive": 113 + }, + { + "t": 313.75, + "active": 16, + "waiting": 58, + "inactive": 112 + }, + { + "t": 314.55, + "active": 16, + "waiting": 61, + "inactive": 109 + }, + { + "t": 318.02, + "active": 15, + "waiting": 61, + "inactive": 109 + }, + { + "t": 318.25, + "active": 16, + "waiting": 60, + "inactive": 109 + }, + { + "t": 319.54, + "active": 15, + "waiting": 60, + "inactive": 109 + }, + { + "t": 319.9, + "active": 16, + "waiting": 59, + "inactive": 109 + }, + { + "t": 320.07, + "active": 15, + "waiting": 59, + "inactive": 109 + }, + { + "t": 320.35, + "active": 16, + "waiting": 58, + "inactive": 109 + }, + { + "t": 320.72, + "active": 16, + "waiting": 59, + "inactive": 108 + }, + { + "t": 322.21000000000004, + "active": 15, + "waiting": 59, + "inactive": 108 + }, + { + "t": 322.34, + "active": 16, + "waiting": 58, + "inactive": 108 + }, + { + "t": 331.62, + "active": 15, + "waiting": 58, + "inactive": 108 + }, + { + "t": 332.37, + "active": 16, + "waiting": 57, + "inactive": 108 + }, + { + "t": 335.28, + "active": 15, + "waiting": 62, + "inactive": 103 + }, + { + "t": 335.68, + "active": 16, + "waiting": 61, + "inactive": 103 + }, + { + "t": 339.84999999999997, + "active": 15, + "waiting": 61, + "inactive": 103 + }, + { + "t": 340.3, + "active": 16, + "waiting": 60, + "inactive": 103 + }, + { + "t": 342.55, + "active": 15, + "waiting": 60, + "inactive": 103 + }, + { + "t": 342.59, + "active": 16, + "waiting": 59, + "inactive": 103 + }, + { + "t": 349.01, + "active": 15, + "waiting": 59, + "inactive": 103 + }, + { + "t": 349.4, + "active": 16, + "waiting": 58, + "inactive": 103 + }, + { + "t": 354.19, + "active": 15, + "waiting": 59, + "inactive": 102 + }, + { + "t": 354.43, + "active": 15, + "waiting": 60, + "inactive": 101 + }, + { + "t": 354.67, + "active": 16, + "waiting": 59, + "inactive": 101 + }, + { + "t": 359.04999999999995, + "active": 15, + "waiting": 60, + "inactive": 100 + }, + { + "t": 359.22, + "active": 16, + "waiting": 59, + "inactive": 100 + }, + { + "t": 360.95, + "active": 15, + "waiting": 59, + "inactive": 100 + }, + { + "t": 361.16, + "active": 16, + "waiting": 58, + "inactive": 100 + }, + { + "t": 362.41, + "active": 16, + "waiting": 59, + "inactive": 99 + }, + { + "t": 362.88000000000005, + "active": 15, + "waiting": 59, + "inactive": 99 + }, + { + "t": 362.94, + "active": 16, + "waiting": 58, + "inactive": 99 + }, + { + "t": 363.35, + "active": 16, + "waiting": 59, + "inactive": 98 + }, + { + "t": 363.53, + "active": 15, + "waiting": 59, + "inactive": 98 + }, + { + "t": 363.56, + "active": 16, + "waiting": 58, + "inactive": 98 + }, + { + "t": 364.01, + "active": 15, + "waiting": 58, + "inactive": 98 + }, + { + "t": 364.03, + "active": 16, + "waiting": 57, + "inactive": 98 + }, + { + "t": 365.35999999999996, + "active": 15, + "waiting": 57, + "inactive": 98 + }, + { + "t": 366.01, + "active": 16, + "waiting": 57, + "inactive": 97 + }, + { + "t": 366.78, + "active": 16, + "waiting": 58, + "inactive": 96 + }, + { + "t": 367.38, + "active": 15, + "waiting": 58, + "inactive": 96 + }, + { + "t": 367.57, + "active": 16, + "waiting": 58, + "inactive": 95 + }, + { + "t": 373.17, + "active": 15, + "waiting": 58, + "inactive": 95 + }, + { + "t": 373.36, + "active": 16, + "waiting": 58, + "inactive": 94 + }, + { + "t": 373.39, + "active": 15, + "waiting": 58, + "inactive": 94 + }, + { + "t": 373.55, + "active": 16, + "waiting": 58, + "inactive": 93 + }, + { + "t": 373.56, + "active": 16, + "waiting": 59, + "inactive": 92 + }, + { + "t": 373.69, + "active": 15, + "waiting": 59, + "inactive": 92 + }, + { + "t": 373.78, + "active": 16, + "waiting": 59, + "inactive": 91 + }, + { + "t": 373.90999999999997, + "active": 16, + "waiting": 60, + "inactive": 90 + }, + { + "t": 373.91, + "active": 16, + "waiting": 61, + "inactive": 89 + }, + { + "t": 374.07, + "active": 15, + "waiting": 61, + "inactive": 89 + }, + { + "t": 374.17, + "active": 16, + "waiting": 61, + "inactive": 88 + }, + { + "t": 374.19, + "active": 15, + "waiting": 61, + "inactive": 88 + }, + { + "t": 374.44, + "active": 16, + "waiting": 61, + "inactive": 87 + }, + { + "t": 374.81, + "active": 15, + "waiting": 62, + "inactive": 86 + }, + { + "t": 375.05, + "active": 15, + "waiting": 62, + "inactive": 85 + }, + { + "t": 375.27, + "active": 16, + "waiting": 61, + "inactive": 85 + }, + { + "t": 377.94, + "active": 15, + "waiting": 61, + "inactive": 85 + }, + { + "t": 378.01, + "active": 16, + "waiting": 60, + "inactive": 85 + }, + { + "t": 380.31, + "active": 15, + "waiting": 60, + "inactive": 85 + }, + { + "t": 380.78, + "active": 16, + "waiting": 59, + "inactive": 85 + }, + { + "t": 380.96999999999997, + "active": 16, + "waiting": 60, + "inactive": 84 + }, + { + "t": 381.21, + "active": 15, + "waiting": 60, + "inactive": 84 + }, + { + "t": 381.26, + "active": 14, + "waiting": 60, + "inactive": 84 + }, + { + "t": 381.32, + "active": 15, + "waiting": 59, + "inactive": 84 + }, + { + "t": 381.53, + "active": 16, + "waiting": 59, + "inactive": 83 + }, + { + "t": 381.66, + "active": 15, + "waiting": 59, + "inactive": 83 + }, + { + "t": 381.69, + "active": 14, + "waiting": 59, + "inactive": 83 + }, + { + "t": 381.8, + "active": 15, + "waiting": 58, + "inactive": 83 + }, + { + "t": 381.88, + "active": 16, + "waiting": 57, + "inactive": 83 + }, + { + "t": 382.54, + "active": 15, + "waiting": 57, + "inactive": 83 + }, + { + "t": 382.73, + "active": 16, + "waiting": 56, + "inactive": 83 + }, + { + "t": 383.19, + "active": 15, + "waiting": 56, + "inactive": 83 + }, + { + "t": 383.23, + "active": 16, + "waiting": 55, + "inactive": 83 + }, + { + "t": 384.26, + "active": 15, + "waiting": 55, + "inactive": 83 + }, + { + "t": 384.35, + "active": 16, + "waiting": 54, + "inactive": 83 + }, + { + "t": 384.37, + "active": 15, + "waiting": 54, + "inactive": 83 + }, + { + "t": 384.43, + "active": 16, + "waiting": 53, + "inactive": 83 + }, + { + "t": 384.92, + "active": 16, + "waiting": 54, + "inactive": 82 + }, + { + "t": 385.13, + "active": 15, + "waiting": 55, + "inactive": 81 + }, + { + "t": 385.27, + "active": 15, + "waiting": 54, + "inactive": 81 + }, + { + "t": 385.34, + "active": 16, + "waiting": 53, + "inactive": 81 + }, + { + "t": 385.91, + "active": 16, + "waiting": 54, + "inactive": 80 + }, + { + "t": 386.72, + "active": 15, + "waiting": 54, + "inactive": 80 + }, + { + "t": 386.75, + "active": 16, + "waiting": 53, + "inactive": 80 + }, + { + "t": 386.78, + "active": 15, + "waiting": 53, + "inactive": 80 + }, + { + "t": 386.87, + "active": 16, + "waiting": 52, + "inactive": 80 + }, + { + "t": 387.71999999999997, + "active": 16, + "waiting": 53, + "inactive": 79 + }, + { + "t": 387.88, + "active": 16, + "waiting": 54, + "inactive": 78 + }, + { + "t": 391.08000000000004, + "active": 16, + "waiting": 55, + "inactive": 77 + }, + { + "t": 391.89000000000004, + "active": 15, + "waiting": 55, + "inactive": 77 + }, + { + "t": 392.28, + "active": 16, + "waiting": 54, + "inactive": 77 + }, + { + "t": 392.34, + "active": 15, + "waiting": 54, + "inactive": 77 + }, + { + "t": 392.49, + "active": 16, + "waiting": 53, + "inactive": 77 + }, + { + "t": 393.54, + "active": 15, + "waiting": 54, + "inactive": 76 + }, + { + "t": 393.64, + "active": 16, + "waiting": 53, + "inactive": 76 + }, + { + "t": 394.41999999999996, + "active": 15, + "waiting": 54, + "inactive": 75 + }, + { + "t": 394.46000000000004, + "active": 15, + "waiting": 55, + "inactive": 74 + }, + { + "t": 394.65, + "active": 16, + "waiting": 54, + "inactive": 74 + }, + { + "t": 397.19, + "active": 15, + "waiting": 55, + "inactive": 73 + }, + { + "t": 397.47, + "active": 16, + "waiting": 55, + "inactive": 72 + }, + { + "t": 397.56, + "active": 15, + "waiting": 56, + "inactive": 71 + }, + { + "t": 397.99, + "active": 15, + "waiting": 57, + "inactive": 69 + }, + { + "t": 398.28000000000003, + "active": 14, + "waiting": 57, + "inactive": 69 + }, + { + "t": 398.3, + "active": 15, + "waiting": 57, + "inactive": 68 + }, + { + "t": 398.44, + "active": 16, + "waiting": 57, + "inactive": 67 + }, + { + "t": 398.63, + "active": 15, + "waiting": 57, + "inactive": 67 + }, + { + "t": 398.67, + "active": 14, + "waiting": 57, + "inactive": 67 + }, + { + "t": 398.68, + "active": 15, + "waiting": 57, + "inactive": 66 + }, + { + "t": 398.8, + "active": 16, + "waiting": 57, + "inactive": 65 + }, + { + "t": 399.09000000000003, + "active": 15, + "waiting": 57, + "inactive": 65 + }, + { + "t": 399.11, + "active": 16, + "waiting": 56, + "inactive": 65 + }, + { + "t": 399.14, + "active": 16, + "waiting": 57, + "inactive": 64 + }, + { + "t": 399.35, + "active": 15, + "waiting": 58, + "inactive": 63 + }, + { + "t": 399.36, + "active": 16, + "waiting": 57, + "inactive": 63 + }, + { + "t": 399.52, + "active": 15, + "waiting": 57, + "inactive": 63 + }, + { + "t": 399.72, + "active": 15, + "waiting": 56, + "inactive": 63 + }, + { + "t": 399.99, + "active": 16, + "waiting": 55, + "inactive": 63 + }, + { + "t": 400.46999999999997, + "active": 16, + "waiting": 56, + "inactive": 62 + }, + { + "t": 403.59000000000003, + "active": 15, + "waiting": 56, + "inactive": 62 + }, + { + "t": 404.13, + "active": 16, + "waiting": 55, + "inactive": 62 + }, + { + "t": 405.33000000000004, + "active": 15, + "waiting": 57, + "inactive": 60 + }, + { + "t": 405.64, + "active": 16, + "waiting": 56, + "inactive": 60 + }, + { + "t": 405.93, + "active": 15, + "waiting": 57, + "inactive": 59 + }, + { + "t": 406.56, + "active": 16, + "waiting": 56, + "inactive": 59 + }, + { + "t": 409.69, + "active": 16, + "waiting": 57, + "inactive": 58 + }, + { + "t": 424.02, + "active": 15, + "waiting": 58, + "inactive": 57 + }, + { + "t": 424.34, + "active": 16, + "waiting": 57, + "inactive": 57 + }, + { + "t": 425.34999999999997, + "active": 16, + "waiting": 58, + "inactive": 56 + }, + { + "t": 426.29, + "active": 15, + "waiting": 60, + "inactive": 54 + }, + { + "t": 426.35, + "active": 16, + "waiting": 59, + "inactive": 54 + }, + { + "t": 428.11999999999995, + "active": 15, + "waiting": 59, + "inactive": 54 + }, + { + "t": 428.34, + "active": 16, + "waiting": 58, + "inactive": 54 + }, + { + "t": 429.86999999999995, + "active": 15, + "waiting": 59, + "inactive": 53 + }, + { + "t": 430.06, + "active": 16, + "waiting": 58, + "inactive": 53 + }, + { + "t": 430.67, + "active": 16, + "waiting": 59, + "inactive": 52 + }, + { + "t": 432.44, + "active": 15, + "waiting": 59, + "inactive": 52 + }, + { + "t": 432.68, + "active": 16, + "waiting": 58, + "inactive": 52 + }, + { + "t": 433.63, + "active": 16, + "waiting": 59, + "inactive": 51 + }, + { + "t": 434.95, + "active": 16, + "waiting": 60, + "inactive": 50 + }, + { + "t": 437.40999999999997, + "active": 15, + "waiting": 60, + "inactive": 50 + }, + { + "t": 437.58, + "active": 16, + "waiting": 59, + "inactive": 50 + }, + { + "t": 439.65, + "active": 15, + "waiting": 59, + "inactive": 50 + }, + { + "t": 439.72, + "active": 16, + "waiting": 58, + "inactive": 50 + }, + { + "t": 439.89, + "active": 15, + "waiting": 58, + "inactive": 50 + }, + { + "t": 439.96, + "active": 16, + "waiting": 57, + "inactive": 50 + }, + { + "t": 440.18, + "active": 16, + "waiting": 58, + "inactive": 49 + }, + { + "t": 440.25, + "active": 15, + "waiting": 58, + "inactive": 49 + }, + { + "t": 440.27, + "active": 16, + "waiting": 57, + "inactive": 49 + }, + { + "t": 440.34, + "active": 15, + "waiting": 57, + "inactive": 49 + }, + { + "t": 440.43, + "active": 16, + "waiting": 56, + "inactive": 49 + }, + { + "t": 441.03000000000003, + "active": 15, + "waiting": 56, + "inactive": 49 + }, + { + "t": 441.13, + "active": 16, + "waiting": 56, + "inactive": 48 + }, + { + "t": 441.45000000000005, + "active": 16, + "waiting": 58, + "inactive": 46 + }, + { + "t": 442.13, + "active": 15, + "waiting": 58, + "inactive": 46 + }, + { + "t": 442.24, + "active": 16, + "waiting": 58, + "inactive": 45 + }, + { + "t": 442.39, + "active": 16, + "waiting": 59, + "inactive": 44 + }, + { + "t": 442.57, + "active": 15, + "waiting": 59, + "inactive": 44 + }, + { + "t": 442.62, + "active": 16, + "waiting": 59, + "inactive": 43 + }, + { + "t": 443.49, + "active": 16, + "waiting": 60, + "inactive": 42 + }, + { + "t": 443.91, + "active": 15, + "waiting": 60, + "inactive": 42 + }, + { + "t": 444.0, + "active": 16, + "waiting": 60, + "inactive": 41 + }, + { + "t": 444.21, + "active": 15, + "waiting": 60, + "inactive": 41 + }, + { + "t": 444.23, + "active": 16, + "waiting": 59, + "inactive": 41 + }, + { + "t": 444.88, + "active": 15, + "waiting": 60, + "inactive": 40 + }, + { + "t": 444.96, + "active": 16, + "waiting": 59, + "inactive": 40 + }, + { + "t": 445.52, + "active": 15, + "waiting": 59, + "inactive": 40 + }, + { + "t": 445.59, + "active": 16, + "waiting": 58, + "inactive": 40 + }, + { + "t": 445.88, + "active": 15, + "waiting": 58, + "inactive": 40 + }, + { + "t": 445.91, + "active": 16, + "waiting": 57, + "inactive": 40 + }, + { + "t": 446.14, + "active": 15, + "waiting": 57, + "inactive": 40 + }, + { + "t": 446.23, + "active": 16, + "waiting": 56, + "inactive": 40 + }, + { + "t": 446.45000000000005, + "active": 16, + "waiting": 57, + "inactive": 39 + }, + { + "t": 446.81, + "active": 15, + "waiting": 57, + "inactive": 39 + }, + { + "t": 446.85, + "active": 16, + "waiting": 56, + "inactive": 39 + }, + { + "t": 447.41, + "active": 16, + "waiting": 57, + "inactive": 38 + }, + { + "t": 447.44, + "active": 15, + "waiting": 57, + "inactive": 38 + }, + { + "t": 447.48, + "active": 16, + "waiting": 56, + "inactive": 38 + }, + { + "t": 448.52000000000004, + "active": 15, + "waiting": 56, + "inactive": 38 + }, + { + "t": 448.6, + "active": 16, + "waiting": 55, + "inactive": 38 + }, + { + "t": 448.75, + "active": 16, + "waiting": 56, + "inactive": 37 + }, + { + "t": 449.09000000000003, + "active": 15, + "waiting": 57, + "inactive": 36 + }, + { + "t": 449.12, + "active": 16, + "waiting": 56, + "inactive": 36 + }, + { + "t": 449.44, + "active": 16, + "waiting": 57, + "inactive": 35 + }, + { + "t": 449.45000000000005, + "active": 15, + "waiting": 57, + "inactive": 35 + }, + { + "t": 449.48, + "active": 16, + "waiting": 56, + "inactive": 35 + }, + { + "t": 449.82, + "active": 15, + "waiting": 56, + "inactive": 35 + }, + { + "t": 449.86, + "active": 14, + "waiting": 56, + "inactive": 35 + }, + { + "t": 449.87, + "active": 15, + "waiting": 55, + "inactive": 35 + }, + { + "t": 449.88, + "active": 16, + "waiting": 54, + "inactive": 35 + }, + { + "t": 449.96, + "active": 16, + "waiting": 55, + "inactive": 34 + }, + { + "t": 449.97, + "active": 15, + "waiting": 55, + "inactive": 34 + }, + { + "t": 450.0, + "active": 16, + "waiting": 54, + "inactive": 34 + }, + { + "t": 450.09000000000003, + "active": 15, + "waiting": 54, + "inactive": 34 + }, + { + "t": 450.18, + "active": 16, + "waiting": 53, + "inactive": 34 + }, + { + "t": 450.44, + "active": 16, + "waiting": 54, + "inactive": 33 + }, + { + "t": 450.53, + "active": 15, + "waiting": 55, + "inactive": 32 + }, + { + "t": 450.56, + "active": 16, + "waiting": 54, + "inactive": 32 + }, + { + "t": 450.7, + "active": 15, + "waiting": 54, + "inactive": 32 + }, + { + "t": 450.89, + "active": 16, + "waiting": 54, + "inactive": 31 + }, + { + "t": 451.08, + "active": 15, + "waiting": 54, + "inactive": 31 + }, + { + "t": 451.12, + "active": 16, + "waiting": 53, + "inactive": 31 + }, + { + "t": 451.15, + "active": 15, + "waiting": 53, + "inactive": 31 + }, + { + "t": 451.25, + "active": 16, + "waiting": 53, + "inactive": 30 + }, + { + "t": 452.65, + "active": 15, + "waiting": 53, + "inactive": 30 + }, + { + "t": 452.89, + "active": 16, + "waiting": 52, + "inactive": 30 + }, + { + "t": 453.07, + "active": 16, + "waiting": 53, + "inactive": 29 + }, + { + "t": 453.21, + "active": 15, + "waiting": 53, + "inactive": 29 + }, + { + "t": 453.34, + "active": 16, + "waiting": 52, + "inactive": 29 + }, + { + "t": 454.25, + "active": 15, + "waiting": 52, + "inactive": 29 + }, + { + "t": 454.45, + "active": 15, + "waiting": 51, + "inactive": 29 + }, + { + "t": 454.69, + "active": 16, + "waiting": 50, + "inactive": 29 + }, + { + "t": 455.18, + "active": 15, + "waiting": 50, + "inactive": 29 + }, + { + "t": 455.33, + "active": 16, + "waiting": 49, + "inactive": 29 + }, + { + "t": 455.76, + "active": 15, + "waiting": 49, + "inactive": 29 + }, + { + "t": 455.97, + "active": 16, + "waiting": 48, + "inactive": 29 + }, + { + "t": 456.26000000000005, + "active": 15, + "waiting": 48, + "inactive": 29 + }, + { + "t": 456.45, + "active": 16, + "waiting": 47, + "inactive": 29 + }, + { + "t": 457.13, + "active": 15, + "waiting": 48, + "inactive": 28 + }, + { + "t": 457.47, + "active": 16, + "waiting": 47, + "inactive": 28 + }, + { + "t": 457.89, + "active": 16, + "waiting": 48, + "inactive": 27 + }, + { + "t": 458.08, + "active": 15, + "waiting": 48, + "inactive": 27 + }, + { + "t": 458.5, + "active": 16, + "waiting": 47, + "inactive": 27 + }, + { + "t": 459.3, + "active": 16, + "waiting": 48, + "inactive": 26 + }, + { + "t": 459.55, + "active": 15, + "waiting": 49, + "inactive": 25 + }, + { + "t": 459.72, + "active": 16, + "waiting": 49, + "inactive": 24 + }, + { + "t": 459.86, + "active": 16, + "waiting": 50, + "inactive": 23 + }, + { + "t": 460.55, + "active": 15, + "waiting": 50, + "inactive": 23 + }, + { + "t": 460.65, + "active": 16, + "waiting": 50, + "inactive": 22 + }, + { + "t": 461.05, + "active": 15, + "waiting": 51, + "inactive": 21 + }, + { + "t": 461.14, + "active": 16, + "waiting": 50, + "inactive": 21 + }, + { + "t": 461.23999999999995, + "active": 15, + "waiting": 50, + "inactive": 21 + }, + { + "t": 461.65, + "active": 16, + "waiting": 49, + "inactive": 21 + }, + { + "t": 462.56, + "active": 15, + "waiting": 49, + "inactive": 21 + }, + { + "t": 462.58, + "active": 16, + "waiting": 48, + "inactive": 21 + }, + { + "t": 463.32, + "active": 16, + "waiting": 49, + "inactive": 20 + }, + { + "t": 464.23, + "active": 15, + "waiting": 49, + "inactive": 20 + }, + { + "t": 464.77, + "active": 16, + "waiting": 48, + "inactive": 20 + }, + { + "t": 467.38, + "active": 15, + "waiting": 48, + "inactive": 20 + }, + { + "t": 467.43, + "active": 16, + "waiting": 47, + "inactive": 20 + }, + { + "t": 468.39, + "active": 15, + "waiting": 47, + "inactive": 20 + }, + { + "t": 468.48, + "active": 16, + "waiting": 46, + "inactive": 20 + }, + { + "t": 469.49, + "active": 15, + "waiting": 46, + "inactive": 20 + }, + { + "t": 469.54, + "active": 16, + "waiting": 45, + "inactive": 20 + }, + { + "t": 471.67, + "active": 15, + "waiting": 45, + "inactive": 20 + }, + { + "t": 471.8, + "active": 16, + "waiting": 44, + "inactive": 20 + }, + { + "t": 474.33, + "active": 15, + "waiting": 44, + "inactive": 20 + }, + { + "t": 474.55, + "active": 16, + "waiting": 43, + "inactive": 20 + }, + { + "t": 474.72, + "active": 15, + "waiting": 44, + "inactive": 19 + }, + { + "t": 474.91, + "active": 16, + "waiting": 43, + "inactive": 19 + }, + { + "t": 483.28999999999996, + "active": 16, + "waiting": 44, + "inactive": 18 + }, + { + "t": 484.5, + "active": 15, + "waiting": 45, + "inactive": 17 + }, + { + "t": 484.71, + "active": 16, + "waiting": 44, + "inactive": 17 + }, + { + "t": 489.69, + "active": 15, + "waiting": 44, + "inactive": 17 + }, + { + "t": 489.79, + "active": 16, + "waiting": 43, + "inactive": 17 + }, + { + "t": 501.76, + "active": 15, + "waiting": 44, + "inactive": 16 + }, + { + "t": 501.78, + "active": 16, + "waiting": 43, + "inactive": 16 + }, + { + "t": 502.59999999999997, + "active": 15, + "waiting": 44, + "inactive": 15 + }, + { + "t": 503.2, + "active": 16, + "waiting": 43, + "inactive": 15 + }, + { + "t": 504.38, + "active": 15, + "waiting": 44, + "inactive": 14 + }, + { + "t": 504.72, + "active": 16, + "waiting": 44, + "inactive": 13 + }, + { + "t": 504.95000000000005, + "active": 15, + "waiting": 44, + "inactive": 13 + }, + { + "t": 505.19, + "active": 16, + "waiting": 43, + "inactive": 13 + }, + { + "t": 511.03999999999996, + "active": 15, + "waiting": 44, + "inactive": 12 + }, + { + "t": 511.47, + "active": 16, + "waiting": 43, + "inactive": 12 + }, + { + "t": 516.02, + "active": 15, + "waiting": 43, + "inactive": 12 + }, + { + "t": 516.49, + "active": 16, + "waiting": 42, + "inactive": 12 + }, + { + "t": 518.19, + "active": 15, + "waiting": 42, + "inactive": 12 + }, + { + "t": 518.57, + "active": 16, + "waiting": 41, + "inactive": 12 + }, + { + "t": 521.1, + "active": 15, + "waiting": 41, + "inactive": 12 + }, + { + "t": 521.6, + "active": 16, + "waiting": 40, + "inactive": 12 + }, + { + "t": 522.4100000000001, + "active": 15, + "waiting": 42, + "inactive": 10 + }, + { + "t": 522.84, + "active": 16, + "waiting": 41, + "inactive": 10 + }, + { + "t": 523.5400000000001, + "active": 15, + "waiting": 41, + "inactive": 10 + }, + { + "t": 523.68, + "active": 16, + "waiting": 40, + "inactive": 10 + }, + { + "t": 523.6800000000001, + "active": 15, + "waiting": 40, + "inactive": 10 + }, + { + "t": 523.88, + "active": 16, + "waiting": 39, + "inactive": 10 + }, + { + "t": 525.2, + "active": 15, + "waiting": 39, + "inactive": 10 + }, + { + "t": 525.44, + "active": 16, + "waiting": 38, + "inactive": 10 + }, + { + "t": 525.71, + "active": 15, + "waiting": 38, + "inactive": 10 + }, + { + "t": 525.83, + "active": 16, + "waiting": 37, + "inactive": 10 + }, + { + "t": 526.1800000000001, + "active": 15, + "waiting": 37, + "inactive": 10 + }, + { + "t": 526.37, + "active": 16, + "waiting": 36, + "inactive": 10 + }, + { + "t": 527.19, + "active": 15, + "waiting": 36, + "inactive": 10 + }, + { + "t": 527.34, + "active": 16, + "waiting": 35, + "inactive": 10 + }, + { + "t": 528.3, + "active": 15, + "waiting": 35, + "inactive": 10 + }, + { + "t": 528.58, + "active": 16, + "waiting": 34, + "inactive": 10 + }, + { + "t": 531.45, + "active": 15, + "waiting": 34, + "inactive": 10 + }, + { + "t": 531.72, + "active": 16, + "waiting": 33, + "inactive": 10 + }, + { + "t": 533.3100000000001, + "active": 15, + "waiting": 33, + "inactive": 10 + }, + { + "t": 533.55, + "active": 16, + "waiting": 32, + "inactive": 10 + }, + { + "t": 533.89, + "active": 15, + "waiting": 32, + "inactive": 10 + }, + { + "t": 534.33, + "active": 16, + "waiting": 31, + "inactive": 10 + }, + { + "t": 534.48, + "active": 15, + "waiting": 31, + "inactive": 10 + }, + { + "t": 534.73, + "active": 16, + "waiting": 30, + "inactive": 10 + }, + { + "t": 535.31, + "active": 15, + "waiting": 30, + "inactive": 10 + }, + { + "t": 535.35, + "active": 16, + "waiting": 29, + "inactive": 10 + }, + { + "t": 535.4799999999999, + "active": 15, + "waiting": 29, + "inactive": 10 + }, + { + "t": 535.83, + "active": 16, + "waiting": 28, + "inactive": 10 + }, + { + "t": 536.89, + "active": 15, + "waiting": 28, + "inactive": 10 + }, + { + "t": 537.13, + "active": 16, + "waiting": 27, + "inactive": 10 + }, + { + "t": 538.72, + "active": 15, + "waiting": 27, + "inactive": 10 + }, + { + "t": 538.99, + "active": 16, + "waiting": 26, + "inactive": 10 + }, + { + "t": 539.49, + "active": 15, + "waiting": 26, + "inactive": 10 + }, + { + "t": 539.81, + "active": 16, + "waiting": 25, + "inactive": 10 + }, + { + "t": 541.0, + "active": 15, + "waiting": 25, + "inactive": 10 + }, + { + "t": 541.06, + "active": 16, + "waiting": 24, + "inactive": 10 + }, + { + "t": 542.9, + "active": 15, + "waiting": 24, + "inactive": 10 + }, + { + "t": 543.3599999999999, + "active": 14, + "waiting": 24, + "inactive": 10 + }, + { + "t": 543.36, + "active": 15, + "waiting": 23, + "inactive": 10 + }, + { + "t": 543.52, + "active": 16, + "waiting": 22, + "inactive": 10 + }, + { + "t": 544.76, + "active": 15, + "waiting": 22, + "inactive": 10 + }, + { + "t": 544.81, + "active": 16, + "waiting": 21, + "inactive": 10 + }, + { + "t": 546.93, + "active": 15, + "waiting": 21, + "inactive": 10 + }, + { + "t": 546.99, + "active": 16, + "waiting": 20, + "inactive": 10 + }, + { + "t": 547.69, + "active": 15, + "waiting": 20, + "inactive": 10 + }, + { + "t": 547.98, + "active": 16, + "waiting": 19, + "inactive": 10 + }, + { + "t": 548.1099999999999, + "active": 15, + "waiting": 19, + "inactive": 10 + }, + { + "t": 548.33, + "active": 16, + "waiting": 18, + "inactive": 10 + }, + { + "t": 548.6600000000001, + "active": 15, + "waiting": 18, + "inactive": 10 + }, + { + "t": 548.78, + "active": 16, + "waiting": 17, + "inactive": 10 + }, + { + "t": 549.3100000000001, + "active": 15, + "waiting": 17, + "inactive": 10 + }, + { + "t": 549.48, + "active": 16, + "waiting": 16, + "inactive": 10 + }, + { + "t": 550.5500000000001, + "active": 15, + "waiting": 16, + "inactive": 10 + }, + { + "t": 550.62, + "active": 16, + "waiting": 15, + "inactive": 10 + }, + { + "t": 550.75, + "active": 15, + "waiting": 15, + "inactive": 10 + }, + { + "t": 550.77, + "active": 16, + "waiting": 14, + "inactive": 10 + }, + { + "t": 551.5500000000001, + "active": 15, + "waiting": 14, + "inactive": 10 + }, + { + "t": 551.69, + "active": 16, + "waiting": 13, + "inactive": 10 + }, + { + "t": 551.72, + "active": 15, + "waiting": 13, + "inactive": 10 + }, + { + "t": 551.83, + "active": 16, + "waiting": 12, + "inactive": 10 + }, + { + "t": 553.14, + "active": 15, + "waiting": 12, + "inactive": 10 + }, + { + "t": 553.21, + "active": 16, + "waiting": 11, + "inactive": 10 + }, + { + "t": 553.49, + "active": 15, + "waiting": 11, + "inactive": 10 + }, + { + "t": 553.53, + "active": 16, + "waiting": 10, + "inactive": 10 + }, + { + "t": 554.1, + "active": 15, + "waiting": 10, + "inactive": 10 + }, + { + "t": 554.12, + "active": 16, + "waiting": 9, + "inactive": 10 + }, + { + "t": 554.26, + "active": 15, + "waiting": 9, + "inactive": 10 + }, + { + "t": 554.51, + "active": 16, + "waiting": 8, + "inactive": 10 + }, + { + "t": 555.1, + "active": 15, + "waiting": 8, + "inactive": 10 + }, + { + "t": 555.32, + "active": 16, + "waiting": 7, + "inactive": 10 + }, + { + "t": 555.4, + "active": 15, + "waiting": 7, + "inactive": 10 + }, + { + "t": 555.54, + "active": 16, + "waiting": 6, + "inactive": 10 + }, + { + "t": 555.69, + "active": 15, + "waiting": 6, + "inactive": 10 + }, + { + "t": 555.91, + "active": 16, + "waiting": 5, + "inactive": 10 + }, + { + "t": 557.02, + "active": 15, + "waiting": 5, + "inactive": 10 + }, + { + "t": 557.07, + "active": 16, + "waiting": 4, + "inactive": 10 + }, + { + "t": 557.3499999999999, + "active": 15, + "waiting": 4, + "inactive": 10 + }, + { + "t": 557.45, + "active": 16, + "waiting": 3, + "inactive": 10 + }, + { + "t": 559.64, + "active": 15, + "waiting": 3, + "inactive": 10 + }, + { + "t": 559.87, + "active": 16, + "waiting": 2, + "inactive": 10 + }, + { + "t": 560.0200000000001, + "active": 15, + "waiting": 2, + "inactive": 10 + }, + { + "t": 560.18, + "active": 16, + "waiting": 1, + "inactive": 10 + }, + { + "t": 560.66, + "active": 15, + "waiting": 1, + "inactive": 10 + }, + { + "t": 560.75, + "active": 16, + "waiting": 0, + "inactive": 10 + }, + { + "t": 561.68, + "active": 15, + "waiting": 0, + "inactive": 10 + }, + { + "t": 562.2, + "active": 14, + "waiting": 0, + "inactive": 10 + }, + { + "t": 566.6700000000001, + "active": 13, + "waiting": 0, + "inactive": 10 + }, + { + "t": 567.1999999999999, + "active": 12, + "waiting": 0, + "inactive": 10 + }, + { + "t": 568.3, + "active": 11, + "waiting": 0, + "inactive": 10 + }, + { + "t": 571.94, + "active": 10, + "waiting": 0, + "inactive": 10 + }, + { + "t": 575.35, + "active": 9, + "waiting": 0, + "inactive": 10 + }, + { + "t": 577.92, + "active": 8, + "waiting": 0, + "inactive": 10 + }, + { + "t": 585.63, + "active": 7, + "waiting": 0, + "inactive": 10 + }, + { + "t": 586.21, + "active": 6, + "waiting": 2, + "inactive": 8 + }, + { + "t": 586.42, + "active": 7, + "waiting": 1, + "inactive": 8 + }, + { + "t": 592.87, + "active": 8, + "waiting": 0, + "inactive": 8 + }, + { + "t": 593.28, + "active": 7, + "waiting": 0, + "inactive": 8 + }, + { + "t": 594.93, + "active": 6, + "waiting": 1, + "inactive": 7 + }, + { + "t": 595.23, + "active": 7, + "waiting": 0, + "inactive": 7 + }, + { + "t": 596.49, + "active": 6, + "waiting": 1, + "inactive": 6 + }, + { + "t": 596.52, + "active": 7, + "waiting": 0, + "inactive": 6 + }, + { + "t": 598.13, + "active": 6, + "waiting": 0, + "inactive": 6 + }, + { + "t": 598.6, + "active": 5, + "waiting": 0, + "inactive": 6 + }, + { + "t": 599.1, + "active": 4, + "waiting": 0, + "inactive": 6 + }, + { + "t": 599.52, + "active": 3, + "waiting": 0, + "inactive": 6 + }, + { + "t": 599.6899999999999, + "active": 2, + "waiting": 0, + "inactive": 6 + }, + { + "t": 610.77, + "active": 3, + "waiting": 0, + "inactive": 5 + }, + { + "t": 632.73, + "active": 2, + "waiting": 0, + "inactive": 5 + }, + { + "t": 665.53, + "active": 3, + "waiting": 0, + "inactive": 3 + }, + { + "t": 668.4599999999999, + "active": 2, + "waiting": 0, + "inactive": 3 + }, + { + "t": 668.9499999999999, + "active": 1, + "waiting": 0, + "inactive": 3 + }, + { + "t": 791.79, + "active": 3, + "waiting": 0, + "inactive": 0 + }, + { + "t": 795.3, + "active": 2, + "waiting": 0, + "inactive": 0 + }, + { + "t": 797.9399999999999, + "active": 1, + "waiting": 0, + "inactive": 0 + }, + { + "t": 802.68, + "active": 0, + "waiting": 0, + "inactive": 0 } +]; +const CPU_USAGE = [ + [ + 0.9588997, + 5.172413793103445 + ], + [ + 1.0896028, + 36.87943262411347 + ], + [ + 1.2997155, + 59.183673469387756 + ], + [ + 1.4179929, + 100.0 + ], + [ + 1.5523863, + 100.0 + ], + [ + 1.6996286, + 100.0 + ], + [ + 1.8405849, + 29.25170068027211 + ], + [ + 1.9439346, + 14.782608695652172 + ], + [ + 2.0622861, + 15.044247787610615 + ], + [ + 2.1749845, + 13.392857142857139 + ], + [ + 2.3801025, + 52.475247524752476 + ], + [ + 2.4815907, + 84.82142857142857 + ], + [ + 2.6551108, + 100.0 + ], + [ + 2.8343375, + 100.0 + ], + [ + 2.9405316, + 100.0 + ], + [ + 3.0768815, + 100.0 + ], + [ + 3.1795273, + 100.0 + ], + [ + 3.297598, + 100.0 + ], + [ + 3.4283852, + 100.0 + ], + [ + 3.7617462, + 100.0 + ], + [ + 3.9129877, + 100.0 + ], + [ + 4.1525538, + 100.0 + ], + [ + 4.4235718, + 100.0 + ], + [ + 4.6813817, + 99.56709956709956 + ], + [ + 4.9009666, + 100.0 + ], + [ + 5.0844376, + 100.0 + ], + [ + 5.2784217, + 100.0 + ], + [ + 5.3975602, + 99.08256880733946 + ], + [ + 5.6198034, + 100.0 + ], + [ + 5.8144162, + 98.73417721518987 + ], + [ + 6.02493, + 100.0 + ], + [ + 6.3571905, + 100.0 + ], + [ + 6.6556421, + 100.0 + ], + [ + 6.8008312, + 98.54014598540147 + ], + [ + 6.9804293, + 100.0 + ], + [ + 7.0960551, + 100.0 + ], + [ + 7.6552869999999995, + 100.0 + ], + [ + 8.4173572, + 100.0 + ], + [ + 9.4224609, + 100.0 + ], + [ + 9.6003934, + 100.0 + ], + [ + 9.7020627, + 100.0 + ], + [ + 9.9936348, + 100.0 + ], + [ + 10.7475107, + 100.0 + ], + [ + 10.867363, + 100.0 + ], + [ + 11.0155859, + 100.0 + ], + [ + 11.1437397, + 100.0 + ], + [ + 11.2734401, + 100.0 + ], + [ + 11.3886545, + 100.0 + ], + [ + 11.5087499, + 100.0 + ], + [ + 11.7683304, + 100.0 + ], + [ + 12.0951459, + 100.0 + ], + [ + 12.2093287, + 100.0 + ], + [ + 12.6713922, + 100.0 + ], + [ + 12.8012881, + 99.06542056074767 + ], + [ + 12.9493208, + 100.0 + ], + [ + 13.1423897, + 100.0 + ], + [ + 13.3534525, + 100.0 + ], + [ + 13.5581588, + 100.0 + ], + [ + 13.6586064, + 96.15384615384616 + ], + [ + 13.7962396, + 100.0 + ], + [ + 13.9857634, + 95.45454545454545 + ], + [ + 14.090627, + 100.0 + ], + [ + 14.1991275, + 100.0 + ], + [ + 14.591357, + 91.05882352941177 + ], + [ + 14.7167163, + 100.0 + ], + [ + 14.988442299999999, + 96.40287769784173 + ], + [ + 15.2856138, + 100.0 + ], + [ + 15.4011686, + 100.0 + ], + [ + 15.5078641, + 100.0 + ], + [ + 15.6773136, + 100.0 + ], + [ + 15.8531475, + 100.0 + ], + [ + 16.1873268, + 100.0 + ], + [ + 16.3281038, + 100.0 + ], + [ + 16.4945396, + 100.0 + ], + [ + 16.8714254, + 100.0 + ], + [ + 17.012324, + 100.0 + ], + [ + 17.2002277, + 100.0 + ], + [ + 17.3581954, + 100.0 + ], + [ + 17.4741034, + 100.0 + ], + [ + 17.5833787, + 77.47747747747748 + ], + [ + 17.6834808, + 47.5 + ], + [ + 17.8469668, + 100.0 + ], + [ + 18.0535783, + 100.0 + ], + [ + 18.1755906, + 100.0 + ], + [ + 18.3004365, + 100.0 + ], + [ + 18.5515911, + 100.0 + ], + [ + 18.9434003, + 100.0 + ], + [ + 19.1657051, + 100.0 + ], + [ + 19.3311575, + 98.84393063583815 + ], + [ + 19.616883, + 100.0 + ], + [ + 19.9550015, + 100.0 + ], + [ + 20.1073154, + 100.0 + ], + [ + 20.2299702, + 100.0 + ], + [ + 20.4761897, + 100.0 + ], + [ + 20.5943819, + 100.0 + ], + [ + 20.8968131, + 100.0 + ], + [ + 21.0881592, + 100.0 + ], + [ + 21.3705024, + 100.0 + ], + [ + 21.8357506, + 100.0 + ], + [ + 21.9624659, + 100.0 + ], + [ + 22.9062948, + 100.0 + ], + [ + 23.0840336, + 100.0 + ], + [ + 23.4783063, + 100.0 + ], + [ + 23.6775746, + 100.0 + ], + [ + 24.1552418, + 100.0 + ], + [ + 24.4535387, + 100.0 + ], + [ + 25.1245245, + 100.0 + ], + [ + 26.2332186, + 100.0 + ], + [ + 26.3990097, + 100.0 + ], + [ + 26.6358999, + 100.0 + ], + [ + 27.0041638, + 100.0 + ], + [ + 27.1913431, + 100.0 + ], + [ + 27.3057055, + 100.0 + ], + [ + 27.4108181, + 100.0 + ], + [ + 27.660744, + 100.0 + ], + [ + 27.8215178, + 100.0 + ], + [ + 28.1668097, + 100.0 + ], + [ + 28.4784435, + 100.0 + ], + [ + 28.733965, + 100.0 + ], + [ + 29.4783753, + 100.0 + ], + [ + 29.726634, + 100.0 + ], + [ + 29.8726447, + 100.0 + ], + [ + 30.028655, + 100.0 + ], + [ + 30.1425486, + 100.0 + ], + [ + 30.2932014, + 100.0 + ], + [ + 30.5934905, + 100.0 + ], + [ + 31.2760823, + 100.0 + ], + [ + 31.4093982, + 87.93103448275862 + ], + [ + 31.9295205, + 100.0 + ], + [ + 32.4160372, + 100.0 + ], + [ + 32.5814309, + 100.0 + ], + [ + 32.9377059, + 100.0 + ], + [ + 33.1180582, + 100.0 + ], + [ + 33.5790549, + 100.0 + ], + [ + 33.730028, + 100.0 + ], + [ + 33.854492, + 77.34375 + ], + [ + 34.02293, + 100.0 + ], + [ + 34.2097372, + 100.0 + ], + [ + 34.7815697, + 100.0 + ], + [ + 35.1691752, + 100.0 + ], + [ + 35.3849609, + 100.0 + ], + [ + 36.0031212, + 100.0 + ], + [ + 36.2034985, + 100.0 + ], + [ + 36.3266771, + 100.0 + ], + [ + 36.4827087, + 100.0 + ], + [ + 37.0119418, + 100.0 + ], + [ + 37.3354842, + 100.0 + ], + [ + 37.7455955, + 100.0 + ], + [ + 38.0777822, + 100.0 + ], + [ + 38.2795015, + 100.0 + ], + [ + 38.6214321, + 100.0 + ], + [ + 39.0960711, + 100.0 + ], + [ + 39.2588773, + 100.0 + ], + [ + 39.689252, + 100.0 + ], + [ + 40.0415571, + 100.0 + ], + [ + 40.2886595, + 100.0 + ], + [ + 40.4273542, + 100.0 + ], + [ + 40.5404396, + 100.0 + ], + [ + 40.8750302, + 100.0 + ], + [ + 41.0609656, + 100.0 + ], + [ + 41.3987867, + 100.0 + ], + [ + 41.5026671, + 100.0 + ], + [ + 41.7547654, + 100.0 + ], + [ + 41.8647278, + 100.0 + ], + [ + 41.9706559, + 100.0 + ], + [ + 42.0916013, + 100.0 + ], + [ + 42.305747, + 100.0 + ], + [ + 42.4837102, + 100.0 + ], + [ + 42.8339873, + 100.0 + ], + [ + 43.0373346, + 100.0 + ], + [ + 43.2522502, + 100.0 + ], + [ + 43.4540537, + 100.0 + ], + [ + 43.6389338, + 100.0 + ], + [ + 43.9607309, + 100.0 + ], + [ + 44.2227126, + 100.0 + ], + [ + 44.5147984, + 100.0 + ], + [ + 44.6481495, + 100.0 + ], + [ + 44.9198124, + 100.0 + ], + [ + 45.0954039, + 100.0 + ], + [ + 45.2042194, + 100.0 + ], + [ + 45.3333097, + 100.0 + ], + [ + 45.5128563, + 100.0 + ], + [ + 45.70287, + 100.0 + ], + [ + 46.0601312, + 100.0 + ], + [ + 46.3492612, + 100.0 + ], + [ + 46.6950543, + 100.0 + ], + [ + 46.9363097, + 100.0 + ], + [ + 47.138046, + 100.0 + ], + [ + 47.2887165, + 100.0 + ], + [ + 47.5924114, + 100.0 + ], + [ + 47.870154, + 100.0 + ], + [ + 48.0593835, + 100.0 + ], + [ + 48.1822003, + 100.0 + ], + [ + 48.6417722, + 100.0 + ], + [ + 48.9780826, + 100.0 + ], + [ + 49.1096284, + 100.0 + ], + [ + 49.2873117, + 100.0 + ], + [ + 49.4654494, + 100.0 + ], + [ + 49.6365052, + 100.0 + ], + [ + 49.9973918, + 100.0 + ], + [ + 50.1076333, + 100.0 + ], + [ + 50.2596605, + 100.0 + ], + [ + 50.3597525, + 100.0 + ], + [ + 50.568746, + 100.0 + ], + [ + 50.7241311, + 100.0 + ], + [ + 50.8594531, + 100.0 + ], + [ + 51.1462223, + 100.0 + ], + [ + 51.2853774, + 100.0 + ], + [ + 51.4353009, + 100.0 + ], + [ + 51.6649473, + 100.0 + ], + [ + 51.7979021, + 100.0 + ], + [ + 51.9151889, + 100.0 + ], + [ + 52.1185312, + 100.0 + ], + [ + 52.3397956, + 100.0 + ], + [ + 52.4951963, + 100.0 + ], + [ + 52.6505773, + 100.0 + ], + [ + 52.8541149, + 100.0 + ], + [ + 53.0439175, + 94.76439790575917 + ], + [ + 53.2171312, + 100.0 + ], + [ + 53.4002493, + 96.02272727272727 + ], + [ + 53.7054761, + 84.0625 + ], + [ + 53.9506007, + 94.46640316205534 + ], + [ + 54.1174575, + 99.41176470588235 + ], + [ + 54.542691, + 87.05882352941177 + ], + [ + 54.6485018, + 100.0 + ], + [ + 54.9121024, + 100.0 + ], + [ + 55.0672004, + 99.42857142857143 + ], + [ + 55.2300975, + 99.31506849315069 + ], + [ + 55.5762291, + 100.0 + ], + [ + 56.1897921, + 39.87138263665595 + ], + [ + 56.7024816, + 24.62406015037594 + ], + [ + 57.2179293, + 29.961832061068705 + ], + [ + 57.3730975, + 85.625 + ], + [ + 57.5978189, + 100.0 + ], + [ + 57.8305217, + 100.0 + ], + [ + 58.0441727, + 100.0 + ], + [ + 58.519611, + 100.0 + ], + [ + 58.6524723, + 100.0 + ], + [ + 58.8596377, + 100.0 + ], + [ + 59.0027688, + 100.0 + ], + [ + 59.1972824, + 100.0 + ], + [ + 59.388577, + 100.0 + ], + [ + 59.5768705, + 100.0 + ], + [ + 59.7104394, + 100.0 + ], + [ + 59.8554857, + 100.0 + ], + [ + 59.9675754, + 100.0 + ], + [ + 60.1188535, + 100.0 + ], + [ + 60.2380667, + 100.0 + ], + [ + 60.3677261, + 100.0 + ], + [ + 60.4944492, + 100.0 + ], + [ + 60.6229759, + 100.0 + ], + [ + 60.7453845, + 100.0 + ], + [ + 60.8609291, + 100.0 + ], + [ + 60.9845843, + 100.0 + ], + [ + 61.5662704, + 96.95945945945945 + ], + [ + 61.6714061, + 100.0 + ], + [ + 61.8251743, + 100.0 + ], + [ + 61.9598718, + 100.0 + ], + [ + 62.1548302, + 100.0 + ], + [ + 62.2663027, + 100.0 + ], + [ + 62.7301224, + 98.08510638297872 + ], + [ + 62.8700336, + 99.34210526315789 + ], + [ + 62.9960436, + 100.0 + ], + [ + 63.3365, + 100.0 + ], + [ + 63.8525768, + 100.0 + ], + [ + 64.3742344, + 100.0 + ], + [ + 64.5271544, + 100.0 + ], + [ + 65.0587962, + 100.0 + ], + [ + 65.6547338, + 99.47552447552448 + ], + [ + 66.3004385, + 99.85141158989599 + ], + [ + 66.4046329, + 100.0 + ], + [ + 66.5074085, + 100.0 + ], + [ + 66.6830024, + 100.0 + ], + [ + 66.8934079, + 100.0 + ], + [ + 67.1062312, + 100.0 + ], + [ + 67.4060786, + 100.0 + ], + [ + 67.5927945, + 100.0 + ], + [ + 68.0165602, + 100.0 + ], + [ + 68.218972, + 100.0 + ], + [ + 68.3323152, + 100.0 + ], + [ + 68.4392988, + 100.0 + ], + [ + 68.8133988, + 100.0 + ], + [ + 68.9436923, + 100.0 + ], + [ + 69.2421696, + 100.0 + ], + [ + 69.5198569, + 100.0 + ], + [ + 69.7238931, + 100.0 + ], + [ + 69.9701165, + 100.0 + ], + [ + 70.0758468, + 100.0 + ], + [ + 70.2764038, + 100.0 + ], + [ + 70.3899619, + 100.0 + ], + [ + 70.5125254, + 100.0 + ], + [ + 70.7235795, + 100.0 + ], + [ + 70.9725545, + 100.0 + ], + [ + 71.1558317, + 100.0 + ], + [ + 71.2958854, + 100.0 + ], + [ + 71.6548587, + 100.0 + ], + [ + 71.8498955, + 100.0 + ], + [ + 71.9551597, + 100.0 + ], + [ + 72.2026768, + 100.0 + ], + [ + 72.3567951, + 100.0 + ], + [ + 72.8413463, + 87.70491803278688 + ], + [ + 72.9568081, + 92.0863309352518 + ], + [ + 73.2834287, + 100.0 + ], + [ + 73.4109553, + 100.0 + ], + [ + 73.5646301, + 100.0 + ], + [ + 73.7260325, + 100.0 + ], + [ + 73.9420454, + 100.0 + ], + [ + 74.1874586, + 100.0 + ], + [ + 74.6875823, + 100.0 + ], + [ + 75.004371, + 100.0 + ], + [ + 75.236066, + 100.0 + ], + [ + 75.9299622, + 100.0 + ], + [ + 76.143757, + 100.0 + ], + [ + 76.277207, + 100.0 + ], + [ + 76.6329274, + 99.45054945054945 + ], + [ + 76.7893362, + 100.0 + ], + [ + 77.0008036, + 100.0 + ], + [ + 77.1208504, + 100.0 + ], + [ + 77.321165, + 100.0 + ], + [ + 77.7734266, + 99.78213507625273 + ], + [ + 78.0990027, + 90.990990990991 + ], + [ + 78.5902671, + 100.0 + ], + [ + 78.763917, + 100.0 + ], + [ + 79.0334613, + 100.0 + ], + [ + 79.2532446, + 100.0 + ], + [ + 79.5717853, + 100.0 + ], + [ + 79.7636023, + 100.0 + ], + [ + 80.2777639, + 100.0 + ], + [ + 80.8839168, + 100.0 + ], + [ + 81.560092, + 100.0 + ], + [ + 82.2091193, + 100.0 + ], + [ + 82.9204163, + 100.0 + ], + [ + 83.5479549, + 100.0 + ], + [ + 84.1902392, + 100.0 + ], + [ + 84.7082176, + 100.0 + ], + [ + 85.0025636, + 100.0 + ], + [ + 85.3540642, + 100.0 + ], + [ + 85.5532081, + 100.0 + ], + [ + 85.6586488, + 100.0 + ], + [ + 85.93458269999999, + 100.0 + ], + [ + 86.2353248, + 100.0 + ], + [ + 86.5601014, + 100.0 + ], + [ + 86.8250109, + 100.0 + ], + [ + 87.0108222, + 100.0 + ], + [ + 87.584066, + 100.0 + ], + [ + 87.993638, + 100.0 + ], + [ + 88.4352476, + 100.0 + ], + [ + 88.6354505, + 100.0 + ], + [ + 88.7498946, + 100.0 + ], + [ + 89.2882099, + 100.0 + ], + [ + 89.8884982, + 100.0 + ], + [ + 90.1664519, + 100.0 + ], + [ + 90.3671648, + 100.0 + ], + [ + 90.8377722, + 100.0 + ], + [ + 91.1320041, + 100.0 + ], + [ + 91.386719, + 100.0 + ], + [ + 91.7573283, + 100.0 + ], + [ + 92.3421645, + 100.0 + ], + [ + 92.8085588, + 100.0 + ], + [ + 93.505173, + 100.0 + ], + [ + 94.0759684, + 100.0 + ], + [ + 94.384069, + 100.0 + ], + [ + 95.5900893, + 100.0 + ], + [ + 96.475057, + 100.0 + ], + [ + 97.4289277, + 100.0 + ], + [ + 98.0835038, + 100.0 + ], + [ + 98.5012624, + 100.0 + ], + [ + 99.1962814, + 100.0 + ], + [ + 99.4516904, + 100.0 + ], + [ + 100.1345046, + 100.0 + ], + [ + 100.8042359, + 100.0 + ], + [ + 101.2569637, + 100.0 + ], + [ + 101.6707087, + 100.0 + ], + [ + 101.9681001, + 100.0 + ], + [ + 102.6449107, + 100.0 + ], + [ + 103.179383, + 100.0 + ], + [ + 103.2813482, + 100.0 + ], + [ + 103.6021269, + 100.0 + ], + [ + 104.1600746, + 100.0 + ], + [ + 104.9475305, + 100.0 + ], + [ + 105.6139251, + 100.0 + ], + [ + 106.0462314, + 100.0 + ], + [ + 106.4000212, + 100.0 + ], + [ + 107.0653503, + 100.0 + ], + [ + 107.1798348, + 100.0 + ], + [ + 107.5240594, + 100.0 + ], + [ + 107.8401921, + 100.0 + ], + [ + 108.3718451, + 100.0 + ], + [ + 108.5647429, + 100.0 + ], + [ + 108.8900104, + 100.0 + ], + [ + 109.4659954, + 100.0 + ], + [ + 109.7378745, + 100.0 + ], + [ + 110.1568283, + 100.0 + ], + [ + 110.4015837, + 100.0 + ], + [ + 110.5160795, + 100.0 + ], + [ + 110.7047097, + 100.0 + ], + [ + 111.06387, + 100.0 + ], + [ + 111.3500326, + 100.0 + ], + [ + 111.4778997, + 100.0 + ], + [ + 111.806516, + 100.0 + ], + [ + 111.9412917, + 100.0 + ], + [ + 112.2039537, + 100.0 + ], + [ + 112.3787264, + 100.0 + ], + [ + 112.6985061, + 100.0 + ], + [ + 112.9675614, + 100.0 + ], + [ + 113.2082172, + 100.0 + ], + [ + 113.5515713, + 100.0 + ], + [ + 113.9421303, + 100.0 + ], + [ + 114.3320663, + 100.0 + ], + [ + 114.7109635, + 100.0 + ], + [ + 114.8282175, + 100.0 + ], + [ + 114.9947952, + 100.0 + ], + [ + 115.1090115, + 100.0 + ], + [ + 115.2329212, + 98.9247311827957 + ], + [ + 115.3677482, + 100.0 + ], + [ + 115.8178102, + 100.0 + ], + [ + 116.0111509, + 100.0 + ], + [ + 116.1369625, + 100.0 + ], + [ + 116.3755507, + 100.0 + ], + [ + 116.6798471, + 100.0 + ], + [ + 117.120935, + 100.0 + ], + [ + 117.3827041, + 100.0 + ], + [ + 117.7191851, + 100.0 + ], + [ + 118.2384659, + 100.0 + ], + [ + 118.4703623, + 100.0 + ], + [ + 118.8349761, + 100.0 + ], + [ + 118.9952402, + 100.0 + ], + [ + 119.2092079, + 100.0 + ], + [ + 119.7422367, + 100.0 + ], + [ + 120.3154627, + 100.0 + ], + [ + 120.8600173, + 100.0 + ], + [ + 121.4086466, + 100.0 + ], + [ + 121.8473707, + 100.0 + ], + [ + 122.3695221, + 100.0 + ], + [ + 122.7053469, + 100.0 + ], + [ + 123.1893792, + 100.0 + ], + [ + 123.3206388, + 100.0 + ], + [ + 123.747559, + 100.0 + ], + [ + 124.2650438, + 99.64788732394366 + ], + [ + 124.6837768, + 100.0 + ], + [ + 124.9251288, + 100.0 + ], + [ + 125.0746953, + 100.0 + ], + [ + 125.6097074, + 100.0 + ], + [ + 125.8209417, + 100.0 + ], + [ + 126.3550185, + 100.0 + ], + [ + 127.0798046, + 100.0 + ], + [ + 127.4044816, + 100.0 + ], + [ + 127.5276919, + 100.0 + ], + [ + 128.074427, + 100.0 + ], + [ + 128.6647215, + 100.0 + ], + [ + 128.937922, + 100.0 + ], + [ + 129.1817291, + 100.0 + ], + [ + 129.739835, + 100.0 + ], + [ + 129.9832504, + 100.0 + ], + [ + 130.168922, + 100.0 + ], + [ + 130.6804049, + 100.0 + ], + [ + 131.4054265, + 100.0 + ], + [ + 131.9319354, + 100.0 + ], + [ + 132.1382678, + 100.0 + ], + [ + 132.24573, + 100.0 + ], + [ + 132.5550743, + 100.0 + ], + [ + 133.1061713, + 100.0 + ], + [ + 133.6241707, + 99.64093357271095 + ], + [ + 134.113171, + 100.0 + ], + [ + 134.6368569, + 100.0 + ], + [ + 135.0158676, + 100.0 + ], + [ + 135.5232843, + 100.0 + ], + [ + 136.0773557, + 100.0 + ], + [ + 136.6235346, + 100.0 + ], + [ + 137.1515678, + 100.0 + ], + [ + 137.6840222, + 100.0 + ], + [ + 138.2466785, + 100.0 + ], + [ + 138.8092434, + 100.0 + ], + [ + 139.344086, + 100.0 + ], + [ + 140.1201837, + 100.0 + ], + [ + 140.7035328, + 100.0 + ], + [ + 141.5190555, + 100.0 + ], + [ + 141.8733287, + 100.0 + ], + [ + 142.1956502, + 100.0 + ], + [ + 142.3810761, + 100.0 + ], + [ + 142.8462901, + 100.0 + ], + [ + 142.9859386, + 100.0 + ], + [ + 143.2808924, + 100.0 + ], + [ + 143.4187919, + 100.0 + ], + [ + 143.5493193, + 100.0 + ], + [ + 143.7407729, + 100.0 + ], + [ + 143.8860067, + 100.0 + ], + [ + 144.5286998, + 100.0 + ], + [ + 144.9789805, + 100.0 + ], + [ + 145.2240349, + 100.0 + ], + [ + 145.3594627, + 100.0 + ], + [ + 145.8626492, + 100.0 + ], + [ + 146.0217079, + 100.0 + ], + [ + 146.5538268, + 100.0 + ], + [ + 146.8461027, + 100.0 + ], + [ + 146.9461798, + 100.0 + ], + [ + 147.17822, + 100.0 + ], + [ + 147.6503856, + 100.0 + ], + [ + 148.1965474, + 100.0 + ], + [ + 148.7398601, + 100.0 + ], + [ + 149.3665264, + 100.0 + ], + [ + 149.4688216, + 100.0 + ], + [ + 150.0462199, + 100.0 + ], + [ + 150.216386, + 100.0 + ], + [ + 150.4086311, + 100.0 + ], + [ + 150.5355181, + 100.0 + ], + [ + 150.6524863, + 100.0 + ], + [ + 150.8134357, + 100.0 + ], + [ + 151.0463361, + 100.0 + ], + [ + 151.4154139, + 100.0 + ], + [ + 151.9296695, + 100.0 + ], + [ + 152.0588472, + 100.0 + ], + [ + 152.4571171, + 100.0 + ], + [ + 153.0524257, + 100.0 + ], + [ + 153.2079298, + 100.0 + ], + [ + 153.9020712, + 100.0 + ], + [ + 154.4780006, + 100.0 + ], + [ + 155.1648033, + 100.0 + ], + [ + 155.5044372, + 100.0 + ], + [ + 156.076126, + 100.0 + ], + [ + 156.3049852, + 100.0 + ], + [ + 156.8646267, + 100.0 + ], + [ + 157.3972668, + 100.0 + ], + [ + 158.042203, + 100.0 + ], + [ + 158.7336905, + 100.0 + ], + [ + 159.5064159, + 100.0 + ], + [ + 160.0210712, + 100.0 + ], + [ + 160.5865369, + 100.0 + ], + [ + 161.58557, + 100.0 + ], + [ + 161.8360737, + 100.0 + ], + [ + 162.3770514, + 100.0 + ], + [ + 162.9651697, + 100.0 + ], + [ + 163.6031272, + 100.0 + ], + [ + 163.8840674, + 100.0 + ], + [ + 164.5451896, + 100.0 + ], + [ + 165.0837231, + 100.0 + ], + [ + 165.8062748, + 100.0 + ], + [ + 166.4127743, + 100.0 + ], + [ + 166.7600945, + 100.0 + ], + [ + 167.2785514, + 100.0 + ], + [ + 167.8450811, + 100.0 + ], + [ + 168.3968466, + 100.0 + ], + [ + 169.0056408, + 100.0 + ], + [ + 169.644007, + 100.0 + ], + [ + 170.0862441, + 100.0 + ], + [ + 170.5377397, + 100.0 + ], + [ + 170.7054842, + 100.0 + ], + [ + 170.9977423, + 100.0 + ], + [ + 171.2247785, + 100.0 + ], + [ + 171.7638409, + 100.0 + ], + [ + 172.3661765, + 100.0 + ], + [ + 173.0036435, + 100.0 + ], + [ + 173.5344171, + 100.0 + ], + [ + 173.8533805, + 100.0 + ], + [ + 174.0033599, + 100.0 + ], + [ + 174.2919272, + 100.0 + ], + [ + 174.4579784, + 100.0 + ], + [ + 175.015674, + 100.0 + ], + [ + 175.6747659, + 100.0 + ], + [ + 176.0108936, + 100.0 + ], + [ + 176.2165496, + 100.0 + ], + [ + 176.4335243, + 100.0 + ], + [ + 177.1260463, + 100.0 + ], + [ + 177.5601399, + 100.0 + ], + [ + 178.0499453, + 100.0 + ], + [ + 178.2339175, + 100.0 + ], + [ + 178.4450804, + 100.0 + ], + [ + 179.0266267, + 100.0 + ], + [ + 179.5703919, + 100.0 + ], + [ + 179.8444929, + 100.0 + ], + [ + 180.0696043, + 100.0 + ], + [ + 180.231687, + 100.0 + ], + [ + 180.3772782, + 100.0 + ], + [ + 180.9541028, + 100.0 + ], + [ + 181.5677718, + 100.0 + ], + [ + 182.1819988, + 100.0 + ], + [ + 182.8244433, + 100.0 + ], + [ + 182.9508873, + 100.0 + ], + [ + 183.0646334, + 100.0 + ], + [ + 183.6729547, + 100.0 + ], + [ + 184.2169674, + 100.0 + ], + [ + 184.7614602, + 100.0 + ], + [ + 185.3514391, + 100.0 + ], + [ + 185.9600119, + 100.0 + ], + [ + 186.5360854, + 100.0 + ], + [ + 187.3448919, + 100.0 + ], + [ + 187.8588313, + 100.0 + ], + [ + 188.3844644, + 100.0 + ], + [ + 188.9615847, + 100.0 + ], + [ + 189.5226332, + 100.0 + ], + [ + 190.2557761, + 100.0 + ], + [ + 191.0605696, + 100.0 + ], + [ + 191.3809028, + 100.0 + ], + [ + 191.9870733, + 100.0 + ], + [ + 192.561384, + 100.0 + ], + [ + 193.2261512, + 100.0 + ], + [ + 193.9057687, + 100.0 + ], + [ + 194.4731699, + 100.0 + ], + [ + 194.5862571, + 100.0 + ], + [ + 194.9022996, + 100.0 + ], + [ + 195.4674163, + 100.0 + ], + [ + 196.0137424, + 100.0 + ], + [ + 196.638044, + 100.0 + ], + [ + 197.4121477, + 100.0 + ], + [ + 198.004325, + 100.0 + ], + [ + 198.6873915, + 100.0 + ], + [ + 199.3716228, + 100.0 + ], + [ + 199.9396319, + 100.0 + ], + [ + 200.0448214, + 100.0 + ], + [ + 200.5774436, + 100.0 + ], + [ + 201.2915435, + 100.0 + ], + [ + 202.0511698, + 100.0 + ], + [ + 202.77472, + 100.0 + ], + [ + 203.4297843, + 100.0 + ], + [ + 204.0905888, + 99.86263736263736 + ], + [ + 204.7902945, + 100.0 + ], + [ + 205.3367289, + 100.0 + ], + [ + 205.9888661, + 100.0 + ], + [ + 206.5708362, + 100.0 + ], + [ + 207.2214662, + 100.0 + ], + [ + 207.7490555, + 100.0 + ], + [ + 208.5736605, + 100.0 + ], + [ + 209.4260216, + 100.0 + ], + [ + 210.2897559, + 100.0 + ], + [ + 210.8481552, + 100.0 + ], + [ + 211.5432017, + 100.0 + ], + [ + 212.1217864, + 100.0 + ], + [ + 212.7436873, + 100.0 + ], + [ + 213.5045546, + 100.0 + ], + [ + 214.2499153, + 100.0 + ], + [ + 214.8344758, + 100.0 + ], + [ + 215.1813589, + 100.0 + ], + [ + 215.7200281, + 100.0 + ], + [ + 216.3902426, + 100.0 + ], + [ + 217.0411768, + 100.0 + ], + [ + 217.6992139, + 100.0 + ], + [ + 218.3705703, + 100.0 + ], + [ + 218.9205845, + 100.0 + ], + [ + 219.4575577, + 100.0 + ], + [ + 219.89109, + 100.0 + ], + [ + 220.1587826, + 100.0 + ], + [ + 220.2972238, + 100.0 + ], + [ + 220.8969649, + 100.0 + ], + [ + 221.128491, + 100.0 + ], + [ + 221.4503949, + 100.0 + ], + [ + 221.6030107, + 100.0 + ], + [ + 221.7238565, + 100.0 + ], + [ + 222.3679158, + 100.0 + ], + [ + 222.9993179, + 100.0 + ], + [ + 223.2557604, + 100.0 + ], + [ + 223.8018071, + 100.0 + ], + [ + 224.0481334, + 100.0 + ], + [ + 224.3560306, + 100.0 + ], + [ + 224.9333935, + 100.0 + ], + [ + 225.0623391, + 100.0 + ], + [ + 225.4764734, + 100.0 + ], + [ + 225.9709134, + 100.0 + ], + [ + 226.5480413, + 100.0 + ], + [ + 227.4861005, + 100.0 + ], + [ + 228.3403499, + 100.0 + ], + [ + 229.0934325, + 100.0 + ], + [ + 229.6438682, + 100.0 + ], + [ + 230.2735337, + 100.0 + ], + [ + 230.5967749, + 100.0 + ], + [ + 230.9420134, + 100.0 + ], + [ + 231.3732236, + 100.0 + ], + [ + 231.8328239, + 100.0 + ], + [ + 232.4698817, + 100.0 + ], + [ + 232.597946, + 100.0 + ], + [ + 233.1779096, + 100.0 + ], + [ + 233.7230267, + 100.0 + ], + [ + 233.9133674, + 100.0 + ], + [ + 234.1101124, + 100.0 + ], + [ + 234.4072046, + 100.0 + ], + [ + 234.735187, + 98.21958456973294 + ], + [ + 234.9427315, + 100.0 + ], + [ + 235.4351129, + 100.0 + ], + [ + 236.1161242, + 100.0 + ], + [ + 236.2979674, + 100.0 + ], + [ + 236.9008563, + 100.0 + ], + [ + 237.5058064, + 100.0 + ], + [ + 238.1220422, + 100.0 + ], + [ + 238.5965811, + 100.0 + ], + [ + 239.1585195, + 100.0 + ], + [ + 239.8944275, + 100.0 + ], + [ + 240.3134131, + 100.0 + ], + [ + 240.5645077, + 100.0 + ], + [ + 241.1434649, + 100.0 + ], + [ + 241.5107531, + 100.0 + ], + [ + 241.6153967, + 100.0 + ], + [ + 241.8344279, + 100.0 + ], + [ + 242.0722749, + 100.0 + ], + [ + 242.2929613, + 99.54954954954955 + ], + [ + 242.4099357, + 99.18032786885246 + ], + [ + 242.6695482, + 100.0 + ], + [ + 242.9687774, + 100.0 + ], + [ + 243.2227001, + 100.0 + ], + [ + 243.5656855, + 100.0 + ], + [ + 243.7787728, + 100.0 + ], + [ + 244.4071404, + 100.0 + ], + [ + 244.5793036, + 100.0 + ], + [ + 245.0113296, + 99.5260663507109 + ], + [ + 245.1973677, + 100.0 + ], + [ + 245.3248098, + 100.0 + ], + [ + 245.8343474, + 100.0 + ], + [ + 246.4945619, + 100.0 + ], + [ + 247.4060936, + 100.0 + ], + [ + 248.0137106, + 100.0 + ], + [ + 248.2336396, + 100.0 + ], + [ + 248.7407785, + 100.0 + ], + [ + 249.612981, + 100.0 + ], + [ + 250.6088639, + 100.0 + ], + [ + 252.5288974, + 100.0 + ], + [ + 252.8196515, + 100.0 + ], + [ + 253.356096, + 100.0 + ], + [ + 253.5524985, + 100.0 + ], + [ + 253.8451756, + 100.0 + ], + [ + 254.1137602, + 100.0 + ], + [ + 254.6186195, + 100.0 + ], + [ + 255.1339881, + 100.0 + ], + [ + 255.7158281, + 100.0 + ], + [ + 256.3969215, + 100.0 + ], + [ + 256.8927586, + 100.0 + ], + [ + 257.4186299, + 100.0 + ], + [ + 257.9117039, + 100.0 + ], + [ + 258.7399992, + 100.0 + ], + [ + 259.0431644, + 100.0 + ], + [ + 259.8853955, + 100.0 + ], + [ + 260.8148463, + 100.0 + ], + [ + 261.7884134, + 100.0 + ], + [ + 262.6424863, + 100.0 + ], + [ + 263.2028685, + 100.0 + ], + [ + 263.83071, + 100.0 + ], + [ + 264.0880968, + 100.0 + ], + [ + 264.6200837, + 100.0 + ], + [ + 264.9045552, + 100.0 + ], + [ + 265.5833186, + 100.0 + ], + [ + 266.1183735, + 100.0 + ], + [ + 266.4854816, + 100.0 + ], + [ + 267.0254391, + 100.0 + ], + [ + 267.6664859, + 100.0 + ], + [ + 268.5893204, + 100.0 + ], + [ + 269.8623497, + 100.0 + ], + [ + 270.4371233, + 100.0 + ], + [ + 270.7537427, + 100.0 + ], + [ + 271.0667995, + 100.0 + ], + [ + 271.3257185, + 100.0 + ], + [ + 271.4609918, + 100.0 + ], + [ + 272.1595482, + 100.0 + ], + [ + 272.3428177, + 100.0 + ], + [ + 272.7830493, + 100.0 + ], + [ + 272.9607249, + 100.0 + ], + [ + 273.3198108, + 100.0 + ], + [ + 273.4846379, + 100.0 + ], + [ + 273.6134704, + 100.0 + ], + [ + 273.7459219, + 100.0 + ], + [ + 274.0146013, + 100.0 + ], + [ + 274.2317875, + 100.0 + ], + [ + 274.3484111, + 100.0 + ], + [ + 274.5232033, + 100.0 + ], + [ + 274.8124673, + 100.0 + ], + [ + 274.9722798, + 100.0 + ], + [ + 275.1122247, + 97.87234042553192 + ], + [ + 275.2802358, + 100.0 + ], + [ + 275.5117839, + 100.0 + ], + [ + 275.6373371, + 100.0 + ], + [ + 276.0710207, + 100.0 + ], + [ + 276.7312185, + 100.0 + ], + [ + 277.124168, + 100.0 + ], + [ + 277.754346, + 100.0 + ], + [ + 278.2634399, + 100.0 + ], + [ + 278.8671546, + 100.0 + ], + [ + 279.3014965, + 100.0 + ], + [ + 279.8792351, + 100.0 + ], + [ + 280.1885089, + 100.0 + ], + [ + 280.927489, + 100.0 + ], + [ + 281.3659228, + 100.0 + ], + [ + 281.8072191, + 100.0 + ], + [ + 282.0427994, + 100.0 + ], + [ + 282.5109672, + 100.0 + ], + [ + 283.1293561, + 100.0 + ], + [ + 283.2567708, + 100.0 + ], + [ + 283.8183949, + 100.0 + ], + [ + 284.5065037, + 100.0 + ], + [ + 284.9428911, + 100.0 + ], + [ + 285.6996223, + 100.0 + ], + [ + 286.3543406, + 100.0 + ], + [ + 286.8742767, + 100.0 + ], + [ + 287.4612643, + 100.0 + ], + [ + 288.5052901, + 100.0 + ], + [ + 289.2986927, + 100.0 + ], + [ + 290.234082, + 100.0 + ], + [ + 290.8510198, + 100.0 + ], + [ + 290.9534499, + 100.0 + ], + [ + 291.5572194, + 100.0 + ], + [ + 292.0148223, + 100.0 + ], + [ + 292.5562904, + 100.0 + ], + [ + 293.0144835, + 100.0 + ], + [ + 293.5532073, + 100.0 + ], + [ + 293.8991028, + 100.0 + ], + [ + 294.36756, + 100.0 + ], + [ + 294.6364415, + 100.0 + ], + [ + 295.0082673, + 100.0 + ], + [ + 295.1905778, + 100.0 + ], + [ + 295.5281283, + 100.0 + ], + [ + 296.0036541, + 100.0 + ], + [ + 296.4222615, + 100.0 + ], + [ + 296.9033205, + 100.0 + ], + [ + 297.2811909, + 100.0 + ], + [ + 297.4932648, + 100.0 + ], + [ + 298.0369542, + 100.0 + ], + [ + 298.6056532, + 100.0 + ], + [ + 299.6821486, + 100.0 + ], + [ + 300.1397885, + 100.0 + ], + [ + 300.5097883, + 100.0 + ], + [ + 300.8002163, + 100.0 + ], + [ + 301.411774, + 100.0 + ], + [ + 301.8780472, + 100.0 + ], + [ + 302.2546473, + 100.0 + ], + [ + 302.5958538, + 100.0 + ], + [ + 302.7517397, + 100.0 + ], + [ + 303.1417515, + 100.0 + ], + [ + 303.6147119, + 100.0 + ], + [ + 304.3158555, + 100.0 + ], + [ + 304.5522853, + 100.0 + ], + [ + 305.0281354, + 100.0 + ], + [ + 305.3779893, + 100.0 + ], + [ + 305.9936789, + 100.0 + ], + [ + 306.581821, + 100.0 + ], + [ + 307.2312755, + 100.0 + ], + [ + 307.9634439, + 100.0 + ], + [ + 308.2052121, + 100.0 + ], + [ + 308.8209071, + 100.0 + ], + [ + 309.4324064, + 100.0 + ], + [ + 310.2752979, + 100.0 + ], + [ + 310.9053614, + 100.0 + ], + [ + 311.5530188, + 100.0 + ], + [ + 311.7869705, + 100.0 + ], + [ + 312.1233813, + 100.0 + ], + [ + 312.6947807, + 100.0 + ], + [ + 313.3511237, + 100.0 + ], + [ + 313.4722178, + 100.0 + ], + [ + 313.7547916, + 100.0 + ], + [ + 314.3086976, + 100.0 + ], + [ + 314.5450429, + 100.0 + ], + [ + 315.2135111, + 100.0 + ], + [ + 316.019537, + 100.0 + ], + [ + 316.7132136, + 100.0 + ], + [ + 317.5106871, + 100.0 + ], + [ + 318.1153117, + 100.0 + ], + [ + 318.2517593, + 100.0 + ], + [ + 318.8255863, + 100.0 + ], + [ + 319.5841733, + 100.0 + ], + [ + 319.8988931, + 100.0 + ], + [ + 320.0704168, + 100.0 + ], + [ + 320.3465671, + 100.0 + ], + [ + 320.7146675, + 100.0 + ], + [ + 320.9601384, + 100.0 + ], + [ + 321.4980999, + 100.0 + ], + [ + 322.2778975, + 100.0 + ], + [ + 322.8437021, + 100.0 + ], + [ + 323.3707577, + 100.0 + ], + [ + 323.9908716, + 100.0 + ], + [ + 324.5660553, + 100.0 + ], + [ + 325.3271145, + 100.0 + ], + [ + 325.7032585, + 100.0 + ], + [ + 326.6241237, + 100.0 + ], + [ + 327.1898133, + 100.0 + ], + [ + 327.9102516, + 100.0 + ], + [ + 328.5096428, + 100.0 + ], + [ + 329.2434279, + 100.0 + ], + [ + 330.2123442, + 100.0 + ], + [ + 330.9810792, + 100.0 + ], + [ + 331.922287, + 100.0 + ], + [ + 332.3696491, + 100.0 + ], + [ + 333.1721983, + 100.0 + ], + [ + 333.3097498, + 100.0 + ], + [ + 333.9251407, + 100.0 + ], + [ + 334.796924, + 100.0 + ], + [ + 335.3773573, + 100.0 + ], + [ + 335.6796264, + 100.0 + ], + [ + 336.1898923, + 100.0 + ], + [ + 336.9306526, + 100.0 + ], + [ + 337.4502896, + 100.0 + ], + [ + 337.9830625, + 100.0 + ], + [ + 338.6406976, + 100.0 + ], + [ + 339.2253248, + 100.0 + ], + [ + 339.970013, + 100.0 + ], + [ + 340.2998787, + 100.0 + ], + [ + 340.9556041, + 100.0 + ], + [ + 341.5104751, + 100.0 + ], + [ + 341.6247878, + 100.0 + ], + [ + 342.1304229, + 100.0 + ], + [ + 342.5856737, + 100.0 + ], + [ + 343.1012893, + 100.0 + ], + [ + 343.8306866, + 100.0 + ], + [ + 344.04899, + 100.0 + ], + [ + 344.6150089, + 100.0 + ], + [ + 345.1689226, + 100.0 + ], + [ + 345.8011063, + 100.0 + ], + [ + 346.5118183, + 100.0 + ], + [ + 347.2004008, + 100.0 + ], + [ + 347.9044408, + 100.0 + ], + [ + 348.4752975, + 100.0 + ], + [ + 349.1275493, + 100.0 + ], + [ + 349.4035693, + 100.0 + ], + [ + 350.1627689, + 100.0 + ], + [ + 350.7083681, + 100.0 + ], + [ + 351.2971381, + 100.0 + ], + [ + 351.8518399, + 100.0 + ], + [ + 352.5084738, + 100.0 + ], + [ + 353.1591639, + 100.0 + ], + [ + 353.7933066, + 100.0 + ], + [ + 354.4360964, + 100.0 + ], + [ + 354.6708794, + 100.0 + ], + [ + 355.2071319, + 100.0 + ], + [ + 355.7125875, + 100.0 + ], + [ + 356.239394, + 100.0 + ], + [ + 357.0063485, + 100.0 + ], + [ + 357.6208318, + 100.0 + ], + [ + 358.2238519, + 100.0 + ], + [ + 358.917451, + 100.0 + ], + [ + 359.164819, + 100.0 + ], + [ + 359.7374115, + 100.0 + ], + [ + 360.4900627, + 100.0 + ], + [ + 361.0209412, + 100.0 + ], + [ + 361.1576731, + 100.0 + ], + [ + 361.8155162, + 100.0 + ], + [ + 362.4089494, + 100.0 + ], + [ + 362.9274795, + 100.0 + ], + [ + 363.3402144, + 100.0 + ], + [ + 363.5409253, + 100.0 + ], + [ + 363.8351913, + 100.0 + ], + [ + 364.0246002, + 100.0 + ], + [ + 364.6105731, + 100.0 + ], + [ + 365.2107404, + 100.0 + ], + [ + 365.5538763, + 100.0 + ], + [ + 366.0083921, + 100.0 + ], + [ + 366.6020792, + 100.0 + ], + [ + 366.7823284, + 100.0 + ], + [ + 367.3175917, + 100.0 + ], + [ + 367.4899356, + 100.0 + ], + [ + 368.1120529, + 100.0 + ], + [ + 368.734792, + 100.0 + ], + [ + 369.5084647, + 100.0 + ], + [ + 370.1581834, + 100.0 + ], + [ + 370.7773663, + 100.0 + ], + [ + 371.4582997, + 100.0 + ], + [ + 372.1995104, + 100.0 + ], + [ + 372.3786447, + 100.0 + ], + [ + 372.910981, + 100.0 + ], + [ + 373.2777319, + 100.0 + ], + [ + 373.4181225, + 100.0 + ], + [ + 373.5527453, + 100.0 + ], + [ + 373.7382328, + 100.0 + ], + [ + 373.907459, + 100.0 + ], + [ + 374.1029263, + 100.0 + ], + [ + 374.3043368, + 100.0 + ], + [ + 374.4419533, + 100.0 + ], + [ + 374.8137437, + 100.0 + ], + [ + 375.2138286, + 100.0 + ], + [ + 375.7865868, + 100.0 + ], + [ + 376.4609094, + 100.0 + ], + [ + 376.8941263, + 100.0 + ], + [ + 377.418055, + 100.0 + ], + [ + 377.9997072, + 100.0 + ], + [ + 378.5260278, + 100.0 + ], + [ + 379.0692334, + 100.0 + ], + [ + 379.6010185, + 100.0 + ], + [ + 380.2106009, + 100.0 + ], + [ + 380.4410367, + 100.0 + ], + [ + 380.7819983, + 100.0 + ], + [ + 380.9702101, + 100.0 + ], + [ + 381.3154899, + 100.0 + ], + [ + 381.5294963, + 100.0 + ], + [ + 381.6619022, + 100.0 + ], + [ + 381.8016449, + 100.0 + ], + [ + 382.3801292, + 100.0 + ], + [ + 382.5379308, + 100.0 + ], + [ + 382.7280094, + 100.0 + ], + [ + 383.2048738, + 100.0 + ], + [ + 383.7521599, + 100.0 + ], + [ + 384.2573661, + 99.19517102615694 + ], + [ + 384.4045269, + 100.0 + ], + [ + 384.8054293, + 100.0 + ], + [ + 384.9254845, + 100.0 + ], + [ + 385.1707446, + 100.0 + ], + [ + 385.2735142, + 100.0 + ], + [ + 385.8374145, + 100.0 + ], + [ + 386.4396185, + 100.0 + ], + [ + 386.543223, + 100.0 + ], + [ + 386.7158547, + 100.0 + ], + [ + 386.8666923, + 100.0 + ], + [ + 387.3925375, + 100.0 + ], + [ + 387.7203986, + 100.0 + ], + [ + 387.8777883, + 100.0 + ], + [ + 388.4386485, + 100.0 + ], + [ + 388.9497408, + 100.0 + ], + [ + 389.1243586, + 100.0 + ], + [ + 389.6802138, + 100.0 + ], + [ + 390.3522515, + 100.0 + ], + [ + 391.0336296, + 100.0 + ], + [ + 391.6212742, + 100.0 + ], + [ + 392.0796029, + 100.0 + ], + [ + 392.2834588, + 100.0 + ], + [ + 392.4855163, + 100.0 + ], + [ + 393.0782839, + 100.0 + ], + [ + 393.6117854, + 100.0 + ], + [ + 394.1808397, + 100.0 + ], + [ + 394.4643795, + 100.0 + ], + [ + 394.6494249, + 100.0 + ], + [ + 395.2143481, + 100.0 + ], + [ + 395.7689857, + 100.0 + ], + [ + 396.3876482, + 100.0 + ], + [ + 396.926507, + 100.0 + ], + [ + 397.2285203, + 100.0 + ], + [ + 397.4731055, + 100.0 + ], + [ + 397.7080322, + 100.0 + ], + [ + 398.233292, + 100.0 + ], + [ + 398.4354172, + 100.0 + ], + [ + 398.6787912, + 100.0 + ], + [ + 398.8043351, + 100.0 + ], + [ + 398.9288716, + 100.0 + ], + [ + 399.0971592, + 100.0 + ], + [ + 399.3451809, + 100.0 + ], + [ + 399.5987304, + 100.0 + ], + [ + 399.806462, + 100.0 + ], + [ + 399.9887902, + 100.0 + ], + [ + 400.4782128, + 100.0 + ], + [ + 400.8005712, + 100.0 + ], + [ + 401.3088708, + 100.0 + ], + [ + 401.8772927, + 100.0 + ], + [ + 402.5350104, + 100.0 + ], + [ + 403.2123563, + 100.0 + ], + [ + 403.7506289, + 100.0 + ], + [ + 404.125469, + 100.0 + ], + [ + 404.2987084, + 100.0 + ], + [ + 404.9030962, + 100.0 + ], + [ + 405.3340958, + 100.0 + ], + [ + 405.6434837, + 100.0 + ], + [ + 406.1798656, + 100.0 + ], + [ + 406.5618288, + 100.0 + ], + [ + 407.4166062, + 100.0 + ], + [ + 408.0632128, + 100.0 + ], + [ + 408.8629102, + 100.0 + ], + [ + 409.6863421, + 100.0 + ], + [ + 410.5857805, + 100.0 + ], + [ + 411.4107066, + 100.0 + ], + [ + 412.1906073, + 100.0 + ], + [ + 413.0768722, + 100.0 + ], + [ + 414.0001999, + 100.0 + ], + [ + 414.8795934, + 100.0 + ], + [ + 415.549963, + 100.0 + ], + [ + 416.5383136, + 100.0 + ], + [ + 417.1921118, + 100.0 + ], + [ + 417.8975471, + 100.0 + ], + [ + 418.4738027, + 100.0 + ], + [ + 419.1461267, + 100.0 + ], + [ + 419.8287735, + 100.0 + ], + [ + 420.6513534, + 100.0 + ], + [ + 421.379814, + 100.0 + ], + [ + 422.3622154, + 100.0 + ], + [ + 423.6597553, + 100.0 + ], + [ + 424.2182076, + 100.0 + ], + [ + 424.337262, + 100.0 + ], + [ + 424.8386625, + 100.0 + ], + [ + 425.3484919, + 100.0 + ], + [ + 425.8823176, + 100.0 + ], + [ + 426.3102748, + 100.0 + ], + [ + 426.8653912, + 100.0 + ], + [ + 427.3994736, + 100.0 + ], + [ + 427.9185218, + 100.0 + ], + [ + 428.2156644, + 100.0 + ], + [ + 428.3374884, + 100.0 + ], + [ + 428.8668714, + 100.0 + ], + [ + 429.3944971, + 100.0 + ], + [ + 429.9607519, + 100.0 + ], + [ + 430.0609013, + 100.0 + ], + [ + 430.5950587, + 100.0 + ], + [ + 431.2025305, + 100.0 + ], + [ + 431.7331813, + 100.0 + ], + [ + 432.2653355, + 100.0 + ], + [ + 432.5715309, + 100.0 + ], + [ + 432.6836538, + 100.0 + ], + [ + 433.2031962, + 100.0 + ], + [ + 433.6325272, + 100.0 + ], + [ + 434.1381729, + 100.0 + ], + [ + 434.6487461, + 100.0 + ], + [ + 434.9575024, + 100.0 + ], + [ + 435.4913176, + 100.0 + ], + [ + 436.0345058, + 100.0 + ], + [ + 436.5664052, + 100.0 + ], + [ + 437.0971686, + 100.0 + ], + [ + 437.5100921, + 100.0 + ], + [ + 438.0920412, + 100.0 + ], + [ + 438.6231354, + 100.0 + ], + [ + 439.1364585, + 100.0 + ], + [ + 439.6942238, + 100.0 + ], + [ + 439.9002518, + 100.0 + ], + [ + 440.1758131, + 100.0 + ], + [ + 440.3370705, + 100.0 + ], + [ + 440.5476862, + 100.0 + ], + [ + 440.942021, + 100.0 + ], + [ + 441.1009571, + 100.0 + ], + [ + 441.4529255, + 100.0 + ], + [ + 441.8310008, + 100.0 + ], + [ + 442.1828596, + 100.0 + ], + [ + 442.3836131, + 100.0 + ], + [ + 442.5881344, + 100.0 + ], + [ + 443.1354015, + 100.0 + ], + [ + 443.4964261, + 100.0 + ], + [ + 443.9715761, + 100.0 + ], + [ + 444.2190163, + 100.0 + ], + [ + 444.7516906, + 100.0 + ], + [ + 444.8777978, + 100.0 + ], + [ + 445.4972998, + 100.0 + ], + [ + 445.8834778, + 99.74619289340102 + ], + [ + 446.1563261, + 98.9247311827957 + ], + [ + 446.4496585, + 100.0 + ], + [ + 446.8473276, + 100.0 + ], + [ + 447.2465739, + 100.0 + ], + [ + 447.4154705, + 100.0 + ], + [ + 447.9922462, + 100.0 + ], + [ + 448.5077691, + 100.0 + ], + [ + 448.7533517, + 100.0 + ], + [ + 448.976432, + 100.0 + ], + [ + 449.0984734, + 100.0 + ], + [ + 449.4389484, + 100.0 + ], + [ + 449.8244443, + 100.0 + ], + [ + 449.9606932, + 100.0 + ], + [ + 450.0993229, + 100.0 + ], + [ + 450.4420383, + 99.14040114613181 + ], + [ + 450.55703, + 100.0 + ], + [ + 450.6958534, + 98.62068965517241 + ], + [ + 450.889846, + 100.0 + ], + [ + 451.1057526, + 99.53703703703704 + ], + [ + 451.2494036, + 100.0 + ], + [ + 451.8375027, + 100.0 + ], + [ + 452.3917, + 100.0 + ], + [ + 452.6639744, + 100.0 + ], + [ + 452.8915679, + 100.0 + ], + [ + 453.0719159, + 100.0 + ], + [ + 453.2349755, + 100.0 + ], + [ + 453.3400531, + 100.0 + ], + [ + 453.909904, + 100.0 + ], + [ + 454.0739929, + 100.0 + ], + [ + 454.3884414, + 100.0 + ], + [ + 454.4972733, + 100.0 + ], + [ + 454.6879501, + 100.0 + ], + [ + 455.2104681, + 100.0 + ], + [ + 455.3293319, + 100.0 + ], + [ + 455.5598576, + 100.0 + ], + [ + 455.8297053, + 100.0 + ], + [ + 455.9674781, + 100.0 + ], + [ + 456.1167907, + 100.0 + ], + [ + 456.2898677, + 100.0 + ], + [ + 456.4471422, + 100.0 + ], + [ + 456.9993742, + 100.0 + ], + [ + 457.219216, + 100.0 + ], + [ + 457.4677749, + 100.0 + ], + [ + 457.8897917, + 100.0 + ], + [ + 458.1550752, + 100.0 + ], + [ + 458.5019212, + 100.0 + ], + [ + 459.1117952, + 100.0 + ], + [ + 459.3004817, + 100.0 + ], + [ + 459.5671347, + 100.0 + ], + [ + 459.7183217, + 100.0 + ], + [ + 459.8616317, + 100.0 + ], + [ + 460.391094, + 100.0 + ], + [ + 460.5445305, + 100.0 + ], + [ + 460.6465094, + 100.0 + ], + [ + 460.7934322, + 100.0 + ], + [ + 461.0788544, + 100.0 + ], + [ + 461.3692823, + 100.0 + ], + [ + 461.6540277, + 100.0 + ], + [ + 462.0005599, + 100.0 + ], + [ + 462.5131903, + 100.0 + ], + [ + 463.1234588, + 100.0 + ], + [ + 463.3200036, + 100.0 + ], + [ + 463.6196048, + 100.0 + ], + [ + 464.1391495, + 100.0 + ], + [ + 464.5639199, + 100.0 + ], + [ + 464.7738346, + 100.0 + ], + [ + 465.0791584, + 100.0 + ], + [ + 465.5872164, + 100.0 + ], + [ + 466.3041428, + 100.0 + ], + [ + 466.8954674, + 100.0 + ], + [ + 467.430967, + 100.0 + ], + [ + 467.8317491, + 100.0 + ], + [ + 468.342869, + 100.0 + ], + [ + 468.478874, + 100.0 + ], + [ + 468.8356985, + 100.0 + ], + [ + 469.3590093, + 100.0 + ], + [ + 469.5356588, + 100.0 + ], + [ + 470.0481192, + 100.0 + ], + [ + 470.7152419, + 100.0 + ], + [ + 471.3720498, + 100.0 + ], + [ + 471.726809, + 100.0 + ], + [ + 472.320801, + 100.0 + ], + [ + 472.8156754, + 100.0 + ], + [ + 473.3260733, + 100.0 + ], + [ + 473.9742697, + 100.0 + ], + [ + 474.3748438, + 100.0 + ], + [ + 474.5454692, + 100.0 + ], + [ + 474.7482358, + 100.0 + ], + [ + 474.9098886, + 100.0 + ], + [ + 475.4701502, + 100.0 + ], + [ + 476.0358215, + 100.0 + ], + [ + 476.6491638, + 100.0 + ], + [ + 477.2351997, + 100.0 + ], + [ + 477.8128656, + 100.0 + ], + [ + 478.4208371, + 100.0 + ], + [ + 479.0464658, + 100.0 + ], + [ + 479.7285792, + 100.0 + ], + [ + 480.4462777, + 100.0 + ], + [ + 481.0800296, + 100.0 + ], + [ + 481.7394623, + 100.0 + ], + [ + 482.3643125, + 100.0 + ], + [ + 483.0051177, + 100.0 + ], + [ + 483.2925699, + 100.0 + ], + [ + 483.821503, + 100.0 + ], + [ + 484.5498196, + 100.0 + ], + [ + 484.7127199, + 100.0 + ], + [ + 485.416872, + 100.0 + ], + [ + 486.1540431, + 100.0 + ], + [ + 486.7795569, + 100.0 + ], + [ + 487.3900019, + 100.0 + ], + [ + 487.7489854, + 100.0 + ], + [ + 488.2591785, + 100.0 + ], + [ + 488.9325826, + 100.0 + ], + [ + 489.644417, + 100.0 + ], + [ + 489.7900552, + 100.0 + ], + [ + 490.351022, + 100.0 + ], + [ + 491.0486436, + 100.0 + ], + [ + 491.6539721, + 100.0 + ], + [ + 492.3558241, + 100.0 + ], + [ + 493.1063945, + 100.0 + ], + [ + 493.7354303, + 100.0 + ], + [ + 494.2857143, + 100.0 + ], + [ + 494.8415705, + 100.0 + ], + [ + 495.5191904, + 100.0 + ], + [ + 496.1906645, + 100.0 + ], + [ + 496.7733372, + 100.0 + ], + [ + 497.4649217, + 100.0 + ], + [ + 498.0138188, + 100.0 + ], + [ + 498.5568398, + 100.0 + ], + [ + 499.3248588, + 100.0 + ], + [ + 499.922234, + 100.0 + ], + [ + 500.6160021, + 100.0 + ], + [ + 501.344693, + 100.0 + ], + [ + 501.7764979, + 100.0 + ], + [ + 502.303317, + 100.0 + ], + [ + 502.8694729, + 100.0 + ], + [ + 503.1978575, + 100.0 + ], + [ + 503.8590333, + 100.0 + ], + [ + 504.5005674, + 100.0 + ], + [ + 504.719292, + 100.0 + ], + [ + 504.9468675, + 100.0 + ], + [ + 505.194728, + 100.0 + ], + [ + 505.8479295, + 100.0 + ], + [ + 506.7118285, + 100.0 + ], + [ + 507.2805904, + 100.0 + ], + [ + 508.0400341, + 100.0 + ], + [ + 508.5992355, + 100.0 + ], + [ + 509.2266302, + 100.0 + ], + [ + 509.9432436, + 100.0 + ], + [ + 510.503362, + 100.0 + ], + [ + 511.2420641, + 100.0 + ], + [ + 511.4690387, + 100.0 + ], + [ + 512.1116589, + 100.0 + ], + [ + 512.2196329, + 100.0 + ], + [ + 512.7628164, + 100.0 + ], + [ + 513.5349956, + 100.0 + ], + [ + 514.1799566, + 100.0 + ], + [ + 514.8163184, + 100.0 + ], + [ + 515.3749801, + 100.0 + ], + [ + 515.9468611, + 100.0 + ], + [ + 516.1982216, + 100.0 + ], + [ + 516.4889278, + 100.0 + ], + [ + 517.1133337, + 100.0 + ], + [ + 517.8570399, + 100.0 + ], + [ + 518.3070445, + 100.0 + ], + [ + 518.5653138, + 100.0 + ], + [ + 519.1075023, + 100.0 + ], + [ + 519.6359604, + 100.0 + ], + [ + 520.1877649, + 100.0 + ], + [ + 520.8401515, + 100.0 + ], + [ + 521.1033679, + 100.0 + ], + [ + 521.5957477, + 100.0 + ], + [ + 522.1716543, + 100.0 + ], + [ + 522.5348042, + 100.0 + ], + [ + 522.8371513, + 100.0 + ], + [ + 523.5339505, + 99.84520123839009 + ], + [ + 523.7967425, + 100.0 + ], + [ + 524.446683, + 100.0 + ], + [ + 525.2007058, + 100.0 + ], + [ + 525.4419869, + 100.0 + ], + [ + 525.7067634, + 100.0 + ], + [ + 525.8299367, + 100.0 + ], + [ + 526.1850103, + 100.0 + ], + [ + 526.3663211, + 100.0 + ], + [ + 527.0731156, + 100.0 + ], + [ + 527.190305, + 98.27586206896552 + ], + [ + 527.3350493, + 100.0 + ], + [ + 527.9300767, + 100.0 + ], + [ + 528.2998992, + 100.0 + ], + [ + 528.579317, + 100.0 + ], + [ + 529.2213888, + 100.0 + ], + [ + 529.7695898, + 100.0 + ], + [ + 530.438652, + 100.0 + ], + [ + 531.3730781, + 100.0 + ], + [ + 531.7176885, + 100.0 + ], + [ + 532.3457708, + 100.0 + ], + [ + 532.8653338, + 100.0 + ], + [ + 533.3066986, + 100.0 + ], + [ + 533.5503445, + 100.0 + ], + [ + 534.0559399, + 100.0 + ], + [ + 534.3325399, + 100.0 + ], + [ + 534.4812736, + 100.0 + ], + [ + 534.732873, + 100.0 + ], + [ + 535.3154098, + 100.0 + ], + [ + 535.5878335, + 100.0 + ], + [ + 535.8272848, + 100.0 + ], + [ + 536.5662896, + 100.0 + ], + [ + 536.9568368, + 100.0 + ], + [ + 537.1256983, + 100.0 + ], + [ + 537.7276516, + 99.53917050691244 + ], + [ + 538.4656558, + 100.0 + ], + [ + 538.7903499, + 100.0 + ], + [ + 538.9882025, + 100.0 + ], + [ + 539.6290719, + 100.0 + ], + [ + 539.8139088, + 100.0 + ], + [ + 540.3692638, + 100.0 + ], + [ + 540.960137, + 100.0 + ], + [ + 541.0623127, + 100.0 + ], + [ + 541.5737772, + 100.0 + ], + [ + 542.2612172, + 100.0 + ], + [ + 543.0837282, + 100.0 + ], + [ + 543.4110547, + 100.0 + ], + [ + 543.5240408, + 100.0 + ], + [ + 544.1635994, + 100.0 + ], + [ + 544.7673257, + 100.0 + ], + [ + 545.3699492, + 100.0 + ], + [ + 546.2028559, + 100.0 + ], + [ + 546.8387098, + 100.0 + ], + [ + 546.9834671, + 100.0 + ], + [ + 547.5283258, + 100.0 + ], + [ + 547.693209, + 100.0 + ], + [ + 547.9803075, + 100.0 + ], + [ + 548.1861194, + 100.0 + ], + [ + 548.3295007, + 100.0 + ], + [ + 548.6608234, + 100.0 + ], + [ + 548.7835406, + 100.0 + ], + [ + 549.3077597, + 100.0 + ], + [ + 549.4802786, + 100.0 + ], + [ + 550.0248853, + 100.0 + ], + [ + 550.5471747, + 100.0 + ], + [ + 550.7494553, + 100.0 + ], + [ + 551.311503, + 100.0 + ], + [ + 551.54889, + 100.0 + ], + [ + 551.6878804, + 100.0 + ], + [ + 551.8335115, + 100.0 + ], + [ + 552.3833362, + 100.0 + ], + [ + 552.9461106, + 100.0 + ], + [ + 553.140568, + 100.0 + ], + [ + 553.5090062, + 100.0 + ], + [ + 554.0398191, + 99.81818181818181 + ], + [ + 554.2622649, + 100.0 + ], + [ + 554.5070919, + 100.0 + ], + [ + 555.0923462, + 100.0 + ], + [ + 555.3170579, + 100.0 + ], + [ + 555.5442016, + 100.0 + ], + [ + 555.6891448, + 100.0 + ], + [ + 555.9112518, + 100.0 + ], + [ + 556.607333, + 100.0 + ], + [ + 557.0148937, + 100.0 + ], + [ + 557.3566941, + 100.0 + ], + [ + 557.9782488, + 100.0 + ], + [ + 558.6597589, + 100.0 + ], + [ + 559.3493588, + 100.0 + ], + [ + 559.6391852, + 100.0 + ], + [ + 559.8725344, + 100.0 + ], + [ + 560.0198415, + 100.0 + ], + [ + 560.1804385, + 100.0 + ], + [ + 560.662202, + 100.0 + ], + [ + 561.3119856, + 99.85549132947978 + ], + [ + 561.6828516, + 100.0 + ], + [ + 561.787762, + 100.0 + ], + [ + 562.2007458, + 100.0 + ], + [ + 562.8762166, + 100.0 + ], + [ + 563.4569499, + 100.0 + ], + [ + 564.1867842, + 100.0 + ], + [ + 564.7357537, + 100.0 + ], + [ + 565.2986868, + 100.0 + ], + [ + 565.9134555, + 100.0 + ], + [ + 566.6626351, + 100.0 + ], + [ + 567.1955598, + 100.0 + ], + [ + 567.8057682, + 100.0 + ], + [ + 568.3038551, + 100.0 + ], + [ + 569.1670982, + 100.0 + ], + [ + 569.7736173, + 100.0 + ], + [ + 570.3453648, + 100.0 + ], + [ + 570.9335302, + 100.0 + ], + [ + 571.4683594, + 100.0 + ], + [ + 571.941, + 100.0 + ], + [ + 572.5106457, + 100.0 + ], + [ + 573.1264568, + 100.0 + ], + [ + 573.6840755, + 100.0 + ], + [ + 574.4367214, + 100.0 + ], + [ + 574.5379264, + 100.0 + ], + [ + 575.0958013, + 100.0 + ], + [ + 575.3490449, + 100.0 + ], + [ + 575.9237674, + 100.0 + ], + [ + 576.675121, + 100.0 + ], + [ + 577.3286658, + 100.0 + ], + [ + 577.8925575, + 100.0 + ], + [ + 578.547713, + 100.0 + ], + [ + 579.2327703, + 100.0 + ], + [ + 579.9855744, + 100.0 + ], + [ + 580.6775305, + 100.0 + ], + [ + 581.2804711, + 100.0 + ], + [ + 581.8576929, + 100.0 + ], + [ + 582.4516578, + 100.0 + ], + [ + 583.0121696, + 100.0 + ], + [ + 583.6303464, + 100.0 + ], + [ + 584.223862, + 100.0 + ], + [ + 584.8340236, + 100.0 + ], + [ + 585.5226, + 100.0 + ], + [ + 585.6286743, + 100.0 + ], + [ + 585.8449688, + 100.0 + ], + [ + 586.2475299, + 99.75550122249389 + ], + [ + 586.4201678, + 100.0 + ], + [ + 587.0531494, + 100.0 + ], + [ + 587.636067, + 100.0 + ], + [ + 588.3260108, + 100.0 + ], + [ + 588.8989285, + 100.0 + ], + [ + 589.5825067, + 100.0 + ], + [ + 590.1237418, + 100.0 + ], + [ + 590.8736691, + 100.0 + ], + [ + 591.7055194, + 100.0 + ], + [ + 592.5976894, + 100.0 + ], + [ + 592.8682695, + 100.0 + ], + [ + 593.2823013, + 100.0 + ], + [ + 593.9122055, + 100.0 + ], + [ + 594.154988, + 100.0 + ], + [ + 594.6854889, + 100.0 + ], + [ + 595.0537771, + 100.0 + ], + [ + 595.2313516, + 100.0 + ], + [ + 595.7258274, + 100.0 + ], + [ + 596.0043785, + 100.0 + ], + [ + 596.1044277, + 100.0 + ], + [ + 596.493505, + 96.9620253164557 + ], + [ + 597.0393117, + 79.82456140350877 + ], + [ + 597.5565921, + 35.97678916827853 + ], + [ + 598.068565, + 17.110266159695826 + ], + [ + 598.5958189, + 16.6358595194085 + ], + [ + 599.097576, + 15.07633587786259 + ], + [ + 599.5212995, + 17.889908256880744 + ], + [ + 599.69172, + 17.241379310344826 + ], + [ + 600.2059056, + 9.302325581395351 + ], + [ + 600.7197908, + 12.144212523719162 + ], + [ + 601.2332435, + 12.333965844402272 + ], + [ + 601.7346094, + 12.085769980506825 + ], + [ + 602.2461998, + 11.174242424242422 + ], + [ + 602.7587951, + 13.117870722433452 + ], + [ + 603.2603863, + 11.262135922330103 + ], + [ + 603.7718817, + 11.954459203036052 + ], + [ + 604.2869334, + 10.266159695817493 + ], + [ + 604.800867, + 12.665406427221171 + ], + [ + 605.3160609, + 13.25757575757575 + ], + [ + 605.8302826, + 13.813229571984436 + ], + [ + 606.3414774, + 10.456273764258555 + ], + [ + 606.84282, + 12.085769980506825 + ], + [ + 607.357864, + 11.787072243346003 + ], + [ + 607.872367, + 14.339622641509436 + ], + [ + 608.3735888, + 9.803921568627445 + ], + [ + 608.8764176, + 12.670565302144254 + ], + [ + 609.3886225, + 11.174242424242422 + ], + [ + 609.9034914, + 11.909262759924388 + ], + [ + 610.4173738, + 11.153119092627591 + ], + [ + 610.7704382, + 11.944444444444443 + ], + [ + 611.2788311, + 13.899613899613911 + ], + [ + 611.7935291, + 21.88679245283018 + ], + [ + 612.3084147, + 23.664122137404576 + ], + [ + 612.8144692, + 25.933202357563857 + ], + [ + 613.3174715, + 22.868217054263567 + ], + [ + 613.8331867, + 28.94736842105263 + ], + [ + 614.3481746, + 39.353612167300376 + ], + [ + 614.864694, + 76.51515151515152 + ], + [ + 615.3882628, + 75.30647985989492 + ], + [ + 615.9641971, + 100.0 + ], + [ + 616.6457259, + 100.0 + ], + [ + 617.1567562, + 100.0 + ], + [ + 617.6761645, + 95.86466165413533 + ], + [ + 618.1956655, + 49.621212121212125 + ], + [ + 618.7161054, + 96.00725952813067 + ], + [ + 619.2605437, + 88.72727272727272 + ], + [ + 619.8038141, + 100.0 + ], + [ + 620.3364245, + 100.0 + ], + [ + 620.9002756, + 100.0 + ], + [ + 621.4261538, + 80.97014925373134 + ], + [ + 621.9739601, + 82.60105448154657 + ], + [ + 622.5218242, + 100.0 + ], + [ + 623.1183516, + 100.0 + ], + [ + 623.6674046, + 96.33507853403141 + ], + [ + 624.2429942, + 98.64176570458405 + ], + [ + 624.7974786, + 79.82758620689656 + ], + [ + 625.4054008, + 100.0 + ], + [ + 625.9760279, + 98.94551845342707 + ], + [ + 626.5293042, + 80.72727272727272 + ], + [ + 627.0420887, + 76.65441176470588 + ], + [ + 627.5945284, + 100.0 + ], + [ + 628.1622415, + 93.13543599257885 + ], + [ + 628.675299, + 48.69402985074627 + ], + [ + 629.1778699, + 9.881422924901187 + ], + [ + 629.7063418, + 98.21109123434705 + ], + [ + 630.2597853, + 96.26998223801066 + ], + [ + 630.7962145, + 99.45054945054945 + ], + [ + 631.3250732, + 89.43396226415095 + ], + [ + 631.8389986, + 22.348484848484844 + ], + [ + 632.3429062, + 12.74131274131274 + ], + [ + 632.7290649, + 9.900990099009903 + ], + [ + 633.2375767, + 85.02772643253235 + ], + [ + 633.8054713, + 100.0 + ], + [ + 634.3956952, + 100.0 + ], + [ + 635.0528722, + 99.32318104906938 + ], + [ + 635.5706889, + 40.866290018832395 + ], + [ + 636.0855334, + 14.285714285714292 + ], + [ + 636.5964102, + 20.30947775628627 + ], + [ + 637.1094245, + 15.399239543726239 + ], + [ + 637.6122236, + 20.841300191204596 + ], + [ + 638.1264788, + 55.18518518518519 + ], + [ + 638.6738685, + 99.6309963099631 + ], + [ + 639.2035811, + 100.0 + ], + [ + 639.7680402, + 100.0 + ], + [ + 640.3332169, + 100.0 + ], + [ + 640.8900015, + 100.0 + ], + [ + 641.4803599, + 100.0 + ], + [ + 642.052984, + 100.0 + ], + [ + 642.7078061, + 100.0 + ], + [ + 643.3414759, + 100.0 + ], + [ + 644.0016923, + 100.0 + ], + [ + 644.5594726, + 100.0 + ], + [ + 645.1393834, + 100.0 + ], + [ + 645.7562447, + 100.0 + ], + [ + 646.4882991, + 100.0 + ], + [ + 647.0596361, + 100.0 + ], + [ + 647.62258, + 100.0 + ], + [ + 648.2906376, + 100.0 + ], + [ + 648.8813296, + 100.0 + ], + [ + 649.5166759, + 100.0 + ], + [ + 650.0310637, + 100.0 + ], + [ + 650.5766525, + 96.29629629629629 + ], + [ + 651.1072953, + 98.37837837837837 + ], + [ + 651.6324424, + 96.84601113172542 + ], + [ + 652.2017253, + 100.0 + ], + [ + 652.7548292, + 100.0 + ], + [ + 653.4063637, + 100.0 + ], + [ + 653.9549432, + 97.85714285714286 + ], + [ + 654.4623303, + 23.03262955854126 + ], + [ + 654.9758933, + 14.2314990512334 + ], + [ + 655.4885606, + 16.12284069097889 + ], + [ + 655.9957172, + 15.134099616858236 + ], + [ + 656.5084264, + 11.047619047619051 + ], + [ + 657.0217993, + 12.689393939393938 + ], + [ + 657.5354923, + 10.133843212237096 + ], + [ + 658.0471548, + 11.685823754789268 + ], + [ + 658.5620453, + 10.037878787878782 + ], + [ + 659.0746276, + 9.622641509433961 + ], + [ + 659.5781339, + 11.306042884990248 + ], + [ + 660.0903367, + 13.523809523809533 + ], + [ + 660.6055991, + 11.385199240986722 + ], + [ + 661.1190287, + 13.904761904761912 + ], + [ + 661.6306579, + 8.12854442344046 + ], + [ + 662.1340342, + 13.178294573643413 + ], + [ + 662.6470383, + 7.061068702290072 + ], + [ + 663.1515136, + 13.61867704280155 + ], + [ + 663.666666, + 14.15094339622641 + ], + [ + 664.1683668, + 16.14785992217898 + ], + [ + 664.6810303, + 11.195445920303598 + ], + [ + 665.1831447, + 16.92913385826772 + ], + [ + 665.5274489, + 19.101123595505626 + ], + [ + 666.0378598, + 16.984732824427482 + ], + [ + 666.552837, + 16.760828625235405 + ], + [ + 667.0559312, + 18.074656188605104 + ], + [ + 667.5569424, + 16.731517509727624 + ], + [ + 668.0583696, + 20.388349514563103 + ], + [ + 668.4604596, + 20.432692307692307 + ], + [ + 668.947413, + 16.129032258064512 + ], + [ + 669.455057, + 13.671875 + ], + [ + 669.9670723, + 12.665406427221171 + ], + [ + 670.4681808, + 11.74168297455968 + ], + [ + 670.9781446, + 10.436432637571158 + ], + [ + 671.4929172, + 11.153119092627591 + ], + [ + 671.9935281, + 9.393346379647753 + ], + [ + 672.5057049, + 13.068181818181827 + ], + [ + 673.0190275, + 10.626185958254268 + ], + [ + 673.5308231, + 14.230019493177394 + ], + [ + 674.0427354, + 11.74242424242425 + ], + [ + 674.5562814, + 14.962121212121218 + ], + [ + 675.0704667, + 12.5 + ], + [ + 675.5838524, + 10.795454545454547 + ], + [ + 676.0851005, + 11.328125 + ], + [ + 676.595773, + 11.673151750972764 + ], + [ + 677.1087437, + 10.815939278937378 + ], + [ + 677.6227105, + 11.574952561669832 + ], + [ + 678.1347581, + 10.396975425330808 + ], + [ + 678.6353889, + 11.500974658869396 + ], + [ + 679.1471429, + 11.596958174904941 + ], + [ + 679.6602803, + 11.596958174904941 + ], + [ + 680.1606903, + 11.650485436893206 + ], + [ + 680.6650071, + 12.109375 + ], + [ + 681.1730371, + 12.280701754385973 + ], + [ + 681.6872826, + 11.005692599620502 + ], + [ + 682.2022652, + 11.195445920303598 + ], + [ + 682.7171266, + 12.075471698113205 + ], + [ + 683.2290588, + 11.216730038022817 + ], + [ + 683.7320479, + 13.035019455252922 + ], + [ + 684.2450983, + 11.764705882352942 + ], + [ + 684.7482935, + 11.9140625 + ], + [ + 685.2605348, + 13.092979127134726 + ], + [ + 685.7628472, + 14.202334630350194 + ], + [ + 686.2763348, + 10.815939278937378 + ], + [ + 686.7906622, + 14.421252371916509 + ], + [ + 687.3035587, + 9.090909090909093 + ], + [ + 687.8184336, + 10.687022900763353 + ], + [ + 688.3295879, + 11.025145067698261 + ], + [ + 688.8432155, + 11.005692599620502 + ], + [ + 689.3581602, + 9.92366412213741 + ], + [ + 689.8715748, + 11.257035647279551 + ], + [ + 690.3895111, + 6.717850287907865 + ], + [ + 690.8966756, + 6.54205607476635 + ], + [ + 691.3993301, + 7.017543859649123 + ], + [ + 691.9139591, + 10.666666666666671 + ], + [ + 692.4277896, + 12.641509433962256 + ], + [ + 692.9388636, + 11.9140625 + ], + [ + 693.4492402, + 13.662239089184055 + ], + [ + 693.9634299, + 11.320754716981128 + ], + [ + 694.4665467, + 12.352941176470594 + ], + [ + 694.9790747, + 16.098484848484844 + ], + [ + 695.494128, + 12.098298676748584 + ], + [ + 696.0082444, + 12.523719165085396 + ], + [ + 696.5107433, + 8.966861598440545 + ], + [ + 697.0228656, + 9.090909090909093 + ], + [ + 697.5358242, + 12.523719165085396 + ], + [ + 698.046252, + 10.15625 + ], + [ + 698.5603441, + 11.153119092627591 + ], + [ + 699.0607651, + 11.500974658869396 + ], + [ + 699.5734739, + 12.523719165085396 + ], + [ + 700.0872307, + 12.523719165085396 + ], + [ + 700.6014099, + 11.342155009451787 + ], + [ + 701.1153325, + 12.167300380228141 + ], + [ + 701.6160274, + 11.306042884990248 + ], + [ + 702.1290881, + 10.227272727272734 + ], + [ + 702.633129, + 10.7421875 + ], + [ + 703.1343331, + 8.949416342412448 + ], + [ + 703.6477642, + 10.836501901140679 + ], + [ + 704.1616128, + 12.903225806451616 + ], + [ + 704.6637478, + 13.424124513618679 + ], + [ + 705.1802179, + 11.005692599620502 + ], + [ + 705.6917226, + 12.310606060606062 + ], + [ + 706.192394, + 13.060428849902536 + ], + [ + 706.7020734, + 12.475633528265107 + ], + [ + 707.2142722, + 10.436432637571158 + ], + [ + 707.7160181, + 9.746588693957108 + ], + [ + 708.229158, + 7.765151515151516 + ], + [ + 708.7430022, + 7.0208728652751375 + ], + [ + 709.2574916, + 11.174242424242422 + ], + [ + 709.7588995, + 9.765625 + ], + [ + 710.2703647, + 12.310606060606062 + ], + [ + 710.7848904, + 11.406844106463879 + ], + [ + 711.3014181, + 11.698113207547166 + ], + [ + 711.8145416, + 13.671875 + ], + [ + 712.31601, + 13.142857142857139 + ], + [ + 712.8294546, + 11.434108527131784 + ], + [ + 713.3445341, + 11.574952561669832 + ], + [ + 713.8593281, + 10.795454545454547 + ], + [ + 714.3748446, + 11.385199240986722 + ], + [ + 714.8872994, + 10.626185958254268 + ], + [ + 715.3987142, + 11.886792452830193 + ], + [ + 715.9134606, + 13.688212927756652 + ], + [ + 716.4290559, + 11.342155009451787 + ], + [ + 716.9444407, + 15.340909090909093 + ], + [ + 717.4585697, + 9.125475285171106 + ], + [ + 717.9734397, + 9.245283018867923 + ], + [ + 718.4848484, + 12.670565302144254 + ], + [ + 718.9850565, + 11.71875 + ], + [ + 719.4983832, + 11.909262759924388 + ], + [ + 720.0140798, + 11.596958174904941 + ], + [ + 720.5151764, + 11.328125 + ], + [ + 721.0278639, + 11.909262759924388 + ], + [ + 721.5290504, + 12.109375 + ], + [ + 722.0435295, + 12.523719165085396 + ], + [ + 722.543982, + 10.546875 + ], + [ + 723.0584205, + 10.586011342155004 + ], + [ + 723.5711809, + 11.174242424242422 + ], + [ + 724.0864509, + 6.818181818181827 + ], + [ + 724.6019066, + 0.37878787878787534 + ], + [ + 725.1166976, + 0.0 + ], + [ + 725.6280958, + 1.5151515151515156 + ], + [ + 726.1386366, + 2.52918287937743 + ], + [ + 726.6522828, + 1.893939393939391 + ], + [ + 727.1660902, + 2.471482889733849 + ], + [ + 727.6795773, + 2.083333333333343 + ], + [ + 728.1953429, + 2.2641509433962312 + ], + [ + 728.7097209, + 1.7110266159695868 + ], + [ + 729.2235191, + 0.9469696969697026 + ], + [ + 729.7239627, + 1.7578125 + ], + [ + 730.237754, + 0.5681818181818272 + ], + [ + 730.7387706, + 1.5625 + ], + [ + 731.2537636, + 0.3795066413662198 + ], + [ + 731.7569454, + 2.5390625 + ], + [ + 732.2672091, + 1.5564202334630295 + ], + [ + 732.7817171, + 2.6615969581749113 + ], + [ + 733.2916564, + 6.415094339622641 + ], + [ + 733.7932831, + 7.421875 + ], + [ + 734.3081025, + 8.884688090737242 + ], + [ + 734.8125915, + 8.0078125 + ], + [ + 735.3252505, + 7.210626185958262 + ], + [ + 735.8291386, + 5.088062622309195 + ], + [ + 736.3397618, + 7.1833648393194665 + ], + [ + 736.8544777, + 6.072106261859574 + ], + [ + 737.3687572, + 5.6710775047259006 + ], + [ + 737.8828871, + 7.954545454545453 + ], + [ + 738.3979344, + 7.196969696969703 + ], + [ + 738.8984328, + 5.46875 + ], + [ + 739.4125101, + 6.060606060606062 + ], + [ + 739.9237972, + 6.0428849902534125 + ], + [ + 740.424835, + 6.285714285714278 + ], + [ + 740.9359031, + 7.961165048543691 + ], + [ + 741.4370498, + 5.859375 + ], + [ + 741.9519729, + 7.210626185958262 + ], + [ + 742.4547441, + 6.640625 + ], + [ + 742.9568381, + 9.469696969696969 + ], + [ + 743.4714133, + 7.407407407407405 + ], + [ + 743.9850982, + 7.0208728652751375 + ], + [ + 744.4859014, + 6.0546875 + ], + [ + 744.9994287, + 6.616257088846879 + ], + [ + 745.5128907, + 5.703422053231947 + ], + [ + 746.0146829, + 7.602339181286553 + ], + [ + 746.5284033, + 5.681818181818173 + ], + [ + 747.041868, + 6.628787878787875 + ], + [ + 747.5562217, + 7.954545454545453 + ], + [ + 748.0702581, + 7.0208728652751375 + ], + [ + 748.5853528, + 6.805293005671075 + ], + [ + 749.0879595, + 5.653021442495131 + ], + [ + 749.5990779, + 6.831119544592042 + ], + [ + 750.1000257, + 5.46875 + ], + [ + 750.6137313, + 5.871212121212125 + ], + [ + 751.1280713, + 5.882352941176478 + ], + [ + 751.6376657, + 7.212475633528271 + ], + [ + 752.1389956, + 5.458089668615983 + ], + [ + 752.6536668, + 9.280303030303031 + ], + [ + 753.1551643, + 5.46875 + ], + [ + 753.6683437, + 7.5901328273244815 + ], + [ + 754.1824025, + 7.372400756143676 + ], + [ + 754.6827475, + 5.479452054794521 + ], + [ + 755.1972366, + 6.451612903225808 + ], + [ + 755.708217, + 5.482041587901705 + ], + [ + 756.2228393, + 5.492424242424249 + ], + [ + 756.7375978, + 6.25 + ], + [ + 757.2524813, + 6.82261208576999 + ], + [ + 757.7653772, + 7.954545454545453 + ], + [ + 758.2772938, + 6.261859582542698 + ], + [ + 758.778448, + 7.017543859649123 + ], + [ + 759.2800715, + 6.066536203522503 + ], + [ + 759.7858195, + 4.914933837429118 + ], + [ + 760.3013451, + 7.61904761904762 + ], + [ + 760.8159924, + 6.226415094339615 + ], + [ + 761.3288949, + 7.407407407407405 + ], + [ + 761.8435036, + 5.871212121212125 + ], + [ + 762.3562407, + 6.628787878787875 + ], + [ + 762.8713867, + 7.0208728652751375 + ], + [ + 763.3786882, + 8.522727272727266 + ], + [ + 763.8925837, + 8.0078125 + ], + [ + 764.4067957, + 7.196969696969703 + ], + [ + 764.9077501, + 5.458089668615983 + ], + [ + 765.423835, + 5.692599620493354 + ], + [ + 765.9370367, + 4.914933837429118 + ], + [ + 766.4374554, + 6.090373280943027 + ], + [ + 766.9520097, + 6.049149338374292 + ], + [ + 767.4668546, + 6.037735849056602 + ], + [ + 767.9828918, + 6.060606060606062 + ], + [ + 768.4955338, + 8.159392789373811 + ], + [ + 769.0095711, + 6.463878326996195 + ], + [ + 769.5252092, + 9.981167608286256 + ], + [ + 770.0400411, + 5.51330798479087 + ], + [ + 770.5537539, + 6.415094339622641 + ], + [ + 771.0637659, + 6.4453125 + ], + [ + 771.5775014, + 6.072106261859574 + ], + [ + 772.078944, + 5.653021442495131 + ], + [ + 772.5936703, + 6.060606060606062 + ], + [ + 773.1080245, + 5.692599620493354 + ], + [ + 773.6229005, + 8.143939393939391 + ], + [ + 774.124345, + 6.4453125 + ], + [ + 774.6372567, + 7.939508506616249 + ], + [ + 775.1500306, + 6.463878326996195 + ], + [ + 775.6642628, + 7.1833648393194665 + ], + [ + 776.1649714, + 6.0428849902534125 + ], + [ + 776.6779296, + 6.25 + ], + [ + 777.1791329, + 5.479452054794521 + ], + [ + 777.6904281, + 7.400379506641357 + ], + [ + 778.2047586, + 5.447470817120632 + ], + [ + 778.7198476, + 8.901515151515156 + ], + [ + 779.2328424, + 4.933586337760914 + ], + [ + 779.7477745, + 8.695652173913047 + ], + [ + 780.2494445, + 7.03125 + ], + [ + 780.7643793, + 7.007575757575751 + ], + [ + 781.2787375, + 5.492424242424249 + ], + [ + 781.7890388, + 6.083650190114071 + ], + [ + 782.294308, + 5.836575875486389 + ], + [ + 782.7962092, + 4.901960784313729 + ], + [ + 783.3018843, + 6.805293005671075 + ], + [ + 783.8113582, + 7.421875 + ], + [ + 784.3261686, + 6.628787878787875 + ], + [ + 784.8411279, + 7.196969696969703 + ], + [ + 785.3569889, + 6.238185255198488 + ], + [ + 785.8715032, + 5.893536121673009 + ], + [ + 786.3817948, + 8.12854442344046 + ], + [ + 786.8852343, + 7.602339181286553 + ], + [ + 787.3971, + 5.692599620493354 + ], + [ + 787.9074582, + 6.25 + ], + [ + 788.4081365, + 7.212475633528271 + ], + [ + 788.908834, + 5.46875 + ], + [ + 789.4114482, + 7.779886148007591 + ], + [ + 789.9148855, + 5.46875 + ], + [ + 790.4262104, + 7.575757575757578 + ], + [ + 790.9389414, + 8.576998050682263 + ], + [ + 791.4512658, + 4.166666666666657 + ], + [ + 791.7912207, + 4.843304843304836 + ], + [ + 792.2975717, + 3.90625 + ], + [ + 792.8088168, + 13.523809523809533 + ], + [ + 793.3120409, + 16.310679611650485 + ], + [ + 793.8257156, + 26.30560928433269 + ], + [ + 794.3389934, + 49.81343283582089 + ], + [ + 794.8524955, + 96.96969696969697 + ], + [ + 795.3010851, + 93.83033419023137 + ], + [ + 795.8341816, + 12.252252252252248 + ], + [ + 796.3557534, + 46.5034965034965 + ], + [ + 796.9881538, + 100.0 + ], + [ + 797.9374303, + 97.80077619663648 + ], + [ + 798.4658286, + 15.510948905109487 + ], + [ + 798.9671233, + 3.9138943248532314 + ], + [ + 799.4817851, + 6.818181818181827 + ], + [ + 799.9827932, + 5.46875 + ], + [ + 800.4978307, + 5.871212121212125 + ], + [ + 801.0116738, + 7.38636363636364 + ], + [ + 801.5260854, + 6.616257088846879 + ], + [ + 802.0413228, + 6.072106261859574 + ], + [ + 802.5547244, + 5.882352941176478 + ] ]; \ No newline at end of file