[INFO] fetching crate gdnative-bindings-lily 0.9.3... [INFO] checking gdnative-bindings-lily-0.9.3 against master#cf8a95590a1b768b7711f2631d5b5e3ead464de7 for pr-149389 [INFO] extracting crate gdnative-bindings-lily 0.9.3 into /workspace/builds/worker-3-tc1/source [INFO] started tweaking crates.io crate gdnative-bindings-lily 0.9.3 [INFO] finished tweaking crates.io crate gdnative-bindings-lily 0.9.3 [INFO] tweaked toml for crates.io crate gdnative-bindings-lily 0.9.3 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate gdnative-bindings-lily 0.9.3 on toolchain cf8a95590a1b768b7711f2631d5b5e3ead464de7 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cf8a95590a1b768b7711f2631d5b5e3ead464de7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cf8a95590a1b768b7711f2631d5b5e3ead464de7" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 58 packages to latest compatible versions [INFO] [stderr] Adding bitflags v1.3.2 (available: v2.10.0) [INFO] [stderr] Adding gdnative-core v0.9.3 (available: v0.11.3) [INFO] [stderr] Adding gdnative-sys v0.9.3 (available: v0.11.3) [INFO] [stderr] Adding gdnative_bindings_generator v0.9.3 (available: v0.11.3) [INFO] [stderr] Adding heck v0.3.3 (available: v0.5.0) [INFO] [stderr] Adding mini-internal v0.1.13 (available: v0.1.43) [INFO] [stderr] Adding miniserde v0.1.13 (available: v0.1.43) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cf8a95590a1b768b7711f2631d5b5e3ead464de7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded gdnative-impl-proc-macros v0.9.3 [INFO] [stderr] Downloaded mini-internal v0.1.13 [INFO] [stderr] Downloaded bindgen v0.56.0 [INFO] [stderr] Downloaded miniserde v0.1.13 [INFO] [stderr] Downloaded gdnative-core v0.9.3 [INFO] [stderr] Downloaded roxmltree v0.14.1 [INFO] [stderr] Downloaded gdnative_bindings_generator v0.9.3 [INFO] [stderr] Downloaded gdnative-sys v0.9.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+cf8a95590a1b768b7711f2631d5b5e3ead464de7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3b0221d9948a067b8d6294e27da0b5555c71c43ab3cc4e39668b69ab1eca9654 [INFO] running `Command { std: "docker" "start" "-a" "3b0221d9948a067b8d6294e27da0b5555c71c43ab3cc4e39668b69ab1eca9654", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3b0221d9948a067b8d6294e27da0b5555c71c43ab3cc4e39668b69ab1eca9654", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3b0221d9948a067b8d6294e27da0b5555c71c43ab3cc4e39668b69ab1eca9654", kill_on_drop: false }` [INFO] [stdout] 3b0221d9948a067b8d6294e27da0b5555c71c43ab3cc4e39668b69ab1eca9654 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+cf8a95590a1b768b7711f2631d5b5e3ead464de7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fa1e52ae74c17040d65227db829b6d274f255c19b70a286f9f3a52052407a9ea [INFO] running `Command { std: "docker" "start" "-a" "fa1e52ae74c17040d65227db829b6d274f255c19b70a286f9f3a52052407a9ea", kill_on_drop: false }` [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling itoa v0.4.8 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling bindgen v0.56.0 [INFO] [stderr] Compiling clang-sys v1.8.1 [INFO] [stderr] Compiling nom v5.1.3 [INFO] [stderr] Compiling libloading v0.8.9 [INFO] [stderr] Compiling shlex v0.1.1 [INFO] [stderr] Compiling peeking_take_while v0.1.2 [INFO] [stderr] Compiling xmlparser v0.13.6 [INFO] [stderr] Compiling heck v0.3.3 [INFO] [stderr] Checking parking_lot_core v0.8.6 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking approx v0.4.0 [INFO] [stderr] Checking parking_lot v0.11.2 [INFO] [stderr] Compiling roxmltree v0.14.1 [INFO] [stderr] Checking ahash v0.7.8 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling cexpr v0.4.0 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling mini-internal v0.1.13 [INFO] [stderr] Compiling gdnative-impl-proc-macros v0.9.3 [INFO] [stderr] Compiling miniserde v0.1.13 [INFO] [stderr] Compiling gdnative_bindings_generator v0.9.3 [INFO] [stderr] Compiling gdnative-bindings-lily v0.9.3 (/opt/rustwide/workdir) [INFO] [stderr] Compiling gdnative-sys v0.9.3 [INFO] [stderr] Checking gdnative-core v0.9.3 [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:16:1442 [INFO] [stdout] | [INFO] [stdout] 16 | ...l_case_types)] # [derive (Debug)] pub struct VisualScriptSwitch { this : RawObject < Self > , } impl VisualScriptSwitch { # [doc ... [INFO] [stdout] | ------------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualScriptSwitch` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:46:1458 [INFO] [stdout] | [INFO] [stdout] 46 | ...case_types)] # [derive (Debug)] pub struct VisualShaderNodeCustom { this : RawObject < Self > , } impl VisualShaderNodeCustom { #... [INFO] [stdout] | ---------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeCustom` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:88:1842 [INFO] [stdout] | [INFO] [stdout] 88 | ...camel_case_types)] # [derive (Debug)] pub struct VSeparator { this : RawObject < Self > , } impl VSeparator { # [doc = "Creates a... [INFO] [stdout] | ---------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VSeparator` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:112:1798 [INFO] [stdout] | [INFO] [stdout] 112 | ...amel_case_types)] # [derive (Debug)] pub struct Position2D { this : RawObject < Self > , } impl Position2D { # [doc = "Creates a... [INFO] [stdout] | ---------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `Position2D` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:130:1446 [INFO] [stdout] | [INFO] [stdout] 130 | ..._case_types)] # [derive (Debug)] pub struct VisualScriptSubCall { this : RawObject < Self > , } impl VisualScriptSubCall { # [do... [INFO] [stdout] | ------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualScriptSubCall` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:136:1872 [INFO] [stdout] | [INFO] [stdout] 136 | ...el_case_types)] # [derive (Debug)] pub struct MarginContainer { this : RawObject < Self > , } impl MarginContainer { # [doc = "C... [INFO] [stdout] | --------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `MarginContainer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:178:1450 [INFO] [stdout] | [INFO] [stdout] 178 | ...case_types)] # [derive (Debug)] pub struct VisualScriptIndexGet { this : RawObject < Self > , } impl VisualScriptIndexGet { # [d... [INFO] [stdout] | -------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualScriptIndexGet` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:214:1353 [INFO] [stdout] | [INFO] [stdout] 214 | ...case_types)] # [derive (Debug)] pub struct ResourceFormatLoader { this : RawObject < Self > , } impl ResourceFormatLoader { # [d... [INFO] [stdout] | -------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `ResourceFormatLoader` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:250:1460 [INFO] [stdout] | [INFO] [stdout] 250 | ...el_case_types)] # [derive (Debug)] pub struct AudioEffectEQ6 { this : RawObject < Self > , } impl AudioEffectEQ6 { # [doc = "Cre... [INFO] [stdout] | -------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioEffectEQ6` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:292:1478 [INFO] [stdout] | [INFO] [stdout] 292 | ...e_types)] # [derive (Debug)] pub struct VisualShaderNodeVectorClamp { this : RawObject < Self > , } impl VisualShaderNodeVectorC... [INFO] [stdout] | --------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeVectorClamp` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:298:1439 [INFO] [stdout] | [INFO] [stdout] 298 | ...case_types)] # [derive (Debug)] pub struct AudioStreamMicrophone { this : RawObject < Self > , } impl AudioStreamMicrophone { # ... [INFO] [stdout] | --------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioStreamMicrophone` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:334:1553 [INFO] [stdout] | [INFO] [stdout] 334 | ..._types)] # [derive (Debug)] pub struct VisualShaderNodeScalarSwitch { this : RawObject < Self > , } impl VisualShaderNodeScalarS... [INFO] [stdout] | ---------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeScalarSwitch` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:388:1258 [INFO] [stdout] | [INFO] [stdout] 388 | ...camel_case_types)] # [derive (Debug)] pub struct Separator { this : RawObject < Self > , } impl Separator { } impl gdnative_core... [INFO] [stdout] | --------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `Separator` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:430:1482 [INFO] [stdout] | [INFO] [stdout] 430 | ..._types)] # [derive (Debug)] pub struct VisualShaderNodeOuterProduct { this : RawObject < Self > , } impl VisualShaderNodeOuterPr... [INFO] [stdout] | ---------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeOuterProduct` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:442:1906 [INFO] [stdout] | [INFO] [stdout] 442 | ...amel_case_types)] # [derive (Debug)] pub struct CSGCombiner { this : RawObject < Self > , } impl CSGCombiner { # [doc = "Creates... [INFO] [stdout] | ----------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `CSGCombiner` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:448:1560 [INFO] [stdout] | [INFO] [stdout] 448 | ..._types)] # [derive (Debug)] pub struct VisualShaderNodeScalarUniform { this : RawObject < Self > , } impl VisualShaderNodeScalar... [INFO] [stdout] | ----------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeScalarUniform` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:496:1458 [INFO] [stdout] | [INFO] [stdout] 496 | ...types)] # [derive (Debug)] pub struct EditorResourceConversionPlugin { this : RawObject < Self > , } impl EditorResourceConversi... [INFO] [stdout] | ------------------------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `EditorResourceConversionPlugin` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:502:1454 [INFO] [stdout] | [INFO] [stdout] 502 | ...case_types)] # [derive (Debug)] pub struct VisualScriptCondition { this : RawObject < Self > , } impl VisualScriptCondition { # ... [INFO] [stdout] | --------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualScriptCondition` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:598:1866 [INFO] [stdout] | [INFO] [stdout] 598 | ...el_case_types)] # [derive (Debug)] pub struct PanelContainer { this : RawObject < Self > , } impl PanelContainer { # [doc = "Cre... [INFO] [stdout] | -------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `PanelContainer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:670:1926 [INFO] [stdout] | [INFO] [stdout] 670 | ...el_case_types)] # [derive (Debug)] pub struct HSplitContainer { this : RawObject < Self > , } impl HSplitContainer { # [doc = "C... [INFO] [stdout] | --------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `HSplitContainer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:688:1437 [INFO] [stdout] | [INFO] [stdout] 688 | ..._case_types)] # [derive (Debug)] pub struct AnimationNodeOutput { this : RawObject < Self > , } impl AnimationNodeOutput { # [do... [INFO] [stdout] | ------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AnimationNodeOutput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:700:1353 [INFO] [stdout] | [INFO] [stdout] 700 | ...amel_case_types)] # [derive (Debug)] pub struct VideoStream { this : RawObject < Self > , } impl VideoStream { } impl gdnative_c... [INFO] [stdout] | ----------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VideoStream` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:724:1908 [INFO] [stdout] | [INFO] [stdout] 724 | ...mel_case_types)] # [derive (Debug)] pub struct HBoxContainer { this : RawObject < Self > , } impl HBoxContainer { # [doc = "Crea... [INFO] [stdout] | ------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `HBoxContainer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:784:1387 [INFO] [stdout] | [INFO] [stdout] 784 | ..._case_types)] # [derive (Debug)] pub struct StreamPeerGDNative { this : RawObject < Self > , } impl StreamPeerGDNative { # [doc ... [INFO] [stdout] | ------------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `StreamPeerGDNative` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:796:1880 [INFO] [stdout] | [INFO] [stdout] 796 | ...amel_case_types)] # [derive (Debug)] pub struct CheckButton { this : RawObject < Self > , } impl CheckButton { # [doc = "Creates... [INFO] [stdout] | ----------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `CheckButton` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:820:1186 [INFO] [stdout] | [INFO] [stdout] 820 | ...el_case_types)] # [derive (Debug)] pub struct GlobalConstants { this : RawObject < Self > , } # [doc = "Constants"] # [allow (no... [INFO] [stdout] | --------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `GlobalConstants` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:856:1908 [INFO] [stdout] | [INFO] [stdout] 856 | ...mel_case_types)] # [derive (Debug)] pub struct VBoxContainer { this : RawObject < Self > , } impl VBoxContainer { # [doc = "Crea... [INFO] [stdout] | ------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VBoxContainer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:874:1498 [INFO] [stdout] | [INFO] [stdout] 874 | ...ypes)] # [derive (Debug)] pub struct VisualShaderNodeVectorSmoothStep { this : RawObject < Self > , } impl VisualShaderNodeVecto... [INFO] [stdout] | -------------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeVectorSmoothStep` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:880:1832 [INFO] [stdout] | [INFO] [stdout] 880 | ...camel_case_types)] # [derive (Debug)] pub struct SpotLight { this : RawObject < Self > , } impl SpotLight { # [doc = "Creates a ... [INFO] [stdout] | --------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `SpotLight` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:916:1572 [INFO] [stdout] | [INFO] [stdout] 916 | ...ypes)] # [derive (Debug)] pub struct VisualShaderNodeTransformUniform { this : RawObject < Self > , } impl VisualShaderNodeTrans... [INFO] [stdout] | -------------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeTransformUniform` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:922:1429 [INFO] [stdout] | [INFO] [stdout] 922 | ...l_case_types)] # [derive (Debug)] pub struct AnimationRootNode { this : RawObject < Self > , } impl AnimationRootNode { # [doc =... [INFO] [stdout] | ----------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AnimationRootNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:958:1926 [INFO] [stdout] | [INFO] [stdout] 958 | ...el_case_types)] # [derive (Debug)] pub struct VSplitContainer { this : RawObject < Self > , } impl VSplitContainer { # [doc = "C... [INFO] [stdout] | --------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VSplitContainer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1006:1408 [INFO] [stdout] | [INFO] [stdout] 1006 | ...ase_types)] # [derive (Debug)] pub struct ARVRInterfaceGDNative { this : RawObject < Self > , } impl ARVRInterfaceGDNative { # ... [INFO] [stdout] | --------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `ARVRInterfaceGDNative` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1054:1873 [INFO] [stdout] | [INFO] [stdout] 1054 | ...amel_case_types)] # [derive (Debug)] pub struct HScrollBar { this : RawObject < Self > , } impl HScrollBar { # [doc = "Creates ... [INFO] [stdout] | ---------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `HScrollBar` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1072:1307 [INFO] [stdout] | [INFO] [stdout] 1072 | ...e_types)] # [derive (Debug)] pub struct Physics2DDirectBodyStateSW { this : RawObject < Self > , } impl Physics2DDirectBodyStat... [INFO] [stdout] | -------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `Physics2DDirectBodyStateSW` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1096:1516 [INFO] [stdout] | [INFO] [stdout] 1096 | ...e_types)] # [derive (Debug)] pub struct AudioEffectBandPassFilter { this : RawObject < Self > , } impl AudioEffectBandPassFilte... [INFO] [stdout] | ------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioEffectBandPassFilter` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1138:1349 [INFO] [stdout] | [INFO] [stdout] 1138 | ...case_types)] # [derive (Debug)] pub struct AudioEffectInstance { this : RawObject < Self > , } impl AudioEffectInstance { } imp... [INFO] [stdout] | ------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioEffectInstance` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1162:1498 [INFO] [stdout] | [INFO] [stdout] 1162 | ...ypes)] # [derive (Debug)] pub struct VisualShaderNodeTransformCompose { this : RawObject < Self > , } impl VisualShaderNodeTran... [INFO] [stdout] | -------------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeTransformCompose` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1174:1434 [INFO] [stdout] | [INFO] [stdout] 1174 | ...se_types)] # [derive (Debug)] pub struct AnimationTrackEditPlugin { this : RawObject < Self > , } impl AnimationTrackEditPlugin... [INFO] [stdout] | ------------------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AnimationTrackEditPlugin` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1216:1470 [INFO] [stdout] | [INFO] [stdout] 1216 | ..._case_types)] # [derive (Debug)] pub struct EditorImportPlugin { this : RawObject < Self > , } impl EditorImportPlugin { } impl... [INFO] [stdout] | ------------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `EditorImportPlugin` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1240:1771 [INFO] [stdout] | [INFO] [stdout] 1240 | ..._camel_case_types)] # [derive (Debug)] pub struct Panel { this : RawObject < Self > , } impl Panel { # [doc = "Creates a new in... [INFO] [stdout] | ----- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `Panel` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1246:1244 [INFO] [stdout] | [INFO] [stdout] 1246 | ..._case_types)] # [derive (Debug)] pub struct Physics2DServerSW { this : RawObject < Self > , } impl Physics2DServerSW { } impl g... [INFO] [stdout] | ----------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `Physics2DServerSW` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1366:1760 [INFO] [stdout] | [INFO] [stdout] 1366 | ...amel_case_types)] # [derive (Debug)] pub struct Position3D { this : RawObject < Self > , } impl Position3D { # [doc = "Creates ... [INFO] [stdout] | ---------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `Position3D` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1378:1293 [INFO] [stdout] | [INFO] [stdout] 1378 | ...el_case_types)] # [derive (Debug)] pub struct RootMotionView { this : RawObject < Self > , } impl RootMotionView { } impl gdnat... [INFO] [stdout] | -------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `RootMotionView` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1432:1246 [INFO] [stdout] | [INFO] [stdout] 1432 | ...case_types)] # [derive (Debug)] pub struct BulletPhysicsServer { this : RawObject < Self > , } impl BulletPhysicsServer { } imp... [INFO] [stdout] | ------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `BulletPhysicsServer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1444:1478 [INFO] [stdout] | [INFO] [stdout] 1444 | ..._types)] # [derive (Debug)] pub struct VisualShaderNodeScalarClamp { this : RawObject < Self > , } impl VisualShaderNodeScalarC... [INFO] [stdout] | --------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeScalarClamp` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1456:1321 [INFO] [stdout] | [INFO] [stdout] 1456 | ...mel_case_types)] # [derive (Debug)] pub struct SpatialGizmo { this : RawObject < Self > , } impl SpatialGizmo { } impl gdnative... [INFO] [stdout] | ------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `SpatialGizmo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1468:1309 [INFO] [stdout] | [INFO] [stdout] 1468 | ..._types)] # [derive (Debug)] pub struct BulletPhysicsDirectBodyState { this : RawObject < Self > , } impl BulletPhysicsDirectBod... [INFO] [stdout] | ---------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `BulletPhysicsDirectBodyState` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1474:1490 [INFO] [stdout] | [INFO] [stdout] 1474 | ...types)] # [derive (Debug)] pub struct VisualShaderNodeVectorDistance { this : RawObject < Self > , } impl VisualShaderNodeVecto... [INFO] [stdout] | ------------------------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeVectorDistance` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1546:1494 [INFO] [stdout] | [INFO] [stdout] 1546 | ...ypes)] # [derive (Debug)] pub struct VisualShaderNodeVectorDecompose { this : RawObject < Self > , } impl VisualShaderNodeVecto... [INFO] [stdout] | ------------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeVectorDecompose` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1564:1464 [INFO] [stdout] | [INFO] [stdout] 1564 | ...l_case_types)] # [derive (Debug)] pub struct AudioEffectEQ10 { this : RawObject < Self > , } impl AudioEffectEQ10 { # [doc = "C... [INFO] [stdout] | --------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioEffectEQ10` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1576:1474 [INFO] [stdout] | [INFO] [stdout] 1576 | ...e_types)] # [derive (Debug)] pub struct VisualShaderNodeDotProduct { this : RawObject < Self > , } impl VisualShaderNodeDotProd... [INFO] [stdout] | -------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeDotProduct` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1774:1458 [INFO] [stdout] | [INFO] [stdout] 1774 | ...ase_types)] # [derive (Debug)] pub struct VisualScriptExpression { this : RawObject < Self > , } impl VisualScriptExpression { ... [INFO] [stdout] | ---------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualScriptExpression` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1780:1426 [INFO] [stdout] | [INFO] [stdout] 1780 | ...amel_case_types)] # [derive (Debug)] pub struct PointMesh { this : RawObject < Self > , } impl PointMesh { # [doc = "Creates a ... [INFO] [stdout] | --------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `PointMesh` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1798:1482 [INFO] [stdout] | [INFO] [stdout] 1798 | ..._types)] # [derive (Debug)] pub struct VisualShaderNodeScalarInterp { this : RawObject < Self > , } impl VisualShaderNodeScalar... [INFO] [stdout] | ---------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeScalarInterp` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1816:1462 [INFO] [stdout] | [INFO] [stdout] 1816 | ...se_types)] # [derive (Debug)] pub struct VisualShaderNodeFresnel { this : RawObject < Self > , } impl VisualShaderNodeFresnel {... [INFO] [stdout] | ----------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeFresnel` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1822:1445 [INFO] [stdout] | [INFO] [stdout] 1822 | ...ase_types)] # [derive (Debug)] pub struct AnimationNodeTimeSeek { this : RawObject < Self > , } impl AnimationNodeTimeSeek { # ... [INFO] [stdout] | --------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AnimationNodeTimeSeek` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1834:1165 [INFO] [stdout] | [INFO] [stdout] 1834 | ...camel_case_types)] # [derive (Debug)] pub struct IP_Unix { this : RawObject < Self > , } impl IP_Unix { } impl gdnative_core ::... [INFO] [stdout] | ------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `IP_Unix` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1858:1486 [INFO] [stdout] | [INFO] [stdout] 1858 | ...types)] # [derive (Debug)] pub struct VisualShaderNodeVectorRefract { this : RawObject < Self > , } impl VisualShaderNodeVector... [INFO] [stdout] | ----------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeVectorRefract` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1894:1194 [INFO] [stdout] | [INFO] [stdout] 1894 | ...mel_case_types)] # [derive (Debug)] pub struct InputDefault { this : RawObject < Self > , } impl InputDefault { } impl gdnative... [INFO] [stdout] | ------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `InputDefault` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1954:1478 [INFO] [stdout] | [INFO] [stdout] 1954 | ..._types)] # [derive (Debug)] pub struct VisualShaderNodeDeterminant { this : RawObject < Self > , } impl VisualShaderNodeDetermi... [INFO] [stdout] | --------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeDeterminant` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1960:1652 [INFO] [stdout] | [INFO] [stdout] 1960 | ...ypes)] # [derive (Debug)] pub struct VisualShaderNodeGlobalExpression { this : RawObject < Self > , } impl VisualShaderNodeGlob... [INFO] [stdout] | -------------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeGlobalExpression` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1966:1520 [INFO] [stdout] | [INFO] [stdout] 1966 | ...e_types)] # [derive (Debug)] pub struct AudioEffectBandLimitFilter { this : RawObject < Self > , } impl AudioEffectBandLimitFil... [INFO] [stdout] | -------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioEffectBandLimitFilter` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1972:1846 [INFO] [stdout] | [INFO] [stdout] 1972 | ...camel_case_types)] # [derive (Debug)] pub struct VSlider { this : RawObject < Self > , } impl VSlider { # [doc = "Creates a new... [INFO] [stdout] | ------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VSlider` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:1996:1842 [INFO] [stdout] | [INFO] [stdout] 1996 | ...amel_case_types)] # [derive (Debug)] pub struct HSeparator { this : RawObject < Self > , } impl HSeparator { # [doc = "Creates ... [INFO] [stdout] | ---------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `HSeparator` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2062:1450 [INFO] [stdout] | [INFO] [stdout] 2062 | ...case_types)] # [derive (Debug)] pub struct VisualScriptIterator { this : RawObject < Self > , } impl VisualScriptIterator { # [... [INFO] [stdout] | -------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualScriptIterator` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2110:1552 [INFO] [stdout] | [INFO] [stdout] 2110 | ..._types)] # [derive (Debug)] pub struct VisualShaderNodeVec3Uniform { this : RawObject < Self > , } impl VisualShaderNodeVec3Uni... [INFO] [stdout] | --------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeVec3Uniform` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2116:1836 [INFO] [stdout] | [INFO] [stdout] 2116 | ...mel_case_types)] # [derive (Debug)] pub struct PopupDialog { this : RawObject < Self > , } impl PopupDialog { # [doc = "Creates... [INFO] [stdout] | ----------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `PopupDialog` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2128:1412 [INFO] [stdout] | [INFO] [stdout] 2128 | ...mel_case_types)] # [derive (Debug)] pub struct TextureArray { this : RawObject < Self > , } impl TextureArray { # [doc = "Creat... [INFO] [stdout] | ------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `TextureArray` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2134:1688 [INFO] [stdout] | [INFO] [stdout] 2134 | ...)] # [derive (Debug)] pub struct VisualShaderNodeTextureUniformTriplanar { this : RawObject < Self > , } impl VisualShaderNodeT... [INFO] [stdout] | --------------------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeTextureUniformTriplanar` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2176:1341 [INFO] [stdout] | [INFO] [stdout] 2176 | ...camel_case_types)] # [derive (Debug)] pub struct TextFile { this : RawObject < Self > , } impl TextFile { # [doc = "Creates a n... [INFO] [stdout] | -------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `TextFile` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2224:1321 [INFO] [stdout] | [INFO] [stdout] 2224 | ...mel_case_types)] # [derive (Debug)] pub struct TriangleMesh { this : RawObject < Self > , } impl TriangleMesh { # [doc = "Creat... [INFO] [stdout] | ------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `TriangleMesh` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2242:1516 [INFO] [stdout] | [INFO] [stdout] 2242 | ...e_types)] # [derive (Debug)] pub struct AudioEffectHighPassFilter { this : RawObject < Self > , } impl AudioEffectHighPassFilte... [INFO] [stdout] | ------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioEffectHighPassFilter` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2248:1862 [INFO] [stdout] | [INFO] [stdout] 2248 | ...camel_case_types)] # [derive (Debug)] pub struct CheckBox { this : RawObject < Self > , } impl CheckBox { # [doc = "Creates a n... [INFO] [stdout] | -------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `CheckBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2422:1365 [INFO] [stdout] | [INFO] [stdout] 2422 | ...el_case_types)] # [derive (Debug)] pub struct AudioBusLayout { this : RawObject < Self > , } impl AudioBusLayout { # [doc = "Cr... [INFO] [stdout] | -------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioBusLayout` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2434:1309 [INFO] [stdout] | [INFO] [stdout] 2434 | ...amel_case_types)] # [derive (Debug)] pub struct JavaClass { this : RawObject < Self > , } impl JavaClass { # [doc = "Creates a ... [INFO] [stdout] | --------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `JavaClass` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2446:1353 [INFO] [stdout] | [INFO] [stdout] 2446 | ...mel_case_types)] # [derive (Debug)] pub struct AudioEffect { this : RawObject < Self > , } impl AudioEffect { } impl gdnative_c... [INFO] [stdout] | ----------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioEffect` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2500:1482 [INFO] [stdout] | [INFO] [stdout] 2500 | ..._types)] # [derive (Debug)] pub struct VisualShaderNodeVectorInterp { this : RawObject < Self > , } impl VisualShaderNodeVector... [INFO] [stdout] | ---------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeVectorInterp` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2584:1387 [INFO] [stdout] | [INFO] [stdout] 2584 | ..._case_types)] # [derive (Debug)] pub struct PacketPeerGDNative { this : RawObject < Self > , } impl PacketPeerGDNative { # [doc... [INFO] [stdout] | ------------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `PacketPeerGDNative` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2602:1442 [INFO] [stdout] | [INFO] [stdout] 2602 | ..._case_types)] # [derive (Debug)] pub struct VisualShaderNodeIf { this : RawObject < Self > , } impl VisualShaderNodeIf { # [doc... [INFO] [stdout] | ------------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeIf` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2626:1494 [INFO] [stdout] | [INFO] [stdout] 2626 | ...ypes)] # [derive (Debug)] pub struct VisualShaderNodeVectorScalarMix { this : RawObject < Self > , } impl VisualShaderNodeVecto... [INFO] [stdout] | ------------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeVectorScalarMix` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2650:1873 [INFO] [stdout] | [INFO] [stdout] 2650 | ...amel_case_types)] # [derive (Debug)] pub struct VScrollBar { this : RawObject < Self > , } impl VScrollBar { # [doc = "Creates ... [INFO] [stdout] | ---------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VScrollBar` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2656:1349 [INFO] [stdout] | [INFO] [stdout] 2656 | ...case_types)] # [derive (Debug)] pub struct AudioStreamPlayback { this : RawObject < Self > , } impl AudioStreamPlayback { } imp... [INFO] [stdout] | ------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioStreamPlayback` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2680:1454 [INFO] [stdout] | [INFO] [stdout] 2680 | ...ase_types)] # [derive (Debug)] pub struct VisualScriptSceneTree { this : RawObject < Self > , } impl VisualScriptSceneTree { # ... [INFO] [stdout] | --------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualScriptSceneTree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2716:1522 [INFO] [stdout] | [INFO] [stdout] 2716 | ...se_types)] # [derive (Debug)] pub struct VisualScriptComposeArray { this : RawObject < Self > , } impl VisualScriptComposeArray... [INFO] [stdout] | ------------------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualScriptComposeArray` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2770:1337 [INFO] [stdout] | [INFO] [stdout] 2770 | ...l_case_types)] # [derive (Debug)] pub struct ResourceImporter { this : RawObject < Self > , } impl ResourceImporter { } impl gd... [INFO] [stdout] | ---------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `ResourceImporter` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2782:1504 [INFO] [stdout] | [INFO] [stdout] 2782 | ...ase_types)] # [derive (Debug)] pub struct AudioEffectNotchFilter { this : RawObject < Self > , } impl AudioEffectNotchFilter { ... [INFO] [stdout] | ---------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioEffectNotchFilter` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2842:1470 [INFO] [stdout] | [INFO] [stdout] 2842 | ...e_types)] # [derive (Debug)] pub struct VisualShaderNodeVectorLen { this : RawObject < Self > , } impl VisualShaderNodeVectorLe... [INFO] [stdout] | ------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeVectorLen` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2908:1506 [INFO] [stdout] | [INFO] [stdout] 2908 | ...pes)] # [derive (Debug)] pub struct VisualShaderNodeTransformDecompose { this : RawObject < Self > , } impl VisualShaderNodeTra... [INFO] [stdout] | ---------------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeTransformDecompose` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2920:1365 [INFO] [stdout] | [INFO] [stdout] 2920 | ...el_case_types)] # [derive (Debug)] pub struct RichTextEffect { this : RawObject < Self > , } impl RichTextEffect { # [doc = "Cr... [INFO] [stdout] | -------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `RichTextEffect` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2938:1512 [INFO] [stdout] | [INFO] [stdout] 2938 | ...se_types)] # [derive (Debug)] pub struct AudioEffectLowPassFilter { this : RawObject < Self > , } impl AudioEffectLowPassFilter... [INFO] [stdout] | ------------------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioEffectLowPassFilter` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:2950:1454 [INFO] [stdout] | [INFO] [stdout] 2950 | ..._types)] # [derive (Debug)] pub struct AudioStreamPlaybackResampled { this : RawObject < Self > , } impl AudioStreamPlaybackRes... [INFO] [stdout] | ---------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioStreamPlaybackResampled` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3034:1450 [INFO] [stdout] | [INFO] [stdout] 3034 | ...case_types)] # [derive (Debug)] pub struct VisualScriptFunction { this : RawObject < Self > , } impl VisualScriptFunction { # [... [INFO] [stdout] | -------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualScriptFunction` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3040:1498 [INFO] [stdout] | [INFO] [stdout] 3040 | ...ypes)] # [derive (Debug)] pub struct VisualShaderNodeScalarSmoothStep { this : RawObject < Self > , } impl VisualShaderNodeScal... [INFO] [stdout] | -------------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeScalarSmoothStep` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3046:1486 [INFO] [stdout] | [INFO] [stdout] 3046 | ...types)] # [derive (Debug)] pub struct VisualShaderNodeVectorCompose { this : RawObject < Self > , } impl VisualShaderNodeVector... [INFO] [stdout] | ----------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeVectorCompose` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3064:1458 [INFO] [stdout] | [INFO] [stdout] 3064 | ...ase_types)] # [derive (Debug)] pub struct VisualShaderNodeOutput { this : RawObject < Self > , } impl VisualShaderNodeOutput { ... [INFO] [stdout] | ---------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeOutput` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3076:1434 [INFO] [stdout] | [INFO] [stdout] 3076 | ...l_case_types)] # [derive (Debug)] pub struct VisualScriptSelf { this : RawObject < Self > , } impl VisualScriptSelf { # [doc = ... [INFO] [stdout] | ---------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualScriptSelf` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3094:1874 [INFO] [stdout] | [INFO] [stdout] 3094 | ...amel_case_types)] # [derive (Debug)] pub struct ToolButton { this : RawObject < Self > , } impl ToolButton { # [doc = "Creates ... [INFO] [stdout] | ---------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `ToolButton` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3100:1478 [INFO] [stdout] | [INFO] [stdout] 3100 | ..._types)] # [derive (Debug)] pub struct VisualShaderNodeFaceForward { this : RawObject < Self > , } impl VisualShaderNodeFaceFor... [INFO] [stdout] | --------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeFaceForward` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3136:1457 [INFO] [stdout] | [INFO] [stdout] 3136 | ..._types)] # [derive (Debug)] pub struct WebRTCPeerConnectionGDNative { this : RawObject < Self > , } impl WebRTCPeerConnectionGD... [INFO] [stdout] | ---------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `WebRTCPeerConnectionGDNative` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3142:1450 [INFO] [stdout] | [INFO] [stdout] 3142 | ...case_types)] # [derive (Debug)] pub struct VisualScriptIndexSet { this : RawObject < Self > , } impl VisualScriptIndexSet { # [... [INFO] [stdout] | -------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualScriptIndexSet` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3172:1464 [INFO] [stdout] | [INFO] [stdout] 3172 | ...l_case_types)] # [derive (Debug)] pub struct AudioEffectEQ21 { this : RawObject < Self > , } impl AudioEffectEQ21 { # [doc = "C... [INFO] [stdout] | --------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioEffectEQ21` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3196:1520 [INFO] [stdout] | [INFO] [stdout] 3196 | ...e_types)] # [derive (Debug)] pub struct AudioEffectHighShelfFilter { this : RawObject < Self > , } impl AudioEffectHighShelfFil... [INFO] [stdout] | -------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioEffectHighShelfFilter` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3280:1495 [INFO] [stdout] | [INFO] [stdout] 3280 | ...ase_types)] # [derive (Debug)] pub struct EditorSceneImporterFBX { this : RawObject < Self > , } impl EditorSceneImporterFBX { ... [INFO] [stdout] | ---------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `EditorSceneImporterFBX` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3286:1830 [INFO] [stdout] | [INFO] [stdout] 3286 | ...amel_case_types)] # [derive (Debug)] pub struct PopupPanel { this : RawObject < Self > , } impl PopupPanel { # [doc = "Creates ... [INFO] [stdout] | ---------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `PopupPanel` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3298:1398 [INFO] [stdout] | [INFO] [stdout] 3298 | ...el_case_types)] # [derive (Debug)] pub struct StyleBoxEmpty { this : RawObject < Self > , } impl StyleBoxEmpty { # [doc = "Crea... [INFO] [stdout] | ------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `StyleBoxEmpty` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3334:1458 [INFO] [stdout] | [INFO] [stdout] 3334 | ...ase_types)] # [derive (Debug)] pub struct VisualScriptCustomNode { this : RawObject < Self > , } # [derive (Copy , Clone , Debu... [INFO] [stdout] | ---------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualScriptCustomNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3382:1652 [INFO] [stdout] | [INFO] [stdout] 3382 | ...types)] # [derive (Debug)] pub struct VisualShaderNodeCubeMapUniform { this : RawObject < Self > , } impl VisualShaderNodeCubeM... [INFO] [stdout] | ------------------------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeCubeMapUniform` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3400:1564 [INFO] [stdout] | [INFO] [stdout] 3400 | ...types)] # [derive (Debug)] pub struct VisualShaderNodeBooleanUniform { this : RawObject < Self > , } impl VisualShaderNodeBoole... [INFO] [stdout] | ------------------------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeBooleanUniform` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3412:1458 [INFO] [stdout] | [INFO] [stdout] 3412 | ...types)] # [derive (Debug)] pub struct EditorResourcePreviewGenerator { this : RawObject < Self > , } impl EditorResourcePreview... [INFO] [stdout] | ------------------------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `EditorResourcePreviewGenerator` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3436:1846 [INFO] [stdout] | [INFO] [stdout] 3436 | ...camel_case_types)] # [derive (Debug)] pub struct HSlider { this : RawObject < Self > , } impl HSlider { # [doc = "Creates a new... [INFO] [stdout] | ------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `HSlider` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3460:1477 [INFO] [stdout] | [INFO] [stdout] 3460 | ...e_types)] # [derive (Debug)] pub struct WebRTCDataChannelGDNative { this : RawObject < Self > , } impl WebRTCDataChannelGDNativ... [INFO] [stdout] | ------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `WebRTCDataChannelGDNative` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3466:1522 [INFO] [stdout] | [INFO] [stdout] 3466 | ...s)] # [derive (Debug)] pub struct VisualShaderNodeVectorScalarSmoothStep { this : RawObject < Self > , } impl VisualShaderNodeV... [INFO] [stdout] | -------------------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeVectorScalarSmoothStep` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3484:1349 [INFO] [stdout] | [INFO] [stdout] 3484 | ...case_types)] # [derive (Debug)] pub struct ResourceFormatSaver { this : RawObject < Self > , } impl ResourceFormatSaver { # [do... [INFO] [stdout] | ------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `ResourceFormatSaver` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3520:1490 [INFO] [stdout] | [INFO] [stdout] 3520 | ...se_types)] # [derive (Debug)] pub struct MultiplayerPeerGDNative { this : RawObject < Self > , } impl MultiplayerPeerGDNative {... [INFO] [stdout] | ----------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `MultiplayerPeerGDNative` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3526:1556 [INFO] [stdout] | [INFO] [stdout] 3526 | ..._types)] # [derive (Debug)] pub struct VisualShaderNodeColorUniform { this : RawObject < Self > , } impl VisualShaderNodeColorU... [INFO] [stdout] | ---------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeColorUniform` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3550:1707 [INFO] [stdout] | [INFO] [stdout] 3550 | ...mel_case_types)] # [derive (Debug)] pub struct JNISingleton { this : RawObject < Self > , } impl JNISingleton { # [doc = "Creat... [INFO] [stdout] | ------------ ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `JNISingleton` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3616:1516 [INFO] [stdout] | [INFO] [stdout] 3616 | ...e_types)] # [derive (Debug)] pub struct AudioEffectLowShelfFilter { this : RawObject < Self > , } impl AudioEffectLowShelfFilte... [INFO] [stdout] | ------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AudioEffectLowShelfFilter` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3652:1438 [INFO] [stdout] | [INFO] [stdout] 3652 | ..._case_types)] # [derive (Debug)] pub struct VisualScriptWhile { this : RawObject < Self > , } impl VisualScriptWhile { # [doc =... [INFO] [stdout] | ----------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualScriptWhile` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3670:1400 [INFO] [stdout] | [INFO] [stdout] 3670 | ...amel_case_types)] # [derive (Debug)] pub struct Texture3D { this : RawObject < Self > , } impl Texture3D { # [doc = "Creates a ... [INFO] [stdout] | --------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `Texture3D` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3688:1458 [INFO] [stdout] | [INFO] [stdout] 3688 | ...ase_types)] # [derive (Debug)] pub struct VisualShaderNodeSwitch { this : RawObject < Self > , } impl VisualShaderNodeSwitch { ... [INFO] [stdout] | ---------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeSwitch` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3754:1498 [INFO] [stdout] | [INFO] [stdout] 3754 | ...ypes)] # [derive (Debug)] pub struct VisualShaderNodeVectorScalarStep { this : RawObject < Self > , } impl VisualShaderNodeVect... [INFO] [stdout] | -------------------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `VisualShaderNodeVectorScalarStep` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3760:1449 [INFO] [stdout] | [INFO] [stdout] 3760 | ...ase_types)] # [derive (Debug)] pub struct AnimationNodeTimeScale { this : RawObject < Self > , } impl AnimationNodeTimeScale { ... [INFO] [stdout] | ---------------------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `AnimationNodeTimeScale` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `this` is never read [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:3772:1792 [INFO] [stdout] | [INFO] [stdout] 3772 | ...amel_case_types)] # [derive (Debug)] pub struct ARVRCamera { this : RawObject < Self > , } impl ARVRCamera { # [doc = "Creates ... [INFO] [stdout] | ---------- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `ARVRCamera` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:4:9052 [INFO] [stdout] | [INFO] [stdout] 4 | ... 0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'sta... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 4 | # [doc = "`core class StreamPeerSSL` inherits `StreamPeer` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_streampeerssl.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nStreamPeerSSL inherits methods from:\n - [StreamPeer](struct.StreamPeer.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct StreamPeerSSL { this : RawObject < Self > , } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct Status (pub i64) ; impl Status { pub const DISCONNECTED : Status = Status (0i64) ; pub const HANDSHAKING : Status = Status (1i64) ; pub const CONNECTED : Status = Status (2i64) ; pub const ERROR : Status = Status (3i64) ; pub const ERROR_HOSTNAME_MISMATCH : Status = Status (4i64) ; } impl From < i64 > for Status { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < Status > for i64 { # [inline] fn from (v : Status) -> Self { v . 0 } } # [doc = "Constants"] # [allow (non_upper_case_globals)] impl StreamPeerSSL { pub const STATUS_CONNECTED : i64 = 2i64 ; pub const STATUS_DISCONNECTED : i64 = 0i64 ; pub const STATUS_ERROR : i64 = 3i64 ; pub const STATUS_ERROR_HOSTNAME_MISMATCH : i64 = 4i64 ; pub const STATUS_HANDSHAKING : i64 = 1i64 ; } impl StreamPeerSSL { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = StreamPeerSSLMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "Accepts a peer connection as a server using the given `private_key` and providing the given `certificate` to the client. You can pass the optional `chain` parameter to provide additional CA chain information along with the certificate.\n# Default Arguments\n* `chain` - `null`"] # [doc = ""] # [inline] pub fn accept_stream (& self , stream : impl AsArg < crate :: generated :: stream_peer :: StreamPeer > , private_key : impl AsArg < crate :: generated :: crypto_key :: CryptoKey > , certificate : impl AsArg < crate :: generated :: x509_certificate :: X509Certificate > , chain : impl AsArg < crate :: generated :: x509_certificate :: X509Certificate >) -> GodotResult { unsafe { let method_bind : * mut sys :: godot_method_bind = StreamPeerSSLMethodTable :: get (get_api ()) . accept_stream ; let ret = crate :: icalls :: icallptr_i64_obj_obj_obj_obj (method_bind , self . this . sys () . as_ptr () , stream . as_arg_ptr () , private_key . as_arg_ptr () , certificate . as_arg_ptr () , chain . as_arg_ptr ()) ; GodotError :: result_from_sys (ret as _) } } # [doc = "Connects to a peer using an underlying [StreamPeer] `stream`. If `validate_certs` is `true`, [StreamPeerSSL] will validate that the certificate presented by the peer matches the `for_hostname`.\n**Note:** Specifying a custom `valid_certificate` is not supported in HTML5 exports due to browsers restrictions.\n# Default Arguments\n* `validate_certs` - `false`\n* `for_hostname` - `\"\"`\n* `valid_certificate` - `null`"] # [doc = ""] # [inline] pub fn connect_to_stream (& self , stream : impl AsArg < crate :: generated :: stream_peer :: StreamPeer > , validate_certs : bool , for_hostname : impl Into < GodotString > , valid_certificate : impl AsArg < crate :: generated :: x509_certificate :: X509Certificate >) -> GodotResult { unsafe { let method_bind : * mut sys :: godot_method_bind = StreamPeerSSLMethodTable :: get (get_api ()) . connect_to_stream ; let ret = crate :: icalls :: icallptr_i64_obj_bool_str_obj (method_bind , self . this . sys () . as_ptr () , stream . as_arg_ptr () , validate_certs , for_hostname . into () , valid_certificate . as_arg_ptr ()) ; GodotError :: result_from_sys (ret as _) } } # [doc = "Disconnects from host."] # [doc = ""] # [inline] pub fn disconnect_from_stream (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StreamPeerSSLMethodTable :: get (get_api ()) . disconnect_from_stream ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = "Returns the status of the connection. See [enum Status] for values."] # [doc = ""] # [inline] pub fn get_status (& self) -> crate :: generated :: stream_peer_ssl :: Status { unsafe { let method_bind : * mut sys :: godot_method_bind = StreamPeerSSLMethodTable :: get (get_api ()) . get_status ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; crate :: generated :: stream_peer_ssl :: Status (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn is_blocking_handshake_enabled (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = StreamPeerSSLMethodTable :: get (get_api ()) . is_blocking_handshake_enabled ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Poll the connection to check for incoming bytes. Call this right before [method StreamPeer.get_available_bytes] for it to work properly."] # [doc = ""] # [inline] pub fn poll (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StreamPeerSSLMethodTable :: get (get_api ()) . poll ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_blocking_handshake_enabled (& self , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StreamPeerSSLMethodTable :: get (get_api ()) . set_blocking_handshake_enabled ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , enabled) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for StreamPeerSSL { } unsafe impl GodotObject for StreamPeerSSL { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "StreamPeerSSL" } } impl std :: ops :: Deref for StreamPeerSSL { type Target = crate :: generated :: stream_peer :: StreamPeer ; # [inline] fn deref (& self) -> & crate :: generated :: stream_peer :: StreamPeer { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for StreamPeerSSL { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: stream_peer :: StreamPeer { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: stream_peer :: StreamPeer > for StreamPeerSSL { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for StreamPeerSSL { } unsafe impl SubClass < crate :: generated :: object :: Object > for StreamPeerSSL { } impl Instanciable for StreamPeerSSL { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { StreamPeerSSL :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct StreamPeerSSLMethodTable { pub class_constructor : sys :: godot_class_constructor , pub accept_stream : * mut sys :: godot_method_bind , pub connect_to_stream : * mut sys :: godot_method_bind , pub disconnect_from_stream : * mut sys :: godot_method_bind , pub get_status : * mut sys :: godot_method_bind , pub is_blocking_handshake_enabled : * mut sys :: godot_method_bind , pub poll : * mut sys :: godot_method_bind , pub set_blocking_handshake_enabled : * mut sys :: godot_method_bind } impl StreamPeerSSLMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : StreamPeerSSLMethodTable = StreamPeerSSLMethodTable { class_constructor : None , accept_stream : 0 as * mut sys :: godot_method_bind , connect_to_stream : 0 as * mut sys :: godot_method_bind , disconnect_from_stream : 0 as * mut sys :: godot_method_bind , get_status : 0 as * mut sys :: godot_method_bind , is_blocking_handshake_enabled : 0 as * mut sys :: godot_method_bind , poll : 0 as * mut sys :: godot_method_bind , set_blocking_handshake_enabled : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { StreamPeerSSLMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "StreamPeerSSL\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . accept_stream = (gd_api . godot_method_bind_get_method) (class_name , "accept_stream\0" . as_ptr () as * const c_char) ; table . connect_to_stream = (gd_api . godot_method_bind_get_method) (class_name , "connect_to_stream\0" . as_ptr () as * const c_char) ; table . disconnect_from_stream = (gd_api . godot_method_bind_get_method) (class_name , "disconnect_from_stream\0" . as_ptr () as * const c_char) ; table . get_status = (gd_api . godot_method_bind_get_method) (class_name , "get_status\0" . as_ptr () as * const c_char) ; table . is_blocking_handshake_enabled = (gd_api . godot_method_bind_get_method) (class_name , "is_blocking_handshake_enabled\0" . as_ptr () as * const c_char) ; table . poll = (gd_api . godot_method_bind_get_method) (class_name , "poll\0" . as_ptr () as * const c_char) ; table . set_blocking_handshake_enabled = (gd_api . godot_method_bind_get_method) (class_name , "set_blocking_handshake_enabled\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:10:5721 [INFO] [stdout] | [INFO] [stdout] 10 | ... 0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 10 | # [doc = "`core class InputEventJoypadMotion` inherits `InputEvent` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_inputeventjoypadmotion.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nInputEventJoypadMotion inherits methods from:\n - [InputEvent](struct.InputEvent.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct InputEventJoypadMotion { this : RawObject < Self > , } impl InputEventJoypadMotion { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = InputEventJoypadMotionMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "Axis identifier. Use one of the [enum JoystickList] axis constants."] # [doc = ""] # [inline] pub fn axis (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventJoypadMotionMethodTable :: get (get_api ()) . get_axis ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Current position of the joystick on the given axis. The value ranges from `-1.0` to `1.0`. A value of `0` means the axis is in its resting position."] # [doc = ""] # [inline] pub fn axis_value (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventJoypadMotionMethodTable :: get (get_api ()) . get_axis_value ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Axis identifier. Use one of the [enum JoystickList] axis constants."] # [doc = ""] # [inline] pub fn set_axis (& self , axis : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventJoypadMotionMethodTable :: get (get_api ()) . set_axis ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , axis) ; } } # [doc = "Current position of the joystick on the given axis. The value ranges from `-1.0` to `1.0`. A value of `0` means the axis is in its resting position."] # [doc = ""] # [inline] pub fn set_axis_value (& self , axis_value : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventJoypadMotionMethodTable :: get (get_api ()) . set_axis_value ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , axis_value) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for InputEventJoypadMotion { } unsafe impl GodotObject for InputEventJoypadMotion { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "InputEventJoypadMotion" } } impl std :: ops :: Deref for InputEventJoypadMotion { type Target = crate :: generated :: input_event :: InputEvent ; # [inline] fn deref (& self) -> & crate :: generated :: input_event :: InputEvent { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for InputEventJoypadMotion { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: input_event :: InputEvent { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: input_event :: InputEvent > for InputEventJoypadMotion { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for InputEventJoypadMotion { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for InputEventJoypadMotion { } unsafe impl SubClass < crate :: generated :: object :: Object > for InputEventJoypadMotion { } impl Instanciable for InputEventJoypadMotion { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { InputEventJoypadMotion :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct InputEventJoypadMotionMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_axis : * mut sys :: godot_method_bind , pub get_axis_value : * mut sys :: godot_method_bind , pub set_axis : * mut sys :: godot_method_bind , pub set_axis_value : * mut sys :: godot_method_bind } impl InputEventJoypadMotionMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : InputEventJoypadMotionMethodTable = InputEventJoypadMotionMethodTable { class_constructor : None , get_axis : 0 as * mut sys :: godot_method_bind , get_axis_value : 0 as * mut sys :: godot_method_bind , set_axis : 0 as * mut sys :: godot_method_bind , set_axis_value : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { InputEventJoypadMotionMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "InputEventJoypadMotion\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_axis = (gd_api . godot_method_bind_get_method) (class_name , "get_axis\0" . as_ptr () as * const c_char) ; table . get_axis_value = (gd_api . godot_method_bind_get_method) (class_name , "get_axis_value\0" . as_ptr () as * const c_char) ; table . set_axis = (gd_api . godot_method_bind_get_method) (class_name , "set_axis\0" . as_ptr () as * const c_char) ; table . set_axis_value = (gd_api . godot_method_bind_get_method) (class_name , "set_axis_value\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:16:3595 [INFO] [stdout] | [INFO] [stdout] 16 | ...odTable { class_constructor : None , } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 16 | # [doc = "`core class VisualScriptSwitch` inherits `VisualScriptNode` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualscriptswitch.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nVisualScriptSwitch inherits methods from:\n - [VisualScriptNode](struct.VisualScriptNode.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualScriptSwitch { this : RawObject < Self > , } impl VisualScriptSwitch { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisualScriptSwitchMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualScriptSwitch { } unsafe impl GodotObject for VisualScriptSwitch { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "VisualScriptSwitch" } } impl std :: ops :: Deref for VisualScriptSwitch { type Target = crate :: generated :: visual_script_node :: VisualScriptNode ; # [inline] fn deref (& self) -> & crate :: generated :: visual_script_node :: VisualScriptNode { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualScriptSwitch { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: visual_script_node :: VisualScriptNode { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: visual_script_node :: VisualScriptNode > for VisualScriptSwitch { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for VisualScriptSwitch { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for VisualScriptSwitch { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualScriptSwitch { } impl Instanciable for VisualScriptSwitch { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisualScriptSwitch :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualScriptSwitchMethodTable { pub class_constructor : sys :: godot_class_constructor , } impl VisualScriptSwitchMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualScriptSwitchMethodTable = VisualScriptSwitchMethodTable { class_constructor : None , } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualScriptSwitchMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualScriptSwitch\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:22:6978 [INFO] [stdout] | [INFO] [stdout] 22 | ... 0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 22 | # [doc = "`core class VisibilityEnabler2D` inherits `VisibilityNotifier2D` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visibilityenabler2d.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nNon reference counted objects such as the ones of this type are usually owned by the engine.\n\n`VisibilityEnabler2D` is a reference-only type. Persistent references can\nonly exist in the unsafe `Ref` form.\n\nIn the cases where Rust code owns an object of this type, for example if the object was just\ncreated on the Rust side and not passed to the engine yet, ownership should be either given\nto the engine or the object must be manually destroyed using `Ref::free`, or `Ref::queue_free`\nif it is a `Node`."] # [doc = "\n## Class hierarchy\n\nVisibilityEnabler2D inherits methods from:\n - [VisibilityNotifier2D](struct.VisibilityNotifier2D.html)\n - [Node2D](struct.Node2D.html)\n - [CanvasItem](struct.CanvasItem.html)\n - [Node](struct.Node.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisibilityEnabler2D { this : RawObject < Self > , } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct Enabler (pub i64) ; impl Enabler { pub const PAUSE_ANIMATIONS : Enabler = Enabler (0i64) ; pub const FREEZE_BODIES : Enabler = Enabler (1i64) ; pub const PAUSE_PARTICLES : Enabler = Enabler (2i64) ; pub const PARENT_PROCESS : Enabler = Enabler (3i64) ; pub const PARENT_PHYSICS_PROCESS : Enabler = Enabler (4i64) ; pub const PAUSE_ANIMATED_SPRITES : Enabler = Enabler (5i64) ; pub const MAX : Enabler = Enabler (6i64) ; } impl From < i64 > for Enabler { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < Enabler > for i64 { # [inline] fn from (v : Enabler) -> Self { v . 0 } } # [doc = "Constants"] # [allow (non_upper_case_globals)] impl VisibilityEnabler2D { pub const ENABLER_FREEZE_BODIES : i64 = 1i64 ; pub const ENABLER_MAX : i64 = 6i64 ; pub const ENABLER_PARENT_PHYSICS_PROCESS : i64 = 4i64 ; pub const ENABLER_PARENT_PROCESS : i64 = 3i64 ; pub const ENABLER_PAUSE_ANIMATED_SPRITES : i64 = 5i64 ; pub const ENABLER_PAUSE_ANIMATIONS : i64 = 0i64 ; pub const ENABLER_PAUSE_PARTICLES : i64 = 2i64 ; } impl VisibilityEnabler2D { # [doc = "Creates a new instance of this object.\n\nBecause this type is not reference counted, the lifetime of the returned object\nis *not* automatically managed.\n\nImmediately after creation, the object is owned by the caller, and can be\npassed to the engine (in which case the engine will be responsible for\ndestroying the object) or destroyed manually using `Ref::free`, or preferably\n`Ref::queue_free` if it is a `Node`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisibilityEnabler2DMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "If `true`, the parent's [method Node._process] will be stopped."] # [doc = ""] # [inline] pub fn is_enabler_enabled (& self , enabler : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = VisibilityEnabler2DMethodTable :: get (get_api ()) . is_enabler_enabled ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , enabler) ; ret as _ } } # [doc = "If `true`, the parent's [method Node._process] will be stopped."] # [doc = ""] # [inline] pub fn set_enabler (& self , enabler : i64 , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisibilityEnabler2DMethodTable :: get (get_api ()) . set_enabler ; let ret = crate :: icalls :: icallptr_void_i64_bool (method_bind , self . this . sys () . as_ptr () , enabler , enabled) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for VisibilityEnabler2D { } unsafe impl GodotObject for VisibilityEnabler2D { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "VisibilityEnabler2D" } } impl QueueFree for VisibilityEnabler2D { # [inline] unsafe fn godot_queue_free (obj : * mut sys :: godot_object) { let method_bind : * mut sys :: godot_method_bind = crate :: generated :: node :: NodeMethodTable :: get (get_api ()) . queue_free ; crate :: icalls :: icallptr_void (method_bind , obj) } } impl std :: ops :: Deref for VisibilityEnabler2D { type Target = crate :: generated :: visibility_notifier_2d :: VisibilityNotifier2D ; # [inline] fn deref (& self) -> & crate :: generated :: visibility_notifier_2d :: VisibilityNotifier2D { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisibilityEnabler2D { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: visibility_notifier_2d :: VisibilityNotifier2D { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: visibility_notifier_2d :: VisibilityNotifier2D > for VisibilityEnabler2D { } unsafe impl SubClass < crate :: generated :: node_2d :: Node2D > for VisibilityEnabler2D { } unsafe impl SubClass < crate :: generated :: canvas_item :: CanvasItem > for VisibilityEnabler2D { } unsafe impl SubClass < crate :: generated :: node :: Node > for VisibilityEnabler2D { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisibilityEnabler2D { } impl Instanciable for VisibilityEnabler2D { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisibilityEnabler2D :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisibilityEnabler2DMethodTable { pub class_constructor : sys :: godot_class_constructor , pub is_enabler_enabled : * mut sys :: godot_method_bind , pub set_enabler : * mut sys :: godot_method_bind } impl VisibilityEnabler2DMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisibilityEnabler2DMethodTable = VisibilityEnabler2DMethodTable { class_constructor : None , is_enabler_enabled : 0 as * mut sys :: godot_method_bind , set_enabler : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisibilityEnabler2DMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisibilityEnabler2D\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . is_enabler_enabled = (gd_api . godot_method_bind_get_method) (class_name , "is_enabler_enabled\0" . as_ptr () as * const c_char) ; table . set_enabler = (gd_api . godot_method_bind_get_method) (class_name , "set_enabler\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:28:4444 [INFO] [stdout] | [INFO] [stdout] 28 | ... 0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 28 | # [doc = "`core class AudioEffectSpectrumAnalyzerInstance` inherits `AudioEffectInstance` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_audioeffectspectrumanalyzerinstance.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nAudioEffectSpectrumAnalyzerInstance inherits methods from:\n - [AudioEffectInstance](struct.AudioEffectInstance.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct AudioEffectSpectrumAnalyzerInstance { this : RawObject < Self > , } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct MagnitudeMode (pub i64) ; impl MagnitudeMode { pub const AVERAGE : MagnitudeMode = MagnitudeMode (0i64) ; pub const MAX : MagnitudeMode = MagnitudeMode (1i64) ; } impl From < i64 > for MagnitudeMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < MagnitudeMode > for i64 { # [inline] fn from (v : MagnitudeMode) -> Self { v . 0 } } # [doc = "Constants"] # [allow (non_upper_case_globals)] impl AudioEffectSpectrumAnalyzerInstance { pub const MAGNITUDE_AVERAGE : i64 = 0i64 ; pub const MAGNITUDE_MAX : i64 = 1i64 ; } impl AudioEffectSpectrumAnalyzerInstance { # [doc = "\n# Default Arguments\n* `mode` - `1`"] # [doc = ""] # [inline] pub fn get_magnitude_for_frequency_range (& self , from_hz : f64 , to_hz : f64 , mode : i64) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioEffectSpectrumAnalyzerInstanceMethodTable :: get (get_api ()) . get_magnitude_for_frequency_range ; let ret = crate :: icalls :: icallptr_vec2_f64_f64_i64 (method_bind , self . this . sys () . as_ptr () , from_hz , to_hz , mode) ; mem :: transmute (ret) } } } impl gdnative_core :: private :: godot_object :: Sealed for AudioEffectSpectrumAnalyzerInstance { } unsafe impl GodotObject for AudioEffectSpectrumAnalyzerInstance { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "AudioEffectSpectrumAnalyzerInstance" } } impl std :: ops :: Deref for AudioEffectSpectrumAnalyzerInstance { type Target = crate :: generated :: audio_effect_instance :: AudioEffectInstance ; # [inline] fn deref (& self) -> & crate :: generated :: audio_effect_instance :: AudioEffectInstance { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for AudioEffectSpectrumAnalyzerInstance { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: audio_effect_instance :: AudioEffectInstance { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: audio_effect_instance :: AudioEffectInstance > for AudioEffectSpectrumAnalyzerInstance { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for AudioEffectSpectrumAnalyzerInstance { } unsafe impl SubClass < crate :: generated :: object :: Object > for AudioEffectSpectrumAnalyzerInstance { } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct AudioEffectSpectrumAnalyzerInstanceMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_magnitude_for_frequency_range : * mut sys :: godot_method_bind } impl AudioEffectSpectrumAnalyzerInstanceMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : AudioEffectSpectrumAnalyzerInstanceMethodTable = AudioEffectSpectrumAnalyzerInstanceMethodTable { class_constructor : None , get_magnitude_for_frequency_range : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { AudioEffectSpectrumAnalyzerInstanceMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "AudioEffectSpectrumAnalyzerInstance\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_magnitude_for_frequency_range = (gd_api . godot_method_bind_get_method) (class_name , "get_magnitude_for_frequency_range\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:34:5009 [INFO] [stdout] | [INFO] [stdout] 34 | ... 0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 34 | # [doc = "`tools class EditorSceneImporter` inherits `Reference` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_editorsceneimporter.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nEditorSceneImporter inherits methods from:\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = "\n## Tool\n\nThis class is used to interact with Godot's editor."] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct EditorSceneImporter { this : RawObject < Self > , } # [doc = "Constants"] # [allow (non_upper_case_globals)] impl EditorSceneImporter { pub const IMPORT_ANIMATION : i64 = 2i64 ; pub const IMPORT_ANIMATION_DETECT_LOOP : i64 = 4i64 ; pub const IMPORT_ANIMATION_FORCE_ALL_TRACKS_IN_ALL_CLIPS : i64 = 16i64 ; pub const IMPORT_ANIMATION_KEEP_VALUE_TRACKS : i64 = 32i64 ; pub const IMPORT_ANIMATION_OPTIMIZE : i64 = 8i64 ; pub const IMPORT_FAIL_ON_MISSING_DEPENDENCIES : i64 = 512i64 ; pub const IMPORT_GENERATE_TANGENT_ARRAYS : i64 = 256i64 ; pub const IMPORT_MATERIALS_IN_INSTANCES : i64 = 1024i64 ; pub const IMPORT_SCENE : i64 = 1i64 ; pub const IMPORT_USE_COMPRESSION : i64 = 2048i64 ; } impl EditorSceneImporter { # [doc = ""] # [doc = ""] # [inline] pub fn import_animation_from_other_importer (& self , path : impl Into < GodotString > , flags : i64 , bake_fps : i64) -> Option < Ref < crate :: generated :: animation :: Animation , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSceneImporterMethodTable :: get (get_api ()) . import_animation_from_other_importer ; let ret = crate :: icalls :: icallptr_obj_str_i64_i64 (method_bind , self . this . sys () . as_ptr () , path . into () , flags , bake_fps) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: animation :: Animation , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = ""] # [doc = ""] # [inline] pub fn import_scene_from_other_importer (& self , path : impl Into < GodotString > , flags : i64 , bake_fps : i64) -> Option < Ref < crate :: generated :: node :: Node , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSceneImporterMethodTable :: get (get_api ()) . import_scene_from_other_importer ; let ret = crate :: icalls :: icallptr_obj_str_i64_i64 (method_bind , self . this . sys () . as_ptr () , path . into () , flags , bake_fps) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: node :: Node , thread_access :: Shared >> :: move_from_sys (sys)) } } } impl gdnative_core :: private :: godot_object :: Sealed for EditorSceneImporter { } unsafe impl GodotObject for EditorSceneImporter { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "EditorSceneImporter" } } impl std :: ops :: Deref for EditorSceneImporter { type Target = crate :: generated :: reference :: Reference ; # [inline] fn deref (& self) -> & crate :: generated :: reference :: Reference { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for EditorSceneImporter { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: reference :: Reference { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: reference :: Reference > for EditorSceneImporter { } unsafe impl SubClass < crate :: generated :: object :: Object > for EditorSceneImporter { } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct EditorSceneImporterMethodTable { pub class_constructor : sys :: godot_class_constructor , pub import_animation_from_other_importer : * mut sys :: godot_method_bind , pub import_scene_from_other_importer : * mut sys :: godot_method_bind } impl EditorSceneImporterMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : EditorSceneImporterMethodTable = EditorSceneImporterMethodTable { class_constructor : None , import_animation_from_other_importer : 0 as * mut sys :: godot_method_bind , import_scene_from_other_importer : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { EditorSceneImporterMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "EditorSceneImporter\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . import_animation_from_other_importer = (gd_api . godot_method_bind_get_method) (class_name , "import_animation_from_other_importer\0" . as_ptr () as * const c_char) ; table . import_scene_from_other_importer = (gd_api . godot_method_bind_get_method) (class_name , "import_scene_from_other_importer\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:40:282238 [INFO] [stdout] | [INFO] [stdout] 40 | ... 0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 40 | # [doc = "`core singleton class VisualServer` inherits `Object` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualserver.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = ""] # [doc = "\n## Class hierarchy\n\nVisualServer inherits methods from:\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualServer { this : RawObject < Self > , } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct ArrayFormat (pub i64) ; impl ArrayFormat { pub const FORMAT_VERTEX : ArrayFormat = ArrayFormat (1i64) ; pub const FORMAT_NORMAL : ArrayFormat = ArrayFormat (2i64) ; pub const FORMAT_TANGENT : ArrayFormat = ArrayFormat (4i64) ; pub const FORMAT_COLOR : ArrayFormat = ArrayFormat (8i64) ; pub const FORMAT_TEX_UV : ArrayFormat = ArrayFormat (16i64) ; pub const FORMAT_TEX_UV2 : ArrayFormat = ArrayFormat (32i64) ; pub const FORMAT_BONES : ArrayFormat = ArrayFormat (64i64) ; pub const FORMAT_WEIGHTS : ArrayFormat = ArrayFormat (128i64) ; pub const FORMAT_INDEX : ArrayFormat = ArrayFormat (256i64) ; pub const COMPRESS_VERTEX : ArrayFormat = ArrayFormat (512i64) ; pub const COMPRESS_NORMAL : ArrayFormat = ArrayFormat (1024i64) ; pub const COMPRESS_TANGENT : ArrayFormat = ArrayFormat (2048i64) ; pub const COMPRESS_COLOR : ArrayFormat = ArrayFormat (4096i64) ; pub const COMPRESS_TEX_UV : ArrayFormat = ArrayFormat (8192i64) ; pub const COMPRESS_TEX_UV2 : ArrayFormat = ArrayFormat (16384i64) ; pub const COMPRESS_BONES : ArrayFormat = ArrayFormat (32768i64) ; pub const COMPRESS_WEIGHTS : ArrayFormat = ArrayFormat (65536i64) ; pub const COMPRESS_DEFAULT : ArrayFormat = ArrayFormat (97280i64) ; pub const COMPRESS_INDEX : ArrayFormat = ArrayFormat (131072i64) ; pub const FLAG_USE_2D_VERTICES : ArrayFormat = ArrayFormat (262144i64) ; pub const FLAG_USE_16_BIT_BONES : ArrayFormat = ArrayFormat (524288i64) ; } impl From < i64 > for ArrayFormat { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < ArrayFormat > for i64 { # [inline] fn from (v : ArrayFormat) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct ArrayType (pub i64) ; impl ArrayType { pub const VERTEX : ArrayType = ArrayType (0i64) ; pub const NORMAL : ArrayType = ArrayType (1i64) ; pub const TANGENT : ArrayType = ArrayType (2i64) ; pub const COLOR : ArrayType = ArrayType (3i64) ; pub const TEX_UV : ArrayType = ArrayType (4i64) ; pub const TEX_UV2 : ArrayType = ArrayType (5i64) ; pub const BONES : ArrayType = ArrayType (6i64) ; pub const WEIGHTS : ArrayType = ArrayType (7i64) ; pub const INDEX : ArrayType = ArrayType (8i64) ; pub const MAX : ArrayType = ArrayType (9i64) ; } impl From < i64 > for ArrayType { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < ArrayType > for i64 { # [inline] fn from (v : ArrayType) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct BlendShapeMode (pub i64) ; impl BlendShapeMode { pub const NORMALIZED : BlendShapeMode = BlendShapeMode (0i64) ; pub const RELATIVE : BlendShapeMode = BlendShapeMode (1i64) ; } impl From < i64 > for BlendShapeMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < BlendShapeMode > for i64 { # [inline] fn from (v : BlendShapeMode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct CanvasLightMode (pub i64) ; impl CanvasLightMode { pub const ADD : CanvasLightMode = CanvasLightMode (0i64) ; pub const SUB : CanvasLightMode = CanvasLightMode (1i64) ; pub const MIX : CanvasLightMode = CanvasLightMode (2i64) ; pub const MASK : CanvasLightMode = CanvasLightMode (3i64) ; } impl From < i64 > for CanvasLightMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < CanvasLightMode > for i64 { # [inline] fn from (v : CanvasLightMode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct CanvasLightShadowFilter (pub i64) ; impl CanvasLightShadowFilter { pub const NONE : CanvasLightShadowFilter = CanvasLightShadowFilter (0i64) ; pub const PCF3 : CanvasLightShadowFilter = CanvasLightShadowFilter (1i64) ; pub const PCF5 : CanvasLightShadowFilter = CanvasLightShadowFilter (2i64) ; pub const PCF7 : CanvasLightShadowFilter = CanvasLightShadowFilter (3i64) ; pub const PCF9 : CanvasLightShadowFilter = CanvasLightShadowFilter (4i64) ; pub const PCF13 : CanvasLightShadowFilter = CanvasLightShadowFilter (5i64) ; } impl From < i64 > for CanvasLightShadowFilter { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < CanvasLightShadowFilter > for i64 { # [inline] fn from (v : CanvasLightShadowFilter) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct CanvasOccluderPolygonCullMode (pub i64) ; impl CanvasOccluderPolygonCullMode { pub const DISABLED : CanvasOccluderPolygonCullMode = CanvasOccluderPolygonCullMode (0i64) ; pub const CLOCKWISE : CanvasOccluderPolygonCullMode = CanvasOccluderPolygonCullMode (1i64) ; pub const COUNTER_CLOCKWISE : CanvasOccluderPolygonCullMode = CanvasOccluderPolygonCullMode (2i64) ; } impl From < i64 > for CanvasOccluderPolygonCullMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < CanvasOccluderPolygonCullMode > for i64 { # [inline] fn from (v : CanvasOccluderPolygonCullMode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct CubeMapSide (pub i64) ; impl CubeMapSide { pub const LEFT : CubeMapSide = CubeMapSide (0i64) ; pub const RIGHT : CubeMapSide = CubeMapSide (1i64) ; pub const BOTTOM : CubeMapSide = CubeMapSide (2i64) ; pub const TOP : CubeMapSide = CubeMapSide (3i64) ; pub const FRONT : CubeMapSide = CubeMapSide (4i64) ; pub const BACK : CubeMapSide = CubeMapSide (5i64) ; } impl From < i64 > for CubeMapSide { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < CubeMapSide > for i64 { # [inline] fn from (v : CubeMapSide) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct EnvironmentBg (pub i64) ; impl EnvironmentBg { pub const CLEAR_COLOR : EnvironmentBg = EnvironmentBg (0i64) ; pub const COLOR : EnvironmentBg = EnvironmentBg (1i64) ; pub const SKY : EnvironmentBg = EnvironmentBg (2i64) ; pub const COLOR_SKY : EnvironmentBg = EnvironmentBg (3i64) ; pub const CANVAS : EnvironmentBg = EnvironmentBg (4i64) ; pub const KEEP : EnvironmentBg = EnvironmentBg (5i64) ; pub const MAX : EnvironmentBg = EnvironmentBg (7i64) ; } impl From < i64 > for EnvironmentBg { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < EnvironmentBg > for i64 { # [inline] fn from (v : EnvironmentBg) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct EnvironmentDofBlurQuality (pub i64) ; impl EnvironmentDofBlurQuality { pub const LOW : EnvironmentDofBlurQuality = EnvironmentDofBlurQuality (0i64) ; pub const MEDIUM : EnvironmentDofBlurQuality = EnvironmentDofBlurQuality (1i64) ; pub const HIGH : EnvironmentDofBlurQuality = EnvironmentDofBlurQuality (2i64) ; } impl From < i64 > for EnvironmentDofBlurQuality { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < EnvironmentDofBlurQuality > for i64 { # [inline] fn from (v : EnvironmentDofBlurQuality) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct EnvironmentGlowBlendMode (pub i64) ; impl EnvironmentGlowBlendMode { pub const ADDITIVE : EnvironmentGlowBlendMode = EnvironmentGlowBlendMode (0i64) ; pub const SCREEN : EnvironmentGlowBlendMode = EnvironmentGlowBlendMode (1i64) ; pub const SOFTLIGHT : EnvironmentGlowBlendMode = EnvironmentGlowBlendMode (2i64) ; pub const REPLACE : EnvironmentGlowBlendMode = EnvironmentGlowBlendMode (3i64) ; } impl From < i64 > for EnvironmentGlowBlendMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < EnvironmentGlowBlendMode > for i64 { # [inline] fn from (v : EnvironmentGlowBlendMode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct EnvironmentSsaoBlur (pub i64) ; impl EnvironmentSsaoBlur { pub const DISABLED : EnvironmentSsaoBlur = EnvironmentSsaoBlur (0i64) ; pub const _1X1 : EnvironmentSsaoBlur = EnvironmentSsaoBlur (1i64) ; pub const _2X2 : EnvironmentSsaoBlur = EnvironmentSsaoBlur (2i64) ; pub const _3X3 : EnvironmentSsaoBlur = EnvironmentSsaoBlur (3i64) ; } impl From < i64 > for EnvironmentSsaoBlur { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < EnvironmentSsaoBlur > for i64 { # [inline] fn from (v : EnvironmentSsaoBlur) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct EnvironmentSsaoQuality (pub i64) ; impl EnvironmentSsaoQuality { pub const LOW : EnvironmentSsaoQuality = EnvironmentSsaoQuality (0i64) ; pub const MEDIUM : EnvironmentSsaoQuality = EnvironmentSsaoQuality (1i64) ; pub const HIGH : EnvironmentSsaoQuality = EnvironmentSsaoQuality (2i64) ; } impl From < i64 > for EnvironmentSsaoQuality { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < EnvironmentSsaoQuality > for i64 { # [inline] fn from (v : EnvironmentSsaoQuality) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct EnvironmentToneMapper (pub i64) ; impl EnvironmentToneMapper { pub const LINEAR : EnvironmentToneMapper = EnvironmentToneMapper (0i64) ; pub const REINHARD : EnvironmentToneMapper = EnvironmentToneMapper (1i64) ; pub const FILMIC : EnvironmentToneMapper = EnvironmentToneMapper (2i64) ; pub const ACES : EnvironmentToneMapper = EnvironmentToneMapper (3i64) ; } impl From < i64 > for EnvironmentToneMapper { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < EnvironmentToneMapper > for i64 { # [inline] fn from (v : EnvironmentToneMapper) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct Features (pub i64) ; impl Features { pub const SHADERS : Features = Features (0i64) ; pub const MULTITHREADED : Features = Features (1i64) ; } impl From < i64 > for Features { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < Features > for i64 { # [inline] fn from (v : Features) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct InstanceFlags (pub i64) ; impl InstanceFlags { pub const USE_BAKED_LIGHT : InstanceFlags = InstanceFlags (0i64) ; pub const DRAW_NEXT_FRAME_IF_VISIBLE : InstanceFlags = InstanceFlags (1i64) ; pub const MAX : InstanceFlags = InstanceFlags (2i64) ; } impl From < i64 > for InstanceFlags { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < InstanceFlags > for i64 { # [inline] fn from (v : InstanceFlags) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct InstanceType (pub i64) ; impl InstanceType { pub const NONE : InstanceType = InstanceType (0i64) ; pub const MESH : InstanceType = InstanceType (1i64) ; pub const MULTIMESH : InstanceType = InstanceType (2i64) ; pub const IMMEDIATE : InstanceType = InstanceType (3i64) ; pub const PARTICLES : InstanceType = InstanceType (4i64) ; pub const LIGHT : InstanceType = InstanceType (5i64) ; pub const REFLECTION_PROBE : InstanceType = InstanceType (6i64) ; pub const GI_PROBE : InstanceType = InstanceType (7i64) ; pub const LIGHTMAP_CAPTURE : InstanceType = InstanceType (8i64) ; pub const MAX : InstanceType = InstanceType (9i64) ; pub const GEOMETRY_MASK : InstanceType = InstanceType (30i64) ; } impl From < i64 > for InstanceType { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < InstanceType > for i64 { # [inline] fn from (v : InstanceType) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct LightBakeMode (pub i64) ; impl LightBakeMode { pub const DISABLED : LightBakeMode = LightBakeMode (0i64) ; pub const INDIRECT : LightBakeMode = LightBakeMode (1i64) ; pub const ALL : LightBakeMode = LightBakeMode (2i64) ; } impl From < i64 > for LightBakeMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < LightBakeMode > for i64 { # [inline] fn from (v : LightBakeMode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct LightDirectionalShadowDepthRangeMode (pub i64) ; impl LightDirectionalShadowDepthRangeMode { pub const STABLE : LightDirectionalShadowDepthRangeMode = LightDirectionalShadowDepthRangeMode (0i64) ; pub const OPTIMIZED : LightDirectionalShadowDepthRangeMode = LightDirectionalShadowDepthRangeMode (1i64) ; } impl From < i64 > for LightDirectionalShadowDepthRangeMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < LightDirectionalShadowDepthRangeMode > for i64 { # [inline] fn from (v : LightDirectionalShadowDepthRangeMode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct LightDirectionalShadowMode (pub i64) ; impl LightDirectionalShadowMode { pub const ORTHOGONAL : LightDirectionalShadowMode = LightDirectionalShadowMode (0i64) ; pub const PARALLEL_2_SPLITS : LightDirectionalShadowMode = LightDirectionalShadowMode (1i64) ; pub const PARALLEL_4_SPLITS : LightDirectionalShadowMode = LightDirectionalShadowMode (2i64) ; } impl From < i64 > for LightDirectionalShadowMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < LightDirectionalShadowMode > for i64 { # [inline] fn from (v : LightDirectionalShadowMode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct LightOmniShadowDetail (pub i64) ; impl LightOmniShadowDetail { pub const VERTICAL : LightOmniShadowDetail = LightOmniShadowDetail (0i64) ; pub const HORIZONTAL : LightOmniShadowDetail = LightOmniShadowDetail (1i64) ; } impl From < i64 > for LightOmniShadowDetail { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < LightOmniShadowDetail > for i64 { # [inline] fn from (v : LightOmniShadowDetail) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct LightOmniShadowMode (pub i64) ; impl LightOmniShadowMode { pub const DUAL_PARABOLOID : LightOmniShadowMode = LightOmniShadowMode (0i64) ; pub const CUBE : LightOmniShadowMode = LightOmniShadowMode (1i64) ; } impl From < i64 > for LightOmniShadowMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < LightOmniShadowMode > for i64 { # [inline] fn from (v : LightOmniShadowMode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct LightParam (pub i64) ; impl LightParam { pub const ENERGY : LightParam = LightParam (0i64) ; pub const SPECULAR : LightParam = LightParam (2i64) ; pub const RANGE : LightParam = LightParam (3i64) ; pub const ATTENUATION : LightParam = LightParam (4i64) ; pub const SPOT_ANGLE : LightParam = LightParam (5i64) ; pub const SPOT_ATTENUATION : LightParam = LightParam (6i64) ; pub const CONTACT_SHADOW_SIZE : LightParam = LightParam (7i64) ; pub const SHADOW_MAX_DISTANCE : LightParam = LightParam (8i64) ; pub const SHADOW_SPLIT_1_OFFSET : LightParam = LightParam (9i64) ; pub const SHADOW_SPLIT_2_OFFSET : LightParam = LightParam (10i64) ; pub const SHADOW_SPLIT_3_OFFSET : LightParam = LightParam (11i64) ; pub const SHADOW_NORMAL_BIAS : LightParam = LightParam (12i64) ; pub const SHADOW_BIAS : LightParam = LightParam (13i64) ; pub const SHADOW_BIAS_SPLIT_SCALE : LightParam = LightParam (14i64) ; pub const MAX : LightParam = LightParam (15i64) ; } impl From < i64 > for LightParam { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < LightParam > for i64 { # [inline] fn from (v : LightParam) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct LightType (pub i64) ; impl LightType { pub const DIRECTIONAL : LightType = LightType (0i64) ; pub const OMNI : LightType = LightType (1i64) ; pub const SPOT : LightType = LightType (2i64) ; } impl From < i64 > for LightType { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < LightType > for i64 { # [inline] fn from (v : LightType) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct MultimeshColorFormat (pub i64) ; impl MultimeshColorFormat { pub const NONE : MultimeshColorFormat = MultimeshColorFormat (0i64) ; pub const _8BIT : MultimeshColorFormat = MultimeshColorFormat (1i64) ; pub const FLOAT : MultimeshColorFormat = MultimeshColorFormat (2i64) ; } impl From < i64 > for MultimeshColorFormat { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < MultimeshColorFormat > for i64 { # [inline] fn from (v : MultimeshColorFormat) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct MultimeshCustomDataFormat (pub i64) ; impl MultimeshCustomDataFormat { pub const NONE : MultimeshCustomDataFormat = MultimeshCustomDataFormat (0i64) ; pub const _8BIT : MultimeshCustomDataFormat = MultimeshCustomDataFormat (1i64) ; pub const FLOAT : MultimeshCustomDataFormat = MultimeshCustomDataFormat (2i64) ; } impl From < i64 > for MultimeshCustomDataFormat { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < MultimeshCustomDataFormat > for i64 { # [inline] fn from (v : MultimeshCustomDataFormat) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct MultimeshTransformFormat (pub i64) ; impl MultimeshTransformFormat { pub const _2D : MultimeshTransformFormat = MultimeshTransformFormat (0i64) ; pub const _3D : MultimeshTransformFormat = MultimeshTransformFormat (1i64) ; } impl From < i64 > for MultimeshTransformFormat { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < MultimeshTransformFormat > for i64 { # [inline] fn from (v : MultimeshTransformFormat) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct NinePatchAxisMode (pub i64) ; impl NinePatchAxisMode { pub const STRETCH : NinePatchAxisMode = NinePatchAxisMode (0i64) ; pub const TILE : NinePatchAxisMode = NinePatchAxisMode (1i64) ; pub const TILE_FIT : NinePatchAxisMode = NinePatchAxisMode (2i64) ; } impl From < i64 > for NinePatchAxisMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < NinePatchAxisMode > for i64 { # [inline] fn from (v : NinePatchAxisMode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct ParticlesDrawOrder (pub i64) ; impl ParticlesDrawOrder { pub const INDEX : ParticlesDrawOrder = ParticlesDrawOrder (0i64) ; pub const LIFETIME : ParticlesDrawOrder = ParticlesDrawOrder (1i64) ; pub const VIEW_DEPTH : ParticlesDrawOrder = ParticlesDrawOrder (2i64) ; } impl From < i64 > for ParticlesDrawOrder { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < ParticlesDrawOrder > for i64 { # [inline] fn from (v : ParticlesDrawOrder) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct PrimitiveType (pub i64) ; impl PrimitiveType { pub const POINTS : PrimitiveType = PrimitiveType (0i64) ; pub const LINES : PrimitiveType = PrimitiveType (1i64) ; pub const LINE_STRIP : PrimitiveType = PrimitiveType (2i64) ; pub const LINE_LOOP : PrimitiveType = PrimitiveType (3i64) ; pub const TRIANGLES : PrimitiveType = PrimitiveType (4i64) ; pub const TRIANGLE_STRIP : PrimitiveType = PrimitiveType (5i64) ; pub const TRIANGLE_FAN : PrimitiveType = PrimitiveType (6i64) ; pub const MAX : PrimitiveType = PrimitiveType (7i64) ; } impl From < i64 > for PrimitiveType { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < PrimitiveType > for i64 { # [inline] fn from (v : PrimitiveType) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct ReflectionProbeUpdateMode (pub i64) ; impl ReflectionProbeUpdateMode { pub const ONCE : ReflectionProbeUpdateMode = ReflectionProbeUpdateMode (0i64) ; pub const ALWAYS : ReflectionProbeUpdateMode = ReflectionProbeUpdateMode (1i64) ; } impl From < i64 > for ReflectionProbeUpdateMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < ReflectionProbeUpdateMode > for i64 { # [inline] fn from (v : ReflectionProbeUpdateMode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct RenderInfo (pub i64) ; impl RenderInfo { pub const OBJECTS_IN_FRAME : RenderInfo = RenderInfo (0i64) ; pub const VERTICES_IN_FRAME : RenderInfo = RenderInfo (1i64) ; pub const MATERIAL_CHANGES_IN_FRAME : RenderInfo = RenderInfo (2i64) ; pub const SHADER_CHANGES_IN_FRAME : RenderInfo = RenderInfo (3i64) ; pub const SURFACE_CHANGES_IN_FRAME : RenderInfo = RenderInfo (4i64) ; pub const DRAW_CALLS_IN_FRAME : RenderInfo = RenderInfo (5i64) ; pub const _2D_ITEMS_IN_FRAME : RenderInfo = RenderInfo (6i64) ; pub const _2D_DRAW_CALLS_IN_FRAME : RenderInfo = RenderInfo (7i64) ; pub const USAGE_VIDEO_MEM_TOTAL : RenderInfo = RenderInfo (8i64) ; pub const VIDEO_MEM_USED : RenderInfo = RenderInfo (9i64) ; pub const TEXTURE_MEM_USED : RenderInfo = RenderInfo (10i64) ; pub const VERTEX_MEM_USED : RenderInfo = RenderInfo (11i64) ; } impl From < i64 > for RenderInfo { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < RenderInfo > for i64 { # [inline] fn from (v : RenderInfo) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct ScenarioDebugMode (pub i64) ; impl ScenarioDebugMode { pub const DISABLED : ScenarioDebugMode = ScenarioDebugMode (0i64) ; pub const WIREFRAME : ScenarioDebugMode = ScenarioDebugMode (1i64) ; pub const OVERDRAW : ScenarioDebugMode = ScenarioDebugMode (2i64) ; pub const SHADELESS : ScenarioDebugMode = ScenarioDebugMode (3i64) ; } impl From < i64 > for ScenarioDebugMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < ScenarioDebugMode > for i64 { # [inline] fn from (v : ScenarioDebugMode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct ShaderMode (pub i64) ; impl ShaderMode { pub const SPATIAL : ShaderMode = ShaderMode (0i64) ; pub const CANVAS_ITEM : ShaderMode = ShaderMode (1i64) ; pub const PARTICLES : ShaderMode = ShaderMode (2i64) ; pub const MAX : ShaderMode = ShaderMode (3i64) ; } impl From < i64 > for ShaderMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < ShaderMode > for i64 { # [inline] fn from (v : ShaderMode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct ShadowCastingSetting (pub i64) ; impl ShadowCastingSetting { pub const OFF : ShadowCastingSetting = ShadowCastingSetting (0i64) ; pub const ON : ShadowCastingSetting = ShadowCastingSetting (1i64) ; pub const DOUBLE_SIDED : ShadowCastingSetting = ShadowCastingSetting (2i64) ; pub const SHADOWS_ONLY : ShadowCastingSetting = ShadowCastingSetting (3i64) ; } impl From < i64 > for ShadowCastingSetting { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < ShadowCastingSetting > for i64 { # [inline] fn from (v : ShadowCastingSetting) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct TextureFlags (pub i64) ; impl TextureFlags { pub const FLAG_MIPMAPS : TextureFlags = TextureFlags (1i64) ; pub const FLAG_REPEAT : TextureFlags = TextureFlags (2i64) ; pub const FLAG_FILTER : TextureFlags = TextureFlags (4i64) ; pub const FLAGS_DEFAULT : TextureFlags = TextureFlags (7i64) ; pub const FLAG_ANISOTROPIC_FILTER : TextureFlags = TextureFlags (8i64) ; pub const FLAG_CONVERT_TO_LINEAR : TextureFlags = TextureFlags (16i64) ; pub const FLAG_MIRRORED_REPEAT : TextureFlags = TextureFlags (32i64) ; pub const FLAG_USED_FOR_STREAMING : TextureFlags = TextureFlags (2048i64) ; } impl From < i64 > for TextureFlags { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < TextureFlags > for i64 { # [inline] fn from (v : TextureFlags) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct TextureType (pub i64) ; impl TextureType { pub const _2D : TextureType = TextureType (0i64) ; pub const CUBEMAP : TextureType = TextureType (2i64) ; pub const _2D_ARRAY : TextureType = TextureType (3i64) ; pub const _3D : TextureType = TextureType (4i64) ; } impl From < i64 > for TextureType { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < TextureType > for i64 { # [inline] fn from (v : TextureType) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct ViewportClearMode (pub i64) ; impl ViewportClearMode { pub const ALWAYS : ViewportClearMode = ViewportClearMode (0i64) ; pub const NEVER : ViewportClearMode = ViewportClearMode (1i64) ; pub const ONLY_NEXT_FRAME : ViewportClearMode = ViewportClearMode (2i64) ; } impl From < i64 > for ViewportClearMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < ViewportClearMode > for i64 { # [inline] fn from (v : ViewportClearMode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct ViewportDebugDraw (pub i64) ; impl ViewportDebugDraw { pub const DISABLED : ViewportDebugDraw = ViewportDebugDraw (0i64) ; pub const UNSHADED : ViewportDebugDraw = ViewportDebugDraw (1i64) ; pub const OVERDRAW : ViewportDebugDraw = ViewportDebugDraw (2i64) ; pub const WIREFRAME : ViewportDebugDraw = ViewportDebugDraw (3i64) ; } impl From < i64 > for ViewportDebugDraw { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < ViewportDebugDraw > for i64 { # [inline] fn from (v : ViewportDebugDraw) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct ViewportMsaa (pub i64) ; impl ViewportMsaa { pub const DISABLED : ViewportMsaa = ViewportMsaa (0i64) ; pub const _2X : ViewportMsaa = ViewportMsaa (1i64) ; pub const _4X : ViewportMsaa = ViewportMsaa (2i64) ; pub const _8X : ViewportMsaa = ViewportMsaa (3i64) ; pub const _16X : ViewportMsaa = ViewportMsaa (4i64) ; pub const EXT_2X : ViewportMsaa = ViewportMsaa (5i64) ; pub const EXT_4X : ViewportMsaa = ViewportMsaa (6i64) ; } impl From < i64 > for ViewportMsaa { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < ViewportMsaa > for i64 { # [inline] fn from (v : ViewportMsaa) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct ViewportRenderInfo (pub i64) ; impl ViewportRenderInfo { pub const OBJECTS_IN_FRAME : ViewportRenderInfo = ViewportRenderInfo (0i64) ; pub const VERTICES_IN_FRAME : ViewportRenderInfo = ViewportRenderInfo (1i64) ; pub const MATERIAL_CHANGES_IN_FRAME : ViewportRenderInfo = ViewportRenderInfo (2i64) ; pub const SHADER_CHANGES_IN_FRAME : ViewportRenderInfo = ViewportRenderInfo (3i64) ; pub const SURFACE_CHANGES_IN_FRAME : ViewportRenderInfo = ViewportRenderInfo (4i64) ; pub const DRAW_CALLS_IN_FRAME : ViewportRenderInfo = ViewportRenderInfo (5i64) ; pub const _2D_ITEMS_IN_FRAME : ViewportRenderInfo = ViewportRenderInfo (6i64) ; pub const _2D_DRAW_CALLS_IN_FRAME : ViewportRenderInfo = ViewportRenderInfo (7i64) ; pub const MAX : ViewportRenderInfo = ViewportRenderInfo (8i64) ; } impl From < i64 > for ViewportRenderInfo { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < ViewportRenderInfo > for i64 { # [inline] fn from (v : ViewportRenderInfo) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct ViewportUpdateMode (pub i64) ; impl ViewportUpdateMode { pub const DISABLED : ViewportUpdateMode = ViewportUpdateMode (0i64) ; pub const ONCE : ViewportUpdateMode = ViewportUpdateMode (1i64) ; pub const WHEN_VISIBLE : ViewportUpdateMode = ViewportUpdateMode (2i64) ; pub const ALWAYS : ViewportUpdateMode = ViewportUpdateMode (3i64) ; } impl From < i64 > for ViewportUpdateMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < ViewportUpdateMode > for i64 { # [inline] fn from (v : ViewportUpdateMode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct ViewportUsage (pub i64) ; impl ViewportUsage { pub const _2D : ViewportUsage = ViewportUsage (0i64) ; pub const _2D_NO_SAMPLING : ViewportUsage = ViewportUsage (1i64) ; pub const _3D : ViewportUsage = ViewportUsage (2i64) ; pub const _3D_NO_EFFECTS : ViewportUsage = ViewportUsage (3i64) ; } impl From < i64 > for ViewportUsage { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < ViewportUsage > for i64 { # [inline] fn from (v : ViewportUsage) -> Self { v . 0 } } # [doc = "Constants"] # [allow (non_upper_case_globals)] impl VisualServer { pub const ARRAY_BONES : i64 = 6i64 ; pub const ARRAY_COLOR : i64 = 3i64 ; pub const ARRAY_COMPRESS_BONES : i64 = 32768i64 ; pub const ARRAY_COMPRESS_COLOR : i64 = 4096i64 ; pub const ARRAY_COMPRESS_DEFAULT : i64 = 97280i64 ; pub const ARRAY_COMPRESS_INDEX : i64 = 131072i64 ; pub const ARRAY_COMPRESS_NORMAL : i64 = 1024i64 ; pub const ARRAY_COMPRESS_TANGENT : i64 = 2048i64 ; pub const ARRAY_COMPRESS_TEX_UV : i64 = 8192i64 ; pub const ARRAY_COMPRESS_TEX_UV2 : i64 = 16384i64 ; pub const ARRAY_COMPRESS_VERTEX : i64 = 512i64 ; pub const ARRAY_COMPRESS_WEIGHTS : i64 = 65536i64 ; pub const ARRAY_FLAG_USE_16_BIT_BONES : i64 = 524288i64 ; pub const ARRAY_FLAG_USE_2D_VERTICES : i64 = 262144i64 ; pub const ARRAY_FORMAT_BONES : i64 = 64i64 ; pub const ARRAY_FORMAT_COLOR : i64 = 8i64 ; pub const ARRAY_FORMAT_INDEX : i64 = 256i64 ; pub const ARRAY_FORMAT_NORMAL : i64 = 2i64 ; pub const ARRAY_FORMAT_TANGENT : i64 = 4i64 ; pub const ARRAY_FORMAT_TEX_UV : i64 = 16i64 ; pub const ARRAY_FORMAT_TEX_UV2 : i64 = 32i64 ; pub const ARRAY_FORMAT_VERTEX : i64 = 1i64 ; pub const ARRAY_FORMAT_WEIGHTS : i64 = 128i64 ; pub const ARRAY_INDEX : i64 = 8i64 ; pub const ARRAY_MAX : i64 = 9i64 ; pub const ARRAY_NORMAL : i64 = 1i64 ; pub const ARRAY_TANGENT : i64 = 2i64 ; pub const ARRAY_TEX_UV : i64 = 4i64 ; pub const ARRAY_TEX_UV2 : i64 = 5i64 ; pub const ARRAY_VERTEX : i64 = 0i64 ; pub const ARRAY_WEIGHTS : i64 = 7i64 ; pub const ARRAY_WEIGHTS_SIZE : i64 = 4i64 ; pub const BLEND_SHAPE_MODE_NORMALIZED : i64 = 0i64 ; pub const BLEND_SHAPE_MODE_RELATIVE : i64 = 1i64 ; pub const CANVAS_ITEM_Z_MAX : i64 = 4096i64 ; pub const CANVAS_ITEM_Z_MIN : i64 = - 4096i64 ; pub const CANVAS_LIGHT_FILTER_NONE : i64 = 0i64 ; pub const CANVAS_LIGHT_FILTER_PCF13 : i64 = 5i64 ; pub const CANVAS_LIGHT_FILTER_PCF3 : i64 = 1i64 ; pub const CANVAS_LIGHT_FILTER_PCF5 : i64 = 2i64 ; pub const CANVAS_LIGHT_FILTER_PCF7 : i64 = 3i64 ; pub const CANVAS_LIGHT_FILTER_PCF9 : i64 = 4i64 ; pub const CANVAS_LIGHT_MODE_ADD : i64 = 0i64 ; pub const CANVAS_LIGHT_MODE_MASK : i64 = 3i64 ; pub const CANVAS_LIGHT_MODE_MIX : i64 = 2i64 ; pub const CANVAS_LIGHT_MODE_SUB : i64 = 1i64 ; pub const CANVAS_OCCLUDER_POLYGON_CULL_CLOCKWISE : i64 = 1i64 ; pub const CANVAS_OCCLUDER_POLYGON_CULL_COUNTER_CLOCKWISE : i64 = 2i64 ; pub const CANVAS_OCCLUDER_POLYGON_CULL_DISABLED : i64 = 0i64 ; pub const CUBEMAP_BACK : i64 = 5i64 ; pub const CUBEMAP_BOTTOM : i64 = 2i64 ; pub const CUBEMAP_FRONT : i64 = 4i64 ; pub const CUBEMAP_LEFT : i64 = 0i64 ; pub const CUBEMAP_RIGHT : i64 = 1i64 ; pub const CUBEMAP_TOP : i64 = 3i64 ; pub const ENV_BG_CANVAS : i64 = 4i64 ; pub const ENV_BG_CLEAR_COLOR : i64 = 0i64 ; pub const ENV_BG_COLOR : i64 = 1i64 ; pub const ENV_BG_COLOR_SKY : i64 = 3i64 ; pub const ENV_BG_KEEP : i64 = 5i64 ; pub const ENV_BG_MAX : i64 = 7i64 ; pub const ENV_BG_SKY : i64 = 2i64 ; pub const ENV_DOF_BLUR_QUALITY_HIGH : i64 = 2i64 ; pub const ENV_DOF_BLUR_QUALITY_LOW : i64 = 0i64 ; pub const ENV_DOF_BLUR_QUALITY_MEDIUM : i64 = 1i64 ; pub const ENV_SSAO_BLUR_1x1 : i64 = 1i64 ; pub const ENV_SSAO_BLUR_2x2 : i64 = 2i64 ; pub const ENV_SSAO_BLUR_3x3 : i64 = 3i64 ; pub const ENV_SSAO_BLUR_DISABLED : i64 = 0i64 ; pub const ENV_SSAO_QUALITY_HIGH : i64 = 2i64 ; pub const ENV_SSAO_QUALITY_LOW : i64 = 0i64 ; pub const ENV_SSAO_QUALITY_MEDIUM : i64 = 1i64 ; pub const ENV_TONE_MAPPER_ACES : i64 = 3i64 ; pub const ENV_TONE_MAPPER_FILMIC : i64 = 2i64 ; pub const ENV_TONE_MAPPER_LINEAR : i64 = 0i64 ; pub const ENV_TONE_MAPPER_REINHARD : i64 = 1i64 ; pub const FEATURE_MULTITHREADED : i64 = 1i64 ; pub const FEATURE_SHADERS : i64 = 0i64 ; pub const GLOW_BLEND_MODE_ADDITIVE : i64 = 0i64 ; pub const GLOW_BLEND_MODE_REPLACE : i64 = 3i64 ; pub const GLOW_BLEND_MODE_SCREEN : i64 = 1i64 ; pub const GLOW_BLEND_MODE_SOFTLIGHT : i64 = 2i64 ; pub const INFO_2D_DRAW_CALLS_IN_FRAME : i64 = 7i64 ; pub const INFO_2D_ITEMS_IN_FRAME : i64 = 6i64 ; pub const INFO_DRAW_CALLS_IN_FRAME : i64 = 5i64 ; pub const INFO_MATERIAL_CHANGES_IN_FRAME : i64 = 2i64 ; pub const INFO_OBJECTS_IN_FRAME : i64 = 0i64 ; pub const INFO_SHADER_CHANGES_IN_FRAME : i64 = 3i64 ; pub const INFO_SURFACE_CHANGES_IN_FRAME : i64 = 4i64 ; pub const INFO_TEXTURE_MEM_USED : i64 = 10i64 ; pub const INFO_USAGE_VIDEO_MEM_TOTAL : i64 = 8i64 ; pub const INFO_VERTEX_MEM_USED : i64 = 11i64 ; pub const INFO_VERTICES_IN_FRAME : i64 = 1i64 ; pub const INFO_VIDEO_MEM_USED : i64 = 9i64 ; pub const INSTANCE_FLAG_DRAW_NEXT_FRAME_IF_VISIBLE : i64 = 1i64 ; pub const INSTANCE_FLAG_MAX : i64 = 2i64 ; pub const INSTANCE_FLAG_USE_BAKED_LIGHT : i64 = 0i64 ; pub const INSTANCE_GEOMETRY_MASK : i64 = 30i64 ; pub const INSTANCE_GI_PROBE : i64 = 7i64 ; pub const INSTANCE_IMMEDIATE : i64 = 3i64 ; pub const INSTANCE_LIGHT : i64 = 5i64 ; pub const INSTANCE_LIGHTMAP_CAPTURE : i64 = 8i64 ; pub const INSTANCE_MAX : i64 = 9i64 ; pub const INSTANCE_MESH : i64 = 1i64 ; pub const INSTANCE_MULTIMESH : i64 = 2i64 ; pub const INSTANCE_NONE : i64 = 0i64 ; pub const INSTANCE_PARTICLES : i64 = 4i64 ; pub const INSTANCE_REFLECTION_PROBE : i64 = 6i64 ; pub const LIGHT_BAKE_ALL : i64 = 2i64 ; pub const LIGHT_BAKE_DISABLED : i64 = 0i64 ; pub const LIGHT_BAKE_INDIRECT : i64 = 1i64 ; pub const LIGHT_DIRECTIONAL : i64 = 0i64 ; pub const LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_OPTIMIZED : i64 = 1i64 ; pub const LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_STABLE : i64 = 0i64 ; pub const LIGHT_DIRECTIONAL_SHADOW_ORTHOGONAL : i64 = 0i64 ; pub const LIGHT_DIRECTIONAL_SHADOW_PARALLEL_2_SPLITS : i64 = 1i64 ; pub const LIGHT_DIRECTIONAL_SHADOW_PARALLEL_4_SPLITS : i64 = 2i64 ; pub const LIGHT_OMNI : i64 = 1i64 ; pub const LIGHT_OMNI_SHADOW_CUBE : i64 = 1i64 ; pub const LIGHT_OMNI_SHADOW_DETAIL_HORIZONTAL : i64 = 1i64 ; pub const LIGHT_OMNI_SHADOW_DETAIL_VERTICAL : i64 = 0i64 ; pub const LIGHT_OMNI_SHADOW_DUAL_PARABOLOID : i64 = 0i64 ; pub const LIGHT_PARAM_ATTENUATION : i64 = 4i64 ; pub const LIGHT_PARAM_CONTACT_SHADOW_SIZE : i64 = 7i64 ; pub const LIGHT_PARAM_ENERGY : i64 = 0i64 ; pub const LIGHT_PARAM_MAX : i64 = 15i64 ; pub const LIGHT_PARAM_RANGE : i64 = 3i64 ; pub const LIGHT_PARAM_SHADOW_BIAS : i64 = 13i64 ; pub const LIGHT_PARAM_SHADOW_BIAS_SPLIT_SCALE : i64 = 14i64 ; pub const LIGHT_PARAM_SHADOW_MAX_DISTANCE : i64 = 8i64 ; pub const LIGHT_PARAM_SHADOW_NORMAL_BIAS : i64 = 12i64 ; pub const LIGHT_PARAM_SHADOW_SPLIT_1_OFFSET : i64 = 9i64 ; pub const LIGHT_PARAM_SHADOW_SPLIT_2_OFFSET : i64 = 10i64 ; pub const LIGHT_PARAM_SHADOW_SPLIT_3_OFFSET : i64 = 11i64 ; pub const LIGHT_PARAM_SPECULAR : i64 = 2i64 ; pub const LIGHT_PARAM_SPOT_ANGLE : i64 = 5i64 ; pub const LIGHT_PARAM_SPOT_ATTENUATION : i64 = 6i64 ; pub const LIGHT_SPOT : i64 = 2i64 ; pub const MATERIAL_RENDER_PRIORITY_MAX : i64 = 127i64 ; pub const MATERIAL_RENDER_PRIORITY_MIN : i64 = - 128i64 ; pub const MAX_CURSORS : i64 = 8i64 ; pub const MAX_GLOW_LEVELS : i64 = 7i64 ; pub const MULTIMESH_COLOR_8BIT : i64 = 1i64 ; pub const MULTIMESH_COLOR_FLOAT : i64 = 2i64 ; pub const MULTIMESH_COLOR_NONE : i64 = 0i64 ; pub const MULTIMESH_CUSTOM_DATA_8BIT : i64 = 1i64 ; pub const MULTIMESH_CUSTOM_DATA_FLOAT : i64 = 2i64 ; pub const MULTIMESH_CUSTOM_DATA_NONE : i64 = 0i64 ; pub const MULTIMESH_TRANSFORM_2D : i64 = 0i64 ; pub const MULTIMESH_TRANSFORM_3D : i64 = 1i64 ; pub const NINE_PATCH_STRETCH : i64 = 0i64 ; pub const NINE_PATCH_TILE : i64 = 1i64 ; pub const NINE_PATCH_TILE_FIT : i64 = 2i64 ; pub const NO_INDEX_ARRAY : i64 = - 1i64 ; pub const PARTICLES_DRAW_ORDER_INDEX : i64 = 0i64 ; pub const PARTICLES_DRAW_ORDER_LIFETIME : i64 = 1i64 ; pub const PARTICLES_DRAW_ORDER_VIEW_DEPTH : i64 = 2i64 ; pub const PRIMITIVE_LINES : i64 = 1i64 ; pub const PRIMITIVE_LINE_LOOP : i64 = 3i64 ; pub const PRIMITIVE_LINE_STRIP : i64 = 2i64 ; pub const PRIMITIVE_MAX : i64 = 7i64 ; pub const PRIMITIVE_POINTS : i64 = 0i64 ; pub const PRIMITIVE_TRIANGLES : i64 = 4i64 ; pub const PRIMITIVE_TRIANGLE_FAN : i64 = 6i64 ; pub const PRIMITIVE_TRIANGLE_STRIP : i64 = 5i64 ; pub const REFLECTION_PROBE_UPDATE_ALWAYS : i64 = 1i64 ; pub const REFLECTION_PROBE_UPDATE_ONCE : i64 = 0i64 ; pub const SCENARIO_DEBUG_DISABLED : i64 = 0i64 ; pub const SCENARIO_DEBUG_OVERDRAW : i64 = 2i64 ; pub const SCENARIO_DEBUG_SHADELESS : i64 = 3i64 ; pub const SCENARIO_DEBUG_WIREFRAME : i64 = 1i64 ; pub const SHADER_CANVAS_ITEM : i64 = 1i64 ; pub const SHADER_MAX : i64 = 3i64 ; pub const SHADER_PARTICLES : i64 = 2i64 ; pub const SHADER_SPATIAL : i64 = 0i64 ; pub const SHADOW_CASTING_SETTING_DOUBLE_SIDED : i64 = 2i64 ; pub const SHADOW_CASTING_SETTING_OFF : i64 = 0i64 ; pub const SHADOW_CASTING_SETTING_ON : i64 = 1i64 ; pub const SHADOW_CASTING_SETTING_SHADOWS_ONLY : i64 = 3i64 ; pub const TEXTURE_FLAGS_DEFAULT : i64 = 7i64 ; pub const TEXTURE_FLAG_ANISOTROPIC_FILTER : i64 = 8i64 ; pub const TEXTURE_FLAG_CONVERT_TO_LINEAR : i64 = 16i64 ; pub const TEXTURE_FLAG_FILTER : i64 = 4i64 ; pub const TEXTURE_FLAG_MIPMAPS : i64 = 1i64 ; pub const TEXTURE_FLAG_MIRRORED_REPEAT : i64 = 32i64 ; pub const TEXTURE_FLAG_REPEAT : i64 = 2i64 ; pub const TEXTURE_FLAG_USED_FOR_STREAMING : i64 = 2048i64 ; pub const TEXTURE_TYPE_2D : i64 = 0i64 ; pub const TEXTURE_TYPE_2D_ARRAY : i64 = 3i64 ; pub const TEXTURE_TYPE_3D : i64 = 4i64 ; pub const TEXTURE_TYPE_CUBEMAP : i64 = 2i64 ; pub const VIEWPORT_CLEAR_ALWAYS : i64 = 0i64 ; pub const VIEWPORT_CLEAR_NEVER : i64 = 1i64 ; pub const VIEWPORT_CLEAR_ONLY_NEXT_FRAME : i64 = 2i64 ; pub const VIEWPORT_DEBUG_DRAW_DISABLED : i64 = 0i64 ; pub const VIEWPORT_DEBUG_DRAW_OVERDRAW : i64 = 2i64 ; pub const VIEWPORT_DEBUG_DRAW_UNSHADED : i64 = 1i64 ; pub const VIEWPORT_DEBUG_DRAW_WIREFRAME : i64 = 3i64 ; pub const VIEWPORT_MSAA_16X : i64 = 4i64 ; pub const VIEWPORT_MSAA_2X : i64 = 1i64 ; pub const VIEWPORT_MSAA_4X : i64 = 2i64 ; pub const VIEWPORT_MSAA_8X : i64 = 3i64 ; pub const VIEWPORT_MSAA_DISABLED : i64 = 0i64 ; pub const VIEWPORT_MSAA_EXT_2X : i64 = 5i64 ; pub const VIEWPORT_MSAA_EXT_4X : i64 = 6i64 ; pub const VIEWPORT_RENDER_INFO_2D_DRAW_CALLS_IN_FRAME : i64 = 7i64 ; pub const VIEWPORT_RENDER_INFO_2D_ITEMS_IN_FRAME : i64 = 6i64 ; pub const VIEWPORT_RENDER_INFO_DRAW_CALLS_IN_FRAME : i64 = 5i64 ; pub const VIEWPORT_RENDER_INFO_MATERIAL_CHANGES_IN_FRAME : i64 = 2i64 ; pub const VIEWPORT_RENDER_INFO_MAX : i64 = 8i64 ; pub const VIEWPORT_RENDER_INFO_OBJECTS_IN_FRAME : i64 = 0i64 ; pub const VIEWPORT_RENDER_INFO_SHADER_CHANGES_IN_FRAME : i64 = 3i64 ; pub const VIEWPORT_RENDER_INFO_SURFACE_CHANGES_IN_FRAME : i64 = 4i64 ; pub const VIEWPORT_RENDER_INFO_VERTICES_IN_FRAME : i64 = 1i64 ; pub const VIEWPORT_UPDATE_ALWAYS : i64 = 3i64 ; pub const VIEWPORT_UPDATE_DISABLED : i64 = 0i64 ; pub const VIEWPORT_UPDATE_ONCE : i64 = 1i64 ; pub const VIEWPORT_UPDATE_WHEN_VISIBLE : i64 = 2i64 ; pub const VIEWPORT_USAGE_2D : i64 = 0i64 ; pub const VIEWPORT_USAGE_2D_NO_SAMPLING : i64 = 1i64 ; pub const VIEWPORT_USAGE_3D : i64 = 2i64 ; pub const VIEWPORT_USAGE_3D_NO_EFFECTS : i64 = 3i64 ; } impl VisualServer { # [doc = "Returns a reference to the singleton instance.\n\n# Safety\n\nThis singleton server is only safe to access from outside the main thread if thread-safe\noperations are enabled in the project settings. See the official\n[thread-safety guidelines][thread-safety] for more information.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [inline] pub unsafe fn godot_singleton () -> & 'static Self { unsafe { let this = (get_api () . godot_global_get_singleton) ("VisualServer\0" . as_ptr () as * mut _) ; let this = ptr :: NonNull :: new (this) . expect ("singleton should not be null") ; let this = RawObject :: from_sys_ref_unchecked :: < 'static > (this) ; Self :: cast_ref (this) } } # [doc = "Sets images to be rendered in the window margin."] # [doc = ""] # [inline] pub fn black_bars_set_images (& self , left : Rid , top : Rid , right : Rid , bottom : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . black_bars_set_images ; let ret = crate :: icalls :: icallptr_void_rid_rid_rid_rid (method_bind , self . this . sys () . as_ptr () , left , top , right , bottom) ; } } # [doc = "Sets margin size, where black bars (or images, if [method black_bars_set_images] was used) are rendered."] # [doc = ""] # [inline] pub fn black_bars_set_margins (& self , left : i64 , top : i64 , right : i64 , bottom : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . black_bars_set_margins ; let ret = crate :: icalls :: icallptr_void_i64_i64_i64_i64 (method_bind , self . this . sys () . as_ptr () , left , top , right , bottom) ; } } # [doc = "Creates a camera and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `camera_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method."] # [doc = ""] # [inline] pub fn camera_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . camera_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Sets the cull mask associated with this camera. The cull mask describes which 3D layers are rendered by this camera. Equivalent to [member Camera.cull_mask]."] # [doc = ""] # [inline] pub fn camera_set_cull_mask (& self , camera : Rid , layers : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . camera_set_cull_mask ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , camera , layers) ; } } # [doc = "Sets the environment used by this camera. Equivalent to [member Camera.environment]."] # [doc = ""] # [inline] pub fn camera_set_environment (& self , camera : Rid , env : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . camera_set_environment ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , camera , env) ; } } # [doc = "Sets camera to use frustum projection. This mode allows adjusting the `offset` argument to create \"tilted frustum\" effects."] # [doc = ""] # [inline] pub fn camera_set_frustum (& self , camera : Rid , size : f64 , offset : Vector2 , z_near : f64 , z_far : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . camera_set_frustum ; let ret = crate :: icalls :: icallptr_void_rid_f64_vec2_f64_f64 (method_bind , self . this . sys () . as_ptr () , camera , size , offset , z_near , z_far) ; } } # [doc = "Sets camera to use orthogonal projection, also known as orthographic projection. Objects remain the same size on the screen no matter how far away they are."] # [doc = ""] # [inline] pub fn camera_set_orthogonal (& self , camera : Rid , size : f64 , z_near : f64 , z_far : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . camera_set_orthogonal ; let ret = crate :: icalls :: icallptr_void_rid_f64_f64_f64 (method_bind , self . this . sys () . as_ptr () , camera , size , z_near , z_far) ; } } # [doc = "Sets camera to use perspective projection. Objects on the screen becomes smaller when they are far away."] # [doc = ""] # [inline] pub fn camera_set_perspective (& self , camera : Rid , fovy_degrees : f64 , z_near : f64 , z_far : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . camera_set_perspective ; let ret = crate :: icalls :: icallptr_void_rid_f64_f64_f64 (method_bind , self . this . sys () . as_ptr () , camera , fovy_degrees , z_near , z_far) ; } } # [doc = "Sets [Transform] of camera."] # [doc = ""] # [inline] pub fn camera_set_transform (& self , camera : Rid , transform : Transform) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . camera_set_transform ; let ret = crate :: icalls :: icallptr_void_rid_trans (method_bind , self . this . sys () . as_ptr () , camera , transform) ; } } # [doc = "If `true`, preserves the horizontal aspect ratio which is equivalent to [constant Camera.KEEP_WIDTH]. If `false`, preserves the vertical aspect ratio which is equivalent to [constant Camera.KEEP_HEIGHT]."] # [doc = ""] # [inline] pub fn camera_set_use_vertical_aspect (& self , camera : Rid , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . camera_set_use_vertical_aspect ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , camera , enable) ; } } # [doc = "Creates a canvas and returns the assigned [RID]. It can be accessed with the RID that is returned. This RID will be used in all `canvas_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method."] # [doc = ""] # [inline] pub fn canvas_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Adds a circle command to the [CanvasItem]'s draw commands."] # [doc = ""] # [inline] pub fn canvas_item_add_circle (& self , item : Rid , pos : Vector2 , radius : f64 , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_circle ; let ret = crate :: icalls :: icallptr_void_rid_vec2_f64_color (method_bind , self . this . sys () . as_ptr () , item , pos , radius , color) ; } } # [doc = "If ignore is `true`, the VisualServer does not perform clipping."] # [doc = ""] # [inline] pub fn canvas_item_add_clip_ignore (& self , item : Rid , ignore : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_clip_ignore ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , item , ignore) ; } } # [doc = "Adds a line command to the [CanvasItem]'s draw commands.\n# Default Arguments\n* `width` - `1.0`\n* `antialiased` - `false`"] # [doc = ""] # [inline] pub fn canvas_item_add_line (& self , item : Rid , from : Vector2 , to : Vector2 , color : Color , width : f64 , antialiased : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_line ; let ret = crate :: icalls :: icallptr_void_rid_vec2_vec2_color_f64_bool (method_bind , self . this . sys () . as_ptr () , item , from , to , color , width , antialiased) ; } } # [doc = "Adds a mesh command to the [CanvasItem]'s draw commands.\n# Default Arguments\n* `transform` - `Transform2D( 1, 0, 0, 1, 0, 0 )`\n* `modulate` - `Color( 1, 1, 1, 1 )`"] # [doc = ""] # [inline] pub fn canvas_item_add_mesh (& self , item : Rid , mesh : Rid , transform : Transform2D , modulate : Color , texture : Rid , normal_map : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_mesh ; let ret = crate :: icalls :: icallptr_void_rid_rid_trans2D_color_rid_rid (method_bind , self . this . sys () . as_ptr () , item , mesh , transform , modulate , texture , normal_map) ; } } # [doc = "Adds a [MultiMesh] to the [CanvasItem]'s draw commands. Only affects its aabb at the moment."] # [doc = ""] # [inline] pub fn canvas_item_add_multimesh (& self , item : Rid , mesh : Rid , texture : Rid , normal_map : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_multimesh ; let ret = crate :: icalls :: icallptr_void_rid_rid_rid_rid (method_bind , self . this . sys () . as_ptr () , item , mesh , texture , normal_map) ; } } # [doc = "Adds a nine patch image to the [CanvasItem]'s draw commands.\nSee [NinePatchRect] for more explanation.\n# Default Arguments\n* `x_axis_mode` - `0`\n* `y_axis_mode` - `0`\n* `draw_center` - `true`\n* `modulate` - `Color( 1, 1, 1, 1 )`"] # [doc = ""] # [inline] pub fn canvas_item_add_nine_patch (& self , item : Rid , rect : Rect2 , source : Rect2 , texture : Rid , topleft : Vector2 , bottomright : Vector2 , x_axis_mode : i64 , y_axis_mode : i64 , draw_center : bool , modulate : Color , normal_map : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_nine_patch ; let ret = crate :: icalls :: icallptr_void_rid_rect2_rect2_rid_vec2_vec2_i64_i64_bool_color_rid (method_bind , self . this . sys () . as_ptr () , item , rect , source , texture , topleft , bottomright , x_axis_mode , y_axis_mode , draw_center , modulate , normal_map) ; } } # [doc = "Adds a particle system to the [CanvasItem]'s draw commands."] # [doc = ""] # [inline] pub fn canvas_item_add_particles (& self , item : Rid , particles : Rid , texture : Rid , normal_map : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_particles ; let ret = crate :: icalls :: icallptr_void_rid_rid_rid_rid (method_bind , self . this . sys () . as_ptr () , item , particles , texture , normal_map) ; } } # [doc = "Adds a polygon to the [CanvasItem]'s draw commands.\n# Default Arguments\n* `uvs` - `PoolVector2Array( )`\n* `antialiased` - `false`"] # [doc = ""] # [inline] pub fn canvas_item_add_polygon (& self , item : Rid , points : Vector2Array , colors : ColorArray , uvs : Vector2Array , texture : Rid , normal_map : Rid , antialiased : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_polygon ; let ret = crate :: icalls :: icallptr_void_rid_vec2arr_colorarr_vec2arr_rid_rid_bool (method_bind , self . this . sys () . as_ptr () , item , points , colors , uvs , texture , normal_map , antialiased) ; } } # [doc = "Adds a polyline, which is a line from multiple points with a width, to the [CanvasItem]'s draw commands.\n# Default Arguments\n* `width` - `1.0`\n* `antialiased` - `false`"] # [doc = ""] # [inline] pub fn canvas_item_add_polyline (& self , item : Rid , points : Vector2Array , colors : ColorArray , width : f64 , antialiased : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_polyline ; let ret = crate :: icalls :: icallptr_void_rid_vec2arr_colorarr_f64_bool (method_bind , self . this . sys () . as_ptr () , item , points , colors , width , antialiased) ; } } # [doc = "Adds a primitive to the [CanvasItem]'s draw commands.\n# Default Arguments\n* `width` - `1.0`"] # [doc = ""] # [inline] pub fn canvas_item_add_primitive (& self , item : Rid , points : Vector2Array , colors : ColorArray , uvs : Vector2Array , texture : Rid , width : f64 , normal_map : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_primitive ; let ret = crate :: icalls :: icallptr_void_rid_vec2arr_colorarr_vec2arr_rid_f64_rid (method_bind , self . this . sys () . as_ptr () , item , points , colors , uvs , texture , width , normal_map) ; } } # [doc = "Adds a rectangle to the [CanvasItem]'s draw commands."] # [doc = ""] # [inline] pub fn canvas_item_add_rect (& self , item : Rid , rect : Rect2 , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_rect ; let ret = crate :: icalls :: icallptr_void_rid_rect2_color (method_bind , self . this . sys () . as_ptr () , item , rect , color) ; } } # [doc = "Adds a [Transform2D] command to the [CanvasItem]'s draw commands.\nThis sets the extra_matrix uniform when executed. This affects the later commands of the canvas item."] # [doc = ""] # [inline] pub fn canvas_item_add_set_transform (& self , item : Rid , transform : Transform2D) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_set_transform ; let ret = crate :: icalls :: icallptr_void_rid_trans2D (method_bind , self . this . sys () . as_ptr () , item , transform) ; } } # [doc = "Adds a textured rect to the [CanvasItem]'s draw commands.\n# Default Arguments\n* `tile` - `false`\n* `modulate` - `Color( 1, 1, 1, 1 )`\n* `transpose` - `false`"] # [doc = ""] # [inline] pub fn canvas_item_add_texture_rect (& self , item : Rid , rect : Rect2 , texture : Rid , tile : bool , modulate : Color , transpose : bool , normal_map : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_texture_rect ; let ret = crate :: icalls :: icallptr_void_rid_rect2_rid_bool_color_bool_rid (method_bind , self . this . sys () . as_ptr () , item , rect , texture , tile , modulate , transpose , normal_map) ; } } # [doc = "Adds a texture rect with region setting to the [CanvasItem]'s draw commands.\n# Default Arguments\n* `modulate` - `Color( 1, 1, 1, 1 )`\n* `transpose` - `false`\n* `clip_uv` - `true`"] # [doc = ""] # [inline] pub fn canvas_item_add_texture_rect_region (& self , item : Rid , rect : Rect2 , texture : Rid , src_rect : Rect2 , modulate : Color , transpose : bool , normal_map : Rid , clip_uv : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_texture_rect_region ; let ret = crate :: icalls :: icallptr_void_rid_rect2_rid_rect2_color_bool_rid_bool (method_bind , self . this . sys () . as_ptr () , item , rect , texture , src_rect , modulate , transpose , normal_map , clip_uv) ; } } # [doc = "Adds a triangle array to the [CanvasItem]'s draw commands.\n# Default Arguments\n* `uvs` - `PoolVector2Array( )`\n* `bones` - `PoolIntArray( )`\n* `weights` - `PoolRealArray( )`\n* `count` - `-1`\n* `antialiased` - `false`\n* `antialiasing_use_indices` - `false`"] # [doc = ""] # [inline] pub fn canvas_item_add_triangle_array (& self , item : Rid , indices : Int32Array , points : Vector2Array , colors : ColorArray , uvs : Vector2Array , bones : Int32Array , weights : Float32Array , texture : Rid , count : i64 , normal_map : Rid , antialiased : bool , antialiasing_use_indices : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_add_triangle_array ; let ret = crate :: icalls :: icallptr_void_rid_i32arr_vec2arr_colorarr_vec2arr_i32arr_f32arr_rid_i64_rid_bool_bool (method_bind , self . this . sys () . as_ptr () , item , indices , points , colors , uvs , bones , weights , texture , count , normal_map , antialiased , antialiasing_use_indices) ; } } # [doc = "Clears the [CanvasItem] and removes all commands in it."] # [doc = ""] # [inline] pub fn canvas_item_clear (& self , item : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_clear ; let ret = crate :: icalls :: icallptr_void_rid (method_bind , self . this . sys () . as_ptr () , item) ; } } # [doc = "Creates a new [CanvasItem] and returns its [RID]. It can be accessed with the RID that is returned. This RID will be used in all `canvas_item_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method."] # [doc = ""] # [inline] pub fn canvas_item_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Sets clipping for the [CanvasItem]."] # [doc = ""] # [inline] pub fn canvas_item_set_clip (& self , item : Rid , clip : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_clip ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , item , clip) ; } } # [doc = "Sets the [CanvasItem] to copy a rect to the backbuffer."] # [doc = ""] # [inline] pub fn canvas_item_set_copy_to_backbuffer (& self , item : Rid , enabled : bool , rect : Rect2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_copy_to_backbuffer ; let ret = crate :: icalls :: icallptr_void_rid_bool_rect2 (method_bind , self . this . sys () . as_ptr () , item , enabled , rect) ; } } # [doc = "Defines a custom drawing rectangle for the [CanvasItem].\n# Default Arguments\n* `rect` - `Rect2( 0, 0, 0, 0 )`"] # [doc = ""] # [inline] pub fn canvas_item_set_custom_rect (& self , item : Rid , use_custom_rect : bool , rect : Rect2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_custom_rect ; let ret = crate :: icalls :: icallptr_void_rid_bool_rect2 (method_bind , self . this . sys () . as_ptr () , item , use_custom_rect , rect) ; } } # [doc = "Enables the use of distance fields for GUI elements that are rendering distance field based fonts."] # [doc = ""] # [inline] pub fn canvas_item_set_distance_field_mode (& self , item : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_distance_field_mode ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , item , enabled) ; } } # [doc = "Sets [CanvasItem] to be drawn behind its parent."] # [doc = ""] # [inline] pub fn canvas_item_set_draw_behind_parent (& self , item : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_draw_behind_parent ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , item , enabled) ; } } # [doc = "Sets the index for the [CanvasItem]."] # [doc = ""] # [inline] pub fn canvas_item_set_draw_index (& self , item : Rid , index : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_draw_index ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , item , index) ; } } # [doc = "The light mask. See [LightOccluder2D] for more information on light masks."] # [doc = ""] # [inline] pub fn canvas_item_set_light_mask (& self , item : Rid , mask : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_light_mask ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , item , mask) ; } } # [doc = "Sets a new material to the [CanvasItem]."] # [doc = ""] # [inline] pub fn canvas_item_set_material (& self , item : Rid , material : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_material ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , item , material) ; } } # [doc = "Sets the color that modulates the [CanvasItem] and its children."] # [doc = ""] # [inline] pub fn canvas_item_set_modulate (& self , item : Rid , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_modulate ; let ret = crate :: icalls :: icallptr_void_rid_color (method_bind , self . this . sys () . as_ptr () , item , color) ; } } # [doc = "Sets the parent for the [CanvasItem]. The parent can be another canvas item, or it can be the root canvas that is attached to the viewport."] # [doc = ""] # [inline] pub fn canvas_item_set_parent (& self , item : Rid , parent : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_parent ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , item , parent) ; } } # [doc = "Sets the color that modulates the [CanvasItem] without children."] # [doc = ""] # [inline] pub fn canvas_item_set_self_modulate (& self , item : Rid , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_self_modulate ; let ret = crate :: icalls :: icallptr_void_rid_color (method_bind , self . this . sys () . as_ptr () , item , color) ; } } # [doc = "Sets if [CanvasItem]'s children should be sorted by y-position."] # [doc = ""] # [inline] pub fn canvas_item_set_sort_children_by_y (& self , item : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_sort_children_by_y ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , item , enabled) ; } } # [doc = "Sets the [CanvasItem]'s [Transform2D]."] # [doc = ""] # [inline] pub fn canvas_item_set_transform (& self , item : Rid , transform : Transform2D) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_transform ; let ret = crate :: icalls :: icallptr_void_rid_trans2D (method_bind , self . this . sys () . as_ptr () , item , transform) ; } } # [doc = "Sets if the [CanvasItem] uses its parent's material."] # [doc = ""] # [inline] pub fn canvas_item_set_use_parent_material (& self , item : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_use_parent_material ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , item , enabled) ; } } # [doc = "Sets if the canvas item (including its children) is visible."] # [doc = ""] # [inline] pub fn canvas_item_set_visible (& self , item : Rid , visible : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_visible ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , item , visible) ; } } # [doc = "If this is enabled, the Z index of the parent will be added to the children's Z index."] # [doc = ""] # [inline] pub fn canvas_item_set_z_as_relative_to_parent (& self , item : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_z_as_relative_to_parent ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , item , enabled) ; } } # [doc = "Sets the [CanvasItem]'s Z index, i.e. its draw order (lower indexes are drawn first)."] # [doc = ""] # [inline] pub fn canvas_item_set_z_index (& self , item : Rid , z_index : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_item_set_z_index ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , item , z_index) ; } } # [doc = "Attaches the canvas light to the canvas. Removes it from its previous canvas."] # [doc = ""] # [inline] pub fn canvas_light_attach_to_canvas (& self , light : Rid , canvas : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_attach_to_canvas ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , light , canvas) ; } } # [doc = "Creates a canvas light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `canvas_light_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method."] # [doc = ""] # [inline] pub fn canvas_light_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Attaches a light occluder to the canvas. Removes it from its previous canvas."] # [doc = ""] # [inline] pub fn canvas_light_occluder_attach_to_canvas (& self , occluder : Rid , canvas : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_occluder_attach_to_canvas ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , occluder , canvas) ; } } # [doc = "Creates a light occluder and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `canvas_light_ocluder_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method."] # [doc = ""] # [inline] pub fn canvas_light_occluder_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_occluder_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Enables or disables light occluder."] # [doc = ""] # [inline] pub fn canvas_light_occluder_set_enabled (& self , occluder : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_occluder_set_enabled ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , occluder , enabled) ; } } # [doc = "The light mask. See [LightOccluder2D] for more information on light masks."] # [doc = ""] # [inline] pub fn canvas_light_occluder_set_light_mask (& self , occluder : Rid , mask : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_occluder_set_light_mask ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , occluder , mask) ; } } # [doc = "Sets a light occluder's polygon."] # [doc = ""] # [inline] pub fn canvas_light_occluder_set_polygon (& self , occluder : Rid , polygon : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_occluder_set_polygon ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , occluder , polygon) ; } } # [doc = "Sets a light occluder's [Transform2D]."] # [doc = ""] # [inline] pub fn canvas_light_occluder_set_transform (& self , occluder : Rid , transform : Transform2D) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_occluder_set_transform ; let ret = crate :: icalls :: icallptr_void_rid_trans2D (method_bind , self . this . sys () . as_ptr () , occluder , transform) ; } } # [doc = "Sets the color for a light."] # [doc = ""] # [inline] pub fn canvas_light_set_color (& self , light : Rid , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_color ; let ret = crate :: icalls :: icallptr_void_rid_color (method_bind , self . this . sys () . as_ptr () , light , color) ; } } # [doc = "Enables or disables a canvas light."] # [doc = ""] # [inline] pub fn canvas_light_set_enabled (& self , light : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_enabled ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , light , enabled) ; } } # [doc = "Sets a canvas light's energy."] # [doc = ""] # [inline] pub fn canvas_light_set_energy (& self , light : Rid , energy : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_energy ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , light , energy) ; } } # [doc = "Sets a canvas light's height."] # [doc = ""] # [inline] pub fn canvas_light_set_height (& self , light : Rid , height : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_height ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , light , height) ; } } # [doc = "The light mask. See [LightOccluder2D] for more information on light masks."] # [doc = ""] # [inline] pub fn canvas_light_set_item_cull_mask (& self , light : Rid , mask : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_item_cull_mask ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , light , mask) ; } } # [doc = "The binary mask used to determine which layers this canvas light's shadows affects. See [LightOccluder2D] for more information on light masks."] # [doc = ""] # [inline] pub fn canvas_light_set_item_shadow_cull_mask (& self , light : Rid , mask : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_item_shadow_cull_mask ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , light , mask) ; } } # [doc = "The layer range that gets rendered with this light."] # [doc = ""] # [inline] pub fn canvas_light_set_layer_range (& self , light : Rid , min_layer : i64 , max_layer : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_layer_range ; let ret = crate :: icalls :: icallptr_void_rid_i64_i64 (method_bind , self . this . sys () . as_ptr () , light , min_layer , max_layer) ; } } # [doc = "The mode of the light, see [enum CanvasLightMode] constants."] # [doc = ""] # [inline] pub fn canvas_light_set_mode (& self , light : Rid , mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_mode ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , light , mode) ; } } # [doc = "Sets the texture's scale factor of the light. Equivalent to [member Light2D.texture_scale]."] # [doc = ""] # [inline] pub fn canvas_light_set_scale (& self , light : Rid , scale : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_scale ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , light , scale) ; } } # [doc = "Sets the width of the shadow buffer, size gets scaled to the next power of two for this."] # [doc = ""] # [inline] pub fn canvas_light_set_shadow_buffer_size (& self , light : Rid , size : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_shadow_buffer_size ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , light , size) ; } } # [doc = "Sets the color of the canvas light's shadow."] # [doc = ""] # [inline] pub fn canvas_light_set_shadow_color (& self , light : Rid , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_shadow_color ; let ret = crate :: icalls :: icallptr_void_rid_color (method_bind , self . this . sys () . as_ptr () , light , color) ; } } # [doc = "Enables or disables the canvas light's shadow."] # [doc = ""] # [inline] pub fn canvas_light_set_shadow_enabled (& self , light : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_shadow_enabled ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , light , enabled) ; } } # [doc = "Sets the canvas light's shadow's filter, see [enum CanvasLightShadowFilter] constants."] # [doc = ""] # [inline] pub fn canvas_light_set_shadow_filter (& self , light : Rid , filter : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_shadow_filter ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , light , filter) ; } } # [doc = "Sets the length of the shadow's gradient."] # [doc = ""] # [inline] pub fn canvas_light_set_shadow_gradient_length (& self , light : Rid , length : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_shadow_gradient_length ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , light , length) ; } } # [doc = "Smoothens the shadow. The lower, the smoother."] # [doc = ""] # [inline] pub fn canvas_light_set_shadow_smooth (& self , light : Rid , smooth : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_shadow_smooth ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , light , smooth) ; } } # [doc = "Sets texture to be used by light. Equivalent to [member Light2D.texture]."] # [doc = ""] # [inline] pub fn canvas_light_set_texture (& self , light : Rid , texture : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_texture ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , light , texture) ; } } # [doc = "Sets the offset of the light's texture. Equivalent to [member Light2D.offset]."] # [doc = ""] # [inline] pub fn canvas_light_set_texture_offset (& self , light : Rid , offset : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_texture_offset ; let ret = crate :: icalls :: icallptr_void_rid_vec2 (method_bind , self . this . sys () . as_ptr () , light , offset) ; } } # [doc = "Sets the canvas light's [Transform2D]."] # [doc = ""] # [inline] pub fn canvas_light_set_transform (& self , light : Rid , transform : Transform2D) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_transform ; let ret = crate :: icalls :: icallptr_void_rid_trans2D (method_bind , self . this . sys () . as_ptr () , light , transform) ; } } # [doc = "Sets the Z range of objects that will be affected by this light. Equivalent to [member Light2D.range_z_min] and [member Light2D.range_z_max]."] # [doc = ""] # [inline] pub fn canvas_light_set_z_range (& self , light : Rid , min_z : i64 , max_z : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_light_set_z_range ; let ret = crate :: icalls :: icallptr_void_rid_i64_i64 (method_bind , self . this . sys () . as_ptr () , light , min_z , max_z) ; } } # [doc = "Creates a new light occluder polygon and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `canvas_occluder_polygon_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method."] # [doc = ""] # [inline] pub fn canvas_occluder_polygon_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_occluder_polygon_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Sets an occluder polygons cull mode. See [enum CanvasOccluderPolygonCullMode] constants."] # [doc = ""] # [inline] pub fn canvas_occluder_polygon_set_cull_mode (& self , occluder_polygon : Rid , mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_occluder_polygon_set_cull_mode ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , occluder_polygon , mode) ; } } # [doc = "Sets the shape of the occluder polygon."] # [doc = ""] # [inline] pub fn canvas_occluder_polygon_set_shape (& self , occluder_polygon : Rid , shape : Vector2Array , closed : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_occluder_polygon_set_shape ; let ret = crate :: icalls :: icallptr_void_rid_vec2arr_bool (method_bind , self . this . sys () . as_ptr () , occluder_polygon , shape , closed) ; } } # [doc = "Sets the shape of the occluder polygon as lines."] # [doc = ""] # [inline] pub fn canvas_occluder_polygon_set_shape_as_lines (& self , occluder_polygon : Rid , shape : Vector2Array) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_occluder_polygon_set_shape_as_lines ; let ret = crate :: icalls :: icallptr_void_rid_vec2arr (method_bind , self . this . sys () . as_ptr () , occluder_polygon , shape) ; } } # [doc = "A copy of the canvas item will be drawn with a local offset of the mirroring [Vector2]."] # [doc = ""] # [inline] pub fn canvas_set_item_mirroring (& self , canvas : Rid , item : Rid , mirroring : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_set_item_mirroring ; let ret = crate :: icalls :: icallptr_void_rid_rid_vec2 (method_bind , self . this . sys () . as_ptr () , canvas , item , mirroring) ; } } # [doc = "Modulates all colors in the given canvas."] # [doc = ""] # [inline] pub fn canvas_set_modulate (& self , canvas : Rid , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . canvas_set_modulate ; let ret = crate :: icalls :: icallptr_void_rid_color (method_bind , self . this . sys () . as_ptr () , canvas , color) ; } } # [doc = "Creates a directional light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID can be used in most `light_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.\nTo place in a scene, attach this directional light to an instance using [method instance_set_base] using the returned RID."] # [doc = ""] # [inline] pub fn directional_light_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . directional_light_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Draws a frame. [i]This method is deprecated[/i], please use [method force_draw] instead.\n# Default Arguments\n* `swap_buffers` - `true`\n* `frame_step` - `0.0`"] # [doc = ""] # [inline] pub fn draw (& self , swap_buffers : bool , frame_step : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . draw ; let ret = crate :: icalls :: icallptr_void_bool_f64 (method_bind , self . this . sys () . as_ptr () , swap_buffers , frame_step) ; } } # [doc = "Creates an environment and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `environment_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method."] # [doc = ""] # [inline] pub fn environment_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Sets the values to be used with the \"Adjustment\" post-process effect. See [Environment] for more details."] # [doc = ""] # [inline] pub fn environment_set_adjustment (& self , env : Rid , enable : bool , brightness : f64 , contrast : f64 , saturation : f64 , ramp : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_adjustment ; let ret = crate :: icalls :: icallptr_void_rid_bool_f64_f64_f64_rid (method_bind , self . this . sys () . as_ptr () , env , enable , brightness , contrast , saturation , ramp) ; } } # [doc = "Sets the ambient light parameters. See [Environment] for more details.\n# Default Arguments\n* `energy` - `1.0`\n* `sky_contibution` - `0.0`"] # [doc = ""] # [inline] pub fn environment_set_ambient_light (& self , env : Rid , color : Color , energy : f64 , sky_contibution : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_ambient_light ; let ret = crate :: icalls :: icallptr_void_rid_color_f64_f64 (method_bind , self . this . sys () . as_ptr () , env , color , energy , sky_contibution) ; } } # [doc = "Sets the [i]BGMode[/i] of the environment. Equivalent to [member Environment.background_mode]."] # [doc = ""] # [inline] pub fn environment_set_background (& self , env : Rid , bg : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_background ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , env , bg) ; } } # [doc = "Color displayed for clear areas of the scene (if using Custom color or Color+Sky background modes)."] # [doc = ""] # [inline] pub fn environment_set_bg_color (& self , env : Rid , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_bg_color ; let ret = crate :: icalls :: icallptr_void_rid_color (method_bind , self . this . sys () . as_ptr () , env , color) ; } } # [doc = "Sets the intensity of the background color."] # [doc = ""] # [inline] pub fn environment_set_bg_energy (& self , env : Rid , energy : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_bg_energy ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , env , energy) ; } } # [doc = "Sets the maximum layer to use if using Canvas background mode."] # [doc = ""] # [inline] pub fn environment_set_canvas_max_layer (& self , env : Rid , max_layer : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_canvas_max_layer ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , env , max_layer) ; } } # [doc = "Sets the values to be used with the \"DoF Far Blur\" post-process effect. See [Environment] for more details."] # [doc = ""] # [inline] pub fn environment_set_dof_blur_far (& self , env : Rid , enable : bool , distance : f64 , transition : f64 , far_amount : f64 , quality : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_dof_blur_far ; let ret = crate :: icalls :: icallptr_void_rid_bool_f64_f64_f64_i64 (method_bind , self . this . sys () . as_ptr () , env , enable , distance , transition , far_amount , quality) ; } } # [doc = "Sets the values to be used with the \"DoF Near Blur\" post-process effect. See [Environment] for more details."] # [doc = ""] # [inline] pub fn environment_set_dof_blur_near (& self , env : Rid , enable : bool , distance : f64 , transition : f64 , far_amount : f64 , quality : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_dof_blur_near ; let ret = crate :: icalls :: icallptr_void_rid_bool_f64_f64_f64_i64 (method_bind , self . this . sys () . as_ptr () , env , enable , distance , transition , far_amount , quality) ; } } # [doc = "Sets the variables to be used with the scene fog. See [Environment] for more details."] # [doc = ""] # [inline] pub fn environment_set_fog (& self , env : Rid , enable : bool , color : Color , sun_color : Color , sun_amount : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_fog ; let ret = crate :: icalls :: icallptr_void_rid_bool_color_color_f64 (method_bind , self . this . sys () . as_ptr () , env , enable , color , sun_color , sun_amount) ; } } # [doc = "Sets the variables to be used with the fog depth effect. See [Environment] for more details."] # [doc = ""] # [inline] pub fn environment_set_fog_depth (& self , env : Rid , enable : bool , depth_begin : f64 , depth_end : f64 , depth_curve : f64 , transmit : bool , transmit_curve : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_fog_depth ; let ret = crate :: icalls :: icallptr_void_rid_bool_f64_f64_f64_bool_f64 (method_bind , self . this . sys () . as_ptr () , env , enable , depth_begin , depth_end , depth_curve , transmit , transmit_curve) ; } } # [doc = "Sets the variables to be used with the fog height effect. See [Environment] for more details."] # [doc = ""] # [inline] pub fn environment_set_fog_height (& self , env : Rid , enable : bool , min_height : f64 , max_height : f64 , height_curve : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_fog_height ; let ret = crate :: icalls :: icallptr_void_rid_bool_f64_f64_f64 (method_bind , self . this . sys () . as_ptr () , env , enable , min_height , max_height , height_curve) ; } } # [doc = "Sets the variables to be used with the \"glow\" post-process effect. See [Environment] for more details."] # [doc = ""] # [inline] pub fn environment_set_glow (& self , env : Rid , enable : bool , level_flags : i64 , intensity : f64 , strength : f64 , bloom_threshold : f64 , blend_mode : i64 , hdr_bleed_threshold : f64 , hdr_bleed_scale : f64 , hdr_luminance_cap : f64 , bicubic_upscale : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_glow ; let ret = crate :: icalls :: icallptr_void_rid_bool_i64_f64_f64_f64_i64_f64_f64_f64_bool (method_bind , self . this . sys () . as_ptr () , env , enable , level_flags , intensity , strength , bloom_threshold , blend_mode , hdr_bleed_threshold , hdr_bleed_scale , hdr_luminance_cap , bicubic_upscale) ; } } # [doc = "Sets the [Sky] to be used as the environment's background when using [i]BGMode[/i] sky. Equivalent to [member Environment.background_sky]."] # [doc = ""] # [inline] pub fn environment_set_sky (& self , env : Rid , sky : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_sky ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , env , sky) ; } } # [doc = "Sets a custom field of view for the background [Sky]. Equivalent to [member Environment.background_sky_custom_fov]."] # [doc = ""] # [inline] pub fn environment_set_sky_custom_fov (& self , env : Rid , scale : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_sky_custom_fov ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , env , scale) ; } } # [doc = "Sets the rotation of the background [Sky] expressed as a [Basis]. Equivalent to [member Environment.background_sky_orientation]."] # [doc = ""] # [inline] pub fn environment_set_sky_orientation (& self , env : Rid , orientation : Basis) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_sky_orientation ; let ret = crate :: icalls :: icallptr_void_rid_basis (method_bind , self . this . sys () . as_ptr () , env , orientation) ; } } # [doc = "Sets the variables to be used with the \"Screen Space Ambient Occlusion (SSAO)\" post-process effect. See [Environment] for more details."] # [doc = ""] # [inline] pub fn environment_set_ssao (& self , env : Rid , enable : bool , radius : f64 , intensity : f64 , radius2 : f64 , intensity2 : f64 , bias : f64 , light_affect : f64 , ao_channel_affect : f64 , color : Color , quality : i64 , blur : i64 , bilateral_sharpness : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_ssao ; let ret = crate :: icalls :: icallptr_void_rid_bool_f64_f64_f64_f64_f64_f64_f64_color_i64_i64_f64 (method_bind , self . this . sys () . as_ptr () , env , enable , radius , intensity , radius2 , intensity2 , bias , light_affect , ao_channel_affect , color , quality , blur , bilateral_sharpness) ; } } # [doc = "Sets the variables to be used with the \"screen space reflections\" post-process effect. See [Environment] for more details."] # [doc = ""] # [inline] pub fn environment_set_ssr (& self , env : Rid , enable : bool , max_steps : i64 , fade_in : f64 , fade_out : f64 , depth_tolerance : f64 , roughness : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_ssr ; let ret = crate :: icalls :: icallptr_void_rid_bool_i64_f64_f64_f64_bool (method_bind , self . this . sys () . as_ptr () , env , enable , max_steps , fade_in , fade_out , depth_tolerance , roughness) ; } } # [doc = "Sets the variables to be used with the \"tonemap\" post-process effect. See [Environment] for more details."] # [doc = ""] # [inline] pub fn environment_set_tonemap (& self , env : Rid , tone_mapper : i64 , exposure : f64 , white : f64 , auto_exposure : bool , min_luminance : f64 , max_luminance : f64 , auto_exp_speed : f64 , auto_exp_grey : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . environment_set_tonemap ; let ret = crate :: icalls :: icallptr_void_rid_i64_f64_f64_bool_f64_f64_f64_f64 (method_bind , self . this . sys () . as_ptr () , env , tone_mapper , exposure , white , auto_exposure , min_luminance , max_luminance , auto_exp_speed , auto_exp_grey) ; } } # [doc = "Removes buffers and clears testcubes."] # [doc = ""] # [inline] pub fn finish (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . finish ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = "Forces a frame to be drawn when the function is called. Drawing a frame updates all [Viewport]s that are set to update. Use with extreme caution.\n# Default Arguments\n* `swap_buffers` - `true`\n* `frame_step` - `0.0`"] # [doc = ""] # [inline] pub fn force_draw (& self , swap_buffers : bool , frame_step : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . force_draw ; let ret = crate :: icalls :: icallptr_void_bool_f64 (method_bind , self . this . sys () . as_ptr () , swap_buffers , frame_step) ; } } # [doc = "Synchronizes threads."] # [doc = ""] # [inline] pub fn force_sync (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . force_sync ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = "Tries to free an object in the VisualServer."] # [doc = ""] # [inline] pub fn free_rid (& self , rid : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . free_rid ; let ret = crate :: icalls :: icallptr_void_rid (method_bind , self . this . sys () . as_ptr () , rid) ; } } # [doc = "Returns a certain information, see [enum RenderInfo] for options."] # [doc = ""] # [inline] pub fn get_render_info (& self , info : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . get_render_info ; let ret = crate :: icalls :: icallptr_i64_i64 (method_bind , self . this . sys () . as_ptr () , info) ; ret as _ } } # [doc = "Returns the id of the test cube. Creates one if none exists."] # [doc = ""] # [inline] pub fn get_test_cube (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . get_test_cube ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Returns the id of the test texture. Creates one if none exists."] # [doc = ""] # [inline] pub fn get_test_texture (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . get_test_texture ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Returns the name of the video adapter (e.g. \"GeForce GTX 1080/PCIe/SSE2\").\n**Note:** When running a headless or server binary, this function returns an empty string."] # [doc = ""] # [inline] pub fn get_video_adapter_name (& self) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . get_video_adapter_name ; let ret = crate :: icalls :: icallptr_str (method_bind , self . this . sys () . as_ptr ()) ; GodotString :: from_sys (ret) } } # [doc = "Returns the vendor of the video adapter (e.g. \"NVIDIA Corporation\").\n**Note:** When running a headless or server binary, this function returns an empty string."] # [doc = ""] # [inline] pub fn get_video_adapter_vendor (& self) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . get_video_adapter_vendor ; let ret = crate :: icalls :: icallptr_str (method_bind , self . this . sys () . as_ptr ()) ; GodotString :: from_sys (ret) } } # [doc = "Returns the id of a white texture. Creates one if none exists."] # [doc = ""] # [inline] pub fn get_white_texture (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . get_white_texture ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Creates a GI probe and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `gi_probe_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.\nTo place in a scene, attach this GI probe to an instance using [method instance_set_base] using the returned RID."] # [doc = ""] # [inline] pub fn gi_probe_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Returns the bias value for the GI probe. Bias is used to avoid self occlusion. Equivalent to [member GIProbeData.bias]."] # [doc = ""] # [inline] pub fn gi_probe_get_bias (& self , probe : Rid) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_get_bias ; let ret = crate :: icalls :: icallptr_f64_rid (method_bind , self . this . sys () . as_ptr () , probe) ; ret as _ } } # [doc = "Returns the axis-aligned bounding box that covers the full extent of the GI probe."] # [doc = ""] # [inline] pub fn gi_probe_get_bounds (& self , probe : Rid) -> Aabb { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_get_bounds ; let ret = crate :: icalls :: icallptr_aabb_rid (method_bind , self . this . sys () . as_ptr () , probe) ; mem :: transmute (ret) } } # [doc = "Returns the cell size set by [method gi_probe_set_cell_size]."] # [doc = ""] # [inline] pub fn gi_probe_get_cell_size (& self , probe : Rid) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_get_cell_size ; let ret = crate :: icalls :: icallptr_f64_rid (method_bind , self . this . sys () . as_ptr () , probe) ; ret as _ } } # [doc = "Returns the data used by the GI probe."] # [doc = ""] # [inline] pub fn gi_probe_get_dynamic_data (& self , probe : Rid) -> Int32Array { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_get_dynamic_data ; let ret = crate :: icalls :: icallptr_i32arr_rid (method_bind , self . this . sys () . as_ptr () , probe) ; Int32Array :: from_sys (ret) } } # [doc = "Returns the dynamic range set for this GI probe. Equivalent to [member GIProbe.dynamic_range]."] # [doc = ""] # [inline] pub fn gi_probe_get_dynamic_range (& self , probe : Rid) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_get_dynamic_range ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , probe) ; ret as _ } } # [doc = "Returns the energy multiplier for this GI probe. Equivalent to [member GIProbe.energy]."] # [doc = ""] # [inline] pub fn gi_probe_get_energy (& self , probe : Rid) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_get_energy ; let ret = crate :: icalls :: icallptr_f64_rid (method_bind , self . this . sys () . as_ptr () , probe) ; ret as _ } } # [doc = "Returns the normal bias for this GI probe. Equivalent to [member GIProbe.normal_bias]."] # [doc = ""] # [inline] pub fn gi_probe_get_normal_bias (& self , probe : Rid) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_get_normal_bias ; let ret = crate :: icalls :: icallptr_f64_rid (method_bind , self . this . sys () . as_ptr () , probe) ; ret as _ } } # [doc = "Returns the propagation value for this GI probe. Equivalent to [member GIProbe.propagation]."] # [doc = ""] # [inline] pub fn gi_probe_get_propagation (& self , probe : Rid) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_get_propagation ; let ret = crate :: icalls :: icallptr_f64_rid (method_bind , self . this . sys () . as_ptr () , probe) ; ret as _ } } # [doc = "Returns the Transform set by [method gi_probe_set_to_cell_xform]."] # [doc = ""] # [inline] pub fn gi_probe_get_to_cell_xform (& self , probe : Rid) -> Transform { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_get_to_cell_xform ; let ret = crate :: icalls :: icallptr_trans_rid (method_bind , self . this . sys () . as_ptr () , probe) ; mem :: transmute (ret) } } # [doc = "Returns `true` if the GI probe data associated with this GI probe is compressed. Equivalent to [member GIProbe.compress]."] # [doc = ""] # [inline] pub fn gi_probe_is_compressed (& self , probe : Rid) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_is_compressed ; let ret = crate :: icalls :: icallptr_bool_rid (method_bind , self . this . sys () . as_ptr () , probe) ; ret as _ } } # [doc = "Returns `true` if the GI probe is set to interior, meaning it does not account for sky light. Equivalent to [member GIProbe.interior]."] # [doc = ""] # [inline] pub fn gi_probe_is_interior (& self , probe : Rid) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_is_interior ; let ret = crate :: icalls :: icallptr_bool_rid (method_bind , self . this . sys () . as_ptr () , probe) ; ret as _ } } # [doc = "Sets the bias value to avoid self-occlusion. Equivalent to [member GIProbe.bias]."] # [doc = ""] # [inline] pub fn gi_probe_set_bias (& self , probe : Rid , bias : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_set_bias ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , probe , bias) ; } } # [doc = "Sets the axis-aligned bounding box that covers the extent of the GI probe."] # [doc = ""] # [inline] pub fn gi_probe_set_bounds (& self , probe : Rid , bounds : Aabb) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_set_bounds ; let ret = crate :: icalls :: icallptr_void_rid_aabb (method_bind , self . this . sys () . as_ptr () , probe , bounds) ; } } # [doc = "Sets the size of individual cells within the GI probe."] # [doc = ""] # [inline] pub fn gi_probe_set_cell_size (& self , probe : Rid , range : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_set_cell_size ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , probe , range) ; } } # [doc = "Sets the compression setting for the GI probe data. Compressed data will take up less space but may look worse. Equivalent to [member GIProbe.compress]."] # [doc = ""] # [inline] pub fn gi_probe_set_compress (& self , probe : Rid , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_set_compress ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , probe , enable) ; } } # [doc = "Sets the data to be used in the GI probe for lighting calculations. Normally this is created and called internally within the [GIProbe] node. You should not try to set this yourself."] # [doc = ""] # [inline] pub fn gi_probe_set_dynamic_data (& self , probe : Rid , data : Int32Array) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_set_dynamic_data ; let ret = crate :: icalls :: icallptr_void_rid_i32arr (method_bind , self . this . sys () . as_ptr () , probe , data) ; } } # [doc = "Sets the dynamic range of the GI probe. Dynamic range sets the limit for how bright lights can be. A smaller range captures greater detail but limits how bright lights can be. Equivalent to [member GIProbe.dynamic_range]."] # [doc = ""] # [inline] pub fn gi_probe_set_dynamic_range (& self , probe : Rid , range : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_set_dynamic_range ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , probe , range) ; } } # [doc = "Sets the energy multiplier for this GI probe. A higher energy makes the indirect light from the GI probe brighter. Equivalent to [member GIProbe.energy]."] # [doc = ""] # [inline] pub fn gi_probe_set_energy (& self , probe : Rid , energy : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_set_energy ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , probe , energy) ; } } # [doc = "Sets the interior value of this GI probe. A GI probe set to interior does not include the sky when calculating lighting. Equivalent to [member GIProbe.interior]."] # [doc = ""] # [inline] pub fn gi_probe_set_interior (& self , probe : Rid , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_set_interior ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , probe , enable) ; } } # [doc = "Sets the normal bias for this GI probe. Normal bias behaves similar to the other form of bias and may help reduce self-occlusion. Equivalent to [member GIProbe.normal_bias]."] # [doc = ""] # [inline] pub fn gi_probe_set_normal_bias (& self , probe : Rid , bias : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_set_normal_bias ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , probe , bias) ; } } # [doc = "Sets the propagation of light within this GI probe. Equivalent to [member GIProbe.propagation]."] # [doc = ""] # [inline] pub fn gi_probe_set_propagation (& self , probe : Rid , propagation : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_set_propagation ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , probe , propagation) ; } } # [doc = "Sets the to cell [Transform] for this GI probe."] # [doc = ""] # [inline] pub fn gi_probe_set_to_cell_xform (& self , probe : Rid , xform : Transform) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . gi_probe_set_to_cell_xform ; let ret = crate :: icalls :: icallptr_void_rid_trans (method_bind , self . this . sys () . as_ptr () , probe , xform) ; } } # [doc = "Returns `true` if changes have been made to the VisualServer's data. [method draw] is usually called if this happens."] # [doc = ""] # [inline] pub fn has_changed (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . has_changed ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Not yet implemented. Always returns `false`."] # [doc = ""] # [inline] pub fn has_feature (& self , feature : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . has_feature ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , feature) ; ret as _ } } # [doc = "Returns `true` if the OS supports a certain feature. Features might be `s3tc`, `etc`, `etc2` and `pvrtc`."] # [doc = ""] # [inline] pub fn has_os_feature (& self , feature : impl Into < GodotString >) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . has_os_feature ; let ret = crate :: icalls :: icallptr_bool_str (method_bind , self . this . sys () . as_ptr () , feature . into ()) ; ret as _ } } # [doc = "Sets up [ImmediateGeometry] internals to prepare for drawing. Equivalent to [method ImmediateGeometry.begin]."] # [doc = ""] # [inline] pub fn immediate_begin (& self , immediate : Rid , primitive : i64 , texture : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . immediate_begin ; let ret = crate :: icalls :: icallptr_void_rid_i64_rid (method_bind , self . this . sys () . as_ptr () , immediate , primitive , texture) ; } } # [doc = "Clears everything that was set up between [method immediate_begin] and [method immediate_end]. Equivalent to [method ImmediateGeometry.clear]."] # [doc = ""] # [inline] pub fn immediate_clear (& self , immediate : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . immediate_clear ; let ret = crate :: icalls :: icallptr_void_rid (method_bind , self . this . sys () . as_ptr () , immediate) ; } } # [doc = "Sets the color to be used with next vertex. Equivalent to [method ImmediateGeometry.set_color]."] # [doc = ""] # [inline] pub fn immediate_color (& self , immediate : Rid , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . immediate_color ; let ret = crate :: icalls :: icallptr_void_rid_color (method_bind , self . this . sys () . as_ptr () , immediate , color) ; } } # [doc = "Creates an immediate geometry and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `immediate_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.\nTo place in a scene, attach this immediate geometry to an instance using [method instance_set_base] using the returned RID."] # [doc = ""] # [inline] pub fn immediate_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . immediate_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Ends drawing the [ImmediateGeometry] and displays it. Equivalent to [method ImmediateGeometry.end]."] # [doc = ""] # [inline] pub fn immediate_end (& self , immediate : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . immediate_end ; let ret = crate :: icalls :: icallptr_void_rid (method_bind , self . this . sys () . as_ptr () , immediate) ; } } # [doc = "Returns the material assigned to the [ImmediateGeometry]."] # [doc = ""] # [inline] pub fn immediate_get_material (& self , immediate : Rid) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . immediate_get_material ; let ret = crate :: icalls :: icallptr_rid_rid (method_bind , self . this . sys () . as_ptr () , immediate) ; Rid :: from_sys (ret) } } # [doc = "Sets the normal to be used with next vertex. Equivalent to [method ImmediateGeometry.set_normal]."] # [doc = ""] # [inline] pub fn immediate_normal (& self , immediate : Rid , normal : Vector3) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . immediate_normal ; let ret = crate :: icalls :: icallptr_void_rid_vec3 (method_bind , self . this . sys () . as_ptr () , immediate , normal) ; } } # [doc = "Sets the material to be used to draw the [ImmediateGeometry]."] # [doc = ""] # [inline] pub fn immediate_set_material (& self , immediate : Rid , material : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . immediate_set_material ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , immediate , material) ; } } # [doc = "Sets the tangent to be used with next vertex. Equivalent to [method ImmediateGeometry.set_tangent]."] # [doc = ""] # [inline] pub fn immediate_tangent (& self , immediate : Rid , tangent : Plane) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . immediate_tangent ; let ret = crate :: icalls :: icallptr_void_rid_plane (method_bind , self . this . sys () . as_ptr () , immediate , tangent) ; } } # [doc = "Sets the UV to be used with next vertex. Equivalent to [method ImmediateGeometry.set_uv]."] # [doc = ""] # [inline] pub fn immediate_uv (& self , immediate : Rid , tex_uv : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . immediate_uv ; let ret = crate :: icalls :: icallptr_void_rid_vec2 (method_bind , self . this . sys () . as_ptr () , immediate , tex_uv) ; } } # [doc = "Sets the UV2 to be used with next vertex. Equivalent to [method ImmediateGeometry.set_uv2]."] # [doc = ""] # [inline] pub fn immediate_uv2 (& self , immediate : Rid , tex_uv : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . immediate_uv2 ; let ret = crate :: icalls :: icallptr_void_rid_vec2 (method_bind , self . this . sys () . as_ptr () , immediate , tex_uv) ; } } # [doc = "Adds the next vertex using the information provided in advance. Equivalent to [method ImmediateGeometry.add_vertex]."] # [doc = ""] # [inline] pub fn immediate_vertex (& self , immediate : Rid , vertex : Vector3) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . immediate_vertex ; let ret = crate :: icalls :: icallptr_void_rid_vec3 (method_bind , self . this . sys () . as_ptr () , immediate , vertex) ; } } # [doc = "Adds the next vertex using the information provided in advance. This is a helper class that calls [method immediate_vertex] under the hood. Equivalent to [method ImmediateGeometry.add_vertex]."] # [doc = ""] # [inline] pub fn immediate_vertex_2d (& self , immediate : Rid , vertex : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . immediate_vertex_2d ; let ret = crate :: icalls :: icallptr_void_rid_vec2 (method_bind , self . this . sys () . as_ptr () , immediate , vertex) ; } } # [doc = "Initializes the visual server. This function is called internally by platform-dependent code during engine initialization. If called from a running game, it will not do anything."] # [doc = ""] # [inline] pub fn init (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . init ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = "Attaches a unique Object ID to instance. Object ID must be attached to instance for proper culling with [method instances_cull_aabb], [method instances_cull_convex], and [method instances_cull_ray]."] # [doc = ""] # [inline] pub fn instance_attach_object_instance_id (& self , instance : Rid , id : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_attach_object_instance_id ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , instance , id) ; } } # [doc = "Attaches a skeleton to an instance. Removes the previous skeleton from the instance."] # [doc = ""] # [inline] pub fn instance_attach_skeleton (& self , instance : Rid , skeleton : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_attach_skeleton ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , instance , skeleton) ; } } # [doc = "Creates a visual instance and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `instance_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.\nAn instance is a way of placing a 3D object in the scenario. Objects like particles, meshes, and reflection probes need to be associated with an instance to be visible in the scenario using [method instance_set_base]."] # [doc = ""] # [inline] pub fn instance_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Creates a visual instance, adds it to the VisualServer, and sets both base and scenario. It can be accessed with the RID that is returned. This RID will be used in all `instance_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method."] # [doc = ""] # [inline] pub fn instance_create2 (& self , base : Rid , scenario : Rid) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_create2 ; let ret = crate :: icalls :: icallptr_rid_rid_rid (method_bind , self . this . sys () . as_ptr () , base , scenario) ; Rid :: from_sys (ret) } } # [doc = "Not implemented in Godot 3.x."] # [doc = ""] # [inline] pub fn instance_geometry_set_as_instance_lod (& self , instance : Rid , as_lod_of_instance : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_geometry_set_as_instance_lod ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , instance , as_lod_of_instance) ; } } # [doc = "Sets the shadow casting setting to one of [enum ShadowCastingSetting]. Equivalent to [member GeometryInstance.cast_shadow]."] # [doc = ""] # [inline] pub fn instance_geometry_set_cast_shadows_setting (& self , instance : Rid , shadow_casting_setting : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_geometry_set_cast_shadows_setting ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , instance , shadow_casting_setting) ; } } # [doc = "Not implemented in Godot 3.x."] # [doc = ""] # [inline] pub fn instance_geometry_set_draw_range (& self , instance : Rid , min : f64 , max : f64 , min_margin : f64 , max_margin : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_geometry_set_draw_range ; let ret = crate :: icalls :: icallptr_void_rid_f64_f64_f64_f64 (method_bind , self . this . sys () . as_ptr () , instance , min , max , min_margin , max_margin) ; } } # [doc = "Sets the flag for a given [enum InstanceFlags]. See [enum InstanceFlags] for more details."] # [doc = ""] # [inline] pub fn instance_geometry_set_flag (& self , instance : Rid , flag : i64 , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_geometry_set_flag ; let ret = crate :: icalls :: icallptr_void_rid_i64_bool (method_bind , self . this . sys () . as_ptr () , instance , flag , enabled) ; } } # [doc = "Sets a material that will override the material for all surfaces on the mesh associated with this instance. Equivalent to [member GeometryInstance.material_override]."] # [doc = ""] # [inline] pub fn instance_geometry_set_material_override (& self , instance : Rid , material : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_geometry_set_material_override ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , instance , material) ; } } # [doc = "Sets the base of the instance. A base can be any of the 3D objects that are created in the VisualServer that can be displayed. For example, any of the light types, mesh, multimesh, immediate geometry, particle system, reflection probe, lightmap capture, and the GI probe are all types that can be set as the base of an instance in order to be displayed in the scenario."] # [doc = ""] # [inline] pub fn instance_set_base (& self , instance : Rid , base : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_set_base ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , instance , base) ; } } # [doc = "Sets the weight for a given blend shape associated with this instance."] # [doc = ""] # [inline] pub fn instance_set_blend_shape_weight (& self , instance : Rid , shape : i64 , weight : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_set_blend_shape_weight ; let ret = crate :: icalls :: icallptr_void_rid_i64_f64 (method_bind , self . this . sys () . as_ptr () , instance , shape , weight) ; } } # [doc = "Sets a custom AABB to use when culling objects from the view frustum. Equivalent to [method GeometryInstance.set_custom_aabb]."] # [doc = ""] # [inline] pub fn instance_set_custom_aabb (& self , instance : Rid , aabb : Aabb) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_set_custom_aabb ; let ret = crate :: icalls :: icallptr_void_rid_aabb (method_bind , self . this . sys () . as_ptr () , instance , aabb) ; } } # [doc = "Function not implemented in Godot 3.x."] # [doc = ""] # [inline] pub fn instance_set_exterior (& self , instance : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_set_exterior ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , instance , enabled) ; } } # [doc = "Sets a margin to increase the size of the AABB when culling objects from the view frustum. This allows you avoid culling objects that fall outside the view frustum. Equivalent to [member GeometryInstance.extra_cull_margin]."] # [doc = ""] # [inline] pub fn instance_set_extra_visibility_margin (& self , instance : Rid , margin : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_set_extra_visibility_margin ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , instance , margin) ; } } # [doc = "Sets the render layers that this instance will be drawn to. Equivalent to [member VisualInstance.layers]."] # [doc = ""] # [inline] pub fn instance_set_layer_mask (& self , instance : Rid , mask : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_set_layer_mask ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , instance , mask) ; } } # [doc = "Sets the scenario that the instance is in. The scenario is the 3D world that the objects will be displayed in."] # [doc = ""] # [inline] pub fn instance_set_scenario (& self , instance : Rid , scenario : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_set_scenario ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , instance , scenario) ; } } # [doc = "Sets the material of a specific surface. Equivalent to [method MeshInstance.set_surface_material]."] # [doc = ""] # [inline] pub fn instance_set_surface_material (& self , instance : Rid , surface : i64 , material : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_set_surface_material ; let ret = crate :: icalls :: icallptr_void_rid_i64_rid (method_bind , self . this . sys () . as_ptr () , instance , surface , material) ; } } # [doc = "Sets the world space transform of the instance. Equivalent to [member Spatial.transform]."] # [doc = ""] # [inline] pub fn instance_set_transform (& self , instance : Rid , transform : Transform) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_set_transform ; let ret = crate :: icalls :: icallptr_void_rid_trans (method_bind , self . this . sys () . as_ptr () , instance , transform) ; } } # [doc = "Sets the lightmap to use with this instance."] # [doc = ""] # [inline] pub fn instance_set_use_lightmap (& self , instance : Rid , lightmap_instance : Rid , lightmap : Rid , lightmap_slice : i64 , lightmap_uv_rect : Rect2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_set_use_lightmap ; let ret = crate :: icalls :: icallptr_void_rid_rid_rid_i64_rect2 (method_bind , self . this . sys () . as_ptr () , instance , lightmap_instance , lightmap , lightmap_slice , lightmap_uv_rect) ; } } # [doc = "Sets whether an instance is drawn or not. Equivalent to [member Spatial.visible]."] # [doc = ""] # [inline] pub fn instance_set_visible (& self , instance : Rid , visible : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instance_set_visible ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , instance , visible) ; } } # [doc = "Returns an array of object IDs intersecting with the provided AABB. Only visual 3D nodes are considered, such as [MeshInstance] or [DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the actual nodes. A scenario RID must be provided, which is available in the [World] you want to query. This forces an update for all resources queued to update.\n**Warning:** This function is primarily intended for editor usage. For in-game use cases, prefer physics collision."] # [doc = ""] # [inline] pub fn instances_cull_aabb (& self , aabb : Aabb , scenario : Rid) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instances_cull_aabb ; let ret = crate :: icalls :: icallvar__aabb_rid (method_bind , self . this . sys () . as_ptr () , aabb , scenario) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } # [doc = "Returns an array of object IDs intersecting with the provided convex shape. Only visual 3D nodes are considered, such as [MeshInstance] or [DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the actual nodes. A scenario RID must be provided, which is available in the [World] you want to query. This forces an update for all resources queued to update.\n**Warning:** This function is primarily intended for editor usage. For in-game use cases, prefer physics collision."] # [doc = ""] # [inline] pub fn instances_cull_convex (& self , convex : VariantArray , scenario : Rid) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instances_cull_convex ; let ret = crate :: icalls :: icallvar__arr_rid (method_bind , self . this . sys () . as_ptr () , convex , scenario) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } # [doc = "Returns an array of object IDs intersecting with the provided 3D ray. Only visual 3D nodes are considered, such as [MeshInstance] or [DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the actual nodes. A scenario RID must be provided, which is available in the [World] you want to query. This forces an update for all resources queued to update.\n**Warning:** This function is primarily intended for editor usage. For in-game use cases, prefer physics collision."] # [doc = ""] # [inline] pub fn instances_cull_ray (& self , from : Vector3 , to : Vector3 , scenario : Rid) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . instances_cull_ray ; let ret = crate :: icalls :: icallvar__vec3_vec3_rid (method_bind , self . this . sys () . as_ptr () , from , to , scenario) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } # [doc = "If `false`, disables rendering completely, but the engine logic is still being processed. You can call [method force_draw] to draw a frame even with rendering disabled."] # [doc = ""] # [inline] pub fn is_render_loop_enabled (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . is_render_loop_enabled ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "If `true`, this directional light will blend between shadow map splits resulting in a smoother transition between them. Equivalent to [member DirectionalLight.directional_shadow_blend_splits]."] # [doc = ""] # [inline] pub fn light_directional_set_blend_splits (& self , light : Rid , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_directional_set_blend_splits ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , light , enable) ; } } # [doc = "Sets the shadow depth range mode for this directional light. Equivalent to [member DirectionalLight.directional_shadow_depth_range]. See [enum LightDirectionalShadowDepthRangeMode] for options."] # [doc = ""] # [inline] pub fn light_directional_set_shadow_depth_range_mode (& self , light : Rid , range_mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_directional_set_shadow_depth_range_mode ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , light , range_mode) ; } } # [doc = "Sets the shadow mode for this directional light. Equivalent to [member DirectionalLight.directional_shadow_mode]. See [enum LightDirectionalShadowMode] for options."] # [doc = ""] # [inline] pub fn light_directional_set_shadow_mode (& self , light : Rid , mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_directional_set_shadow_mode ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , light , mode) ; } } # [doc = "Sets whether to use vertical or horizontal detail for this omni light. This can be used to alleviate artifacts in the shadow map. Equivalent to [member OmniLight.omni_shadow_detail]."] # [doc = ""] # [inline] pub fn light_omni_set_shadow_detail (& self , light : Rid , detail : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_omni_set_shadow_detail ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , light , detail) ; } } # [doc = "Sets whether to use a dual paraboloid or a cubemap for the shadow map. Dual paraboloid is faster but may suffer from artifacts. Equivalent to [member OmniLight.omni_shadow_mode]."] # [doc = ""] # [inline] pub fn light_omni_set_shadow_mode (& self , light : Rid , mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_omni_set_shadow_mode ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , light , mode) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn light_set_bake_mode (& self , light : Rid , bake_mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_set_bake_mode ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , light , bake_mode) ; } } # [doc = "Sets the color of the light. Equivalent to [member Light.light_color]."] # [doc = ""] # [inline] pub fn light_set_color (& self , light : Rid , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_set_color ; let ret = crate :: icalls :: icallptr_void_rid_color (method_bind , self . this . sys () . as_ptr () , light , color) ; } } # [doc = "Sets the cull mask for this Light. Lights only affect objects in the selected layers. Equivalent to [member Light.light_cull_mask]."] # [doc = ""] # [inline] pub fn light_set_cull_mask (& self , light : Rid , mask : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_set_cull_mask ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , light , mask) ; } } # [doc = "If `true`, light will subtract light instead of adding light. Equivalent to [member Light.light_negative]."] # [doc = ""] # [inline] pub fn light_set_negative (& self , light : Rid , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_set_negative ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , light , enable) ; } } # [doc = "Sets the specified light parameter. See [enum LightParam] for options. Equivalent to [method Light.set_param]."] # [doc = ""] # [inline] pub fn light_set_param (& self , light : Rid , param : i64 , value : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_set_param ; let ret = crate :: icalls :: icallptr_void_rid_i64_f64 (method_bind , self . this . sys () . as_ptr () , light , param , value) ; } } # [doc = "Not implemented in Godot 3.x."] # [doc = ""] # [inline] pub fn light_set_projector (& self , light : Rid , texture : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_set_projector ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , light , texture) ; } } # [doc = "If `true`, reverses the backface culling of the mesh. This can be useful when you have a flat mesh that has a light behind it. If you need to cast a shadow on both sides of the mesh, set the mesh to use double sided shadows with [method instance_geometry_set_cast_shadows_setting]. Equivalent to [member Light.shadow_reverse_cull_face]."] # [doc = ""] # [inline] pub fn light_set_reverse_cull_face_mode (& self , light : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_set_reverse_cull_face_mode ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , light , enabled) ; } } # [doc = "If `true`, light will cast shadows. Equivalent to [member Light.shadow_enabled]."] # [doc = ""] # [inline] pub fn light_set_shadow (& self , light : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_set_shadow ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , light , enabled) ; } } # [doc = "Sets the color of the shadow cast by the light. Equivalent to [member Light.shadow_color]."] # [doc = ""] # [inline] pub fn light_set_shadow_color (& self , light : Rid , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_set_shadow_color ; let ret = crate :: icalls :: icallptr_void_rid_color (method_bind , self . this . sys () . as_ptr () , light , color) ; } } # [doc = "Sets whether GI probes capture light information from this light."] # [doc = ""] # [inline] pub fn light_set_use_gi (& self , light : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . light_set_use_gi ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , light , enabled) ; } } # [doc = "Creates a lightmap capture and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `lightmap_capture_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.\nTo place in a scene, attach this lightmap capture to an instance using [method instance_set_base] using the returned RID."] # [doc = ""] # [inline] pub fn lightmap_capture_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . lightmap_capture_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Returns the size of the lightmap capture area."] # [doc = ""] # [inline] pub fn lightmap_capture_get_bounds (& self , capture : Rid) -> Aabb { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . lightmap_capture_get_bounds ; let ret = crate :: icalls :: icallptr_aabb_rid (method_bind , self . this . sys () . as_ptr () , capture) ; mem :: transmute (ret) } } # [doc = "Returns the energy multiplier used by the lightmap capture."] # [doc = ""] # [inline] pub fn lightmap_capture_get_energy (& self , capture : Rid) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . lightmap_capture_get_energy ; let ret = crate :: icalls :: icallptr_f64_rid (method_bind , self . this . sys () . as_ptr () , capture) ; ret as _ } } # [doc = "Returns the octree used by the lightmap capture."] # [doc = ""] # [inline] pub fn lightmap_capture_get_octree (& self , capture : Rid) -> ByteArray { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . lightmap_capture_get_octree ; let ret = crate :: icalls :: icallptr_bytearr_rid (method_bind , self . this . sys () . as_ptr () , capture) ; ByteArray :: from_sys (ret) } } # [doc = "Returns the cell subdivision amount used by this lightmap capture's octree."] # [doc = ""] # [inline] pub fn lightmap_capture_get_octree_cell_subdiv (& self , capture : Rid) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . lightmap_capture_get_octree_cell_subdiv ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , capture) ; ret as _ } } # [doc = "Returns the cell transform for this lightmap capture's octree."] # [doc = ""] # [inline] pub fn lightmap_capture_get_octree_cell_transform (& self , capture : Rid) -> Transform { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . lightmap_capture_get_octree_cell_transform ; let ret = crate :: icalls :: icallptr_trans_rid (method_bind , self . this . sys () . as_ptr () , capture) ; mem :: transmute (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn lightmap_capture_is_interior (& self , capture : Rid) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . lightmap_capture_is_interior ; let ret = crate :: icalls :: icallptr_bool_rid (method_bind , self . this . sys () . as_ptr () , capture) ; ret as _ } } # [doc = "Sets the size of the area covered by the lightmap capture. Equivalent to [member BakedLightmapData.bounds]."] # [doc = ""] # [inline] pub fn lightmap_capture_set_bounds (& self , capture : Rid , bounds : Aabb) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . lightmap_capture_set_bounds ; let ret = crate :: icalls :: icallptr_void_rid_aabb (method_bind , self . this . sys () . as_ptr () , capture , bounds) ; } } # [doc = "Sets the energy multiplier for this lightmap capture. Equivalent to [member BakedLightmapData.energy]."] # [doc = ""] # [inline] pub fn lightmap_capture_set_energy (& self , capture : Rid , energy : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . lightmap_capture_set_energy ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , capture , energy) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn lightmap_capture_set_interior (& self , capture : Rid , interior : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . lightmap_capture_set_interior ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , capture , interior) ; } } # [doc = "Sets the octree to be used by this lightmap capture. This function is normally used by the [BakedLightmap] node. Equivalent to [member BakedLightmapData.octree]."] # [doc = ""] # [inline] pub fn lightmap_capture_set_octree (& self , capture : Rid , octree : ByteArray) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . lightmap_capture_set_octree ; let ret = crate :: icalls :: icallptr_void_rid_bytearr (method_bind , self . this . sys () . as_ptr () , capture , octree) ; } } # [doc = "Sets the subdivision level of this lightmap capture's octree. Equivalent to [member BakedLightmapData.cell_subdiv]."] # [doc = ""] # [inline] pub fn lightmap_capture_set_octree_cell_subdiv (& self , capture : Rid , subdiv : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . lightmap_capture_set_octree_cell_subdiv ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , capture , subdiv) ; } } # [doc = "Sets the octree cell transform for this lightmap capture's octree. Equivalent to [member BakedLightmapData.cell_space_transform]."] # [doc = ""] # [inline] pub fn lightmap_capture_set_octree_cell_transform (& self , capture : Rid , xform : Transform) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . lightmap_capture_set_octree_cell_transform ; let ret = crate :: icalls :: icallptr_void_rid_trans (method_bind , self . this . sys () . as_ptr () , capture , xform) ; } } # [doc = "Returns a mesh of a sphere with the given amount of horizontal and vertical subdivisions."] # [doc = ""] # [inline] pub fn make_sphere_mesh (& self , latitudes : i64 , longitudes : i64 , radius : f64) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . make_sphere_mesh ; let ret = crate :: icalls :: icallptr_rid_i64_i64_f64 (method_bind , self . this . sys () . as_ptr () , latitudes , longitudes , radius) ; Rid :: from_sys (ret) } } # [doc = "Creates an empty material and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `material_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method."] # [doc = ""] # [inline] pub fn material_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . material_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Returns the value of a certain material's parameter."] # [doc = ""] # [inline] pub fn material_get_param (& self , material : Rid , parameter : impl Into < GodotString >) -> Variant { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . material_get_param ; let ret = crate :: icalls :: icallptr_var_rid_str (method_bind , self . this . sys () . as_ptr () , material , parameter . into ()) ; Variant :: from_sys (ret) } } # [doc = "Returns the default value for the param if available. Otherwise returns an empty [Variant]."] # [doc = ""] # [inline] pub fn material_get_param_default (& self , material : Rid , parameter : impl Into < GodotString >) -> Variant { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . material_get_param_default ; let ret = crate :: icalls :: icallptr_var_rid_str (method_bind , self . this . sys () . as_ptr () , material , parameter . into ()) ; Variant :: from_sys (ret) } } # [doc = "Returns the shader of a certain material's shader. Returns an empty RID if the material doesn't have a shader."] # [doc = ""] # [inline] pub fn material_get_shader (& self , shader_material : Rid) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . material_get_shader ; let ret = crate :: icalls :: icallptr_rid_rid (method_bind , self . this . sys () . as_ptr () , shader_material) ; Rid :: from_sys (ret) } } # [doc = "Sets a material's line width."] # [doc = ""] # [inline] pub fn material_set_line_width (& self , material : Rid , width : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . material_set_line_width ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , material , width) ; } } # [doc = "Sets an object's next material."] # [doc = ""] # [inline] pub fn material_set_next_pass (& self , material : Rid , next_material : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . material_set_next_pass ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , material , next_material) ; } } # [doc = "Sets a material's parameter."] # [doc = ""] # [inline] pub fn material_set_param (& self , material : Rid , parameter : impl Into < GodotString > , value : impl OwnedToVariant) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . material_set_param ; let ret = crate :: icalls :: icallptr_void_rid_str_var (method_bind , self . this . sys () . as_ptr () , material , parameter . into () , value . owned_to_variant ()) ; } } # [doc = "Sets a material's render priority."] # [doc = ""] # [inline] pub fn material_set_render_priority (& self , material : Rid , priority : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . material_set_render_priority ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , material , priority) ; } } # [doc = "Sets a shader material's shader."] # [doc = ""] # [inline] pub fn material_set_shader (& self , shader_material : Rid , shader : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . material_set_shader ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , shader_material , shader) ; } } # [doc = "Adds a surface generated from the Arrays to a mesh. See [enum PrimitiveType] constants for types.\n# Default Arguments\n* `blend_shapes` - `[ ]`\n* `compress_format` - `97280`"] # [doc = ""] # [inline] pub fn mesh_add_surface_from_arrays (& self , mesh : Rid , primitive : i64 , arrays : VariantArray , blend_shapes : VariantArray , compress_format : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_add_surface_from_arrays ; let ret = crate :: icalls :: icallptr_void_rid_i64_arr_arr_i64 (method_bind , self . this . sys () . as_ptr () , mesh , primitive , arrays , blend_shapes , compress_format) ; } } # [doc = "Removes all surfaces from a mesh."] # [doc = ""] # [inline] pub fn mesh_clear (& self , mesh : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_clear ; let ret = crate :: icalls :: icallptr_void_rid (method_bind , self . this . sys () . as_ptr () , mesh) ; } } # [doc = "Creates a new mesh and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `mesh_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.\nTo place in a scene, attach this mesh to an instance using [method instance_set_base] using the returned RID."] # [doc = ""] # [inline] pub fn mesh_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Returns a mesh's blend shape count."] # [doc = ""] # [inline] pub fn mesh_get_blend_shape_count (& self , mesh : Rid) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_get_blend_shape_count ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , mesh) ; ret as _ } } # [doc = "Returns a mesh's blend shape mode."] # [doc = ""] # [inline] pub fn mesh_get_blend_shape_mode (& self , mesh : Rid) -> crate :: generated :: visual_server :: BlendShapeMode { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_get_blend_shape_mode ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , mesh) ; crate :: generated :: visual_server :: BlendShapeMode (ret) } } # [doc = "Returns a mesh's custom aabb."] # [doc = ""] # [inline] pub fn mesh_get_custom_aabb (& self , mesh : Rid) -> Aabb { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_get_custom_aabb ; let ret = crate :: icalls :: icallptr_aabb_rid (method_bind , self . this . sys () . as_ptr () , mesh) ; mem :: transmute (ret) } } # [doc = "Returns a mesh's number of surfaces."] # [doc = ""] # [inline] pub fn mesh_get_surface_count (& self , mesh : Rid) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_get_surface_count ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , mesh) ; ret as _ } } # [doc = "Removes a mesh's surface."] # [doc = ""] # [inline] pub fn mesh_remove_surface (& self , mesh : Rid , index : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_remove_surface ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , mesh , index) ; } } # [doc = "Sets a mesh's blend shape count."] # [doc = ""] # [inline] pub fn mesh_set_blend_shape_count (& self , mesh : Rid , amount : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_set_blend_shape_count ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , mesh , amount) ; } } # [doc = "Sets a mesh's blend shape mode."] # [doc = ""] # [inline] pub fn mesh_set_blend_shape_mode (& self , mesh : Rid , mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_set_blend_shape_mode ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , mesh , mode) ; } } # [doc = "Sets a mesh's custom aabb."] # [doc = ""] # [inline] pub fn mesh_set_custom_aabb (& self , mesh : Rid , aabb : Aabb) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_set_custom_aabb ; let ret = crate :: icalls :: icallptr_void_rid_aabb (method_bind , self . this . sys () . as_ptr () , mesh , aabb) ; } } # [doc = "Returns a mesh's surface's aabb."] # [doc = ""] # [inline] pub fn mesh_surface_get_aabb (& self , mesh : Rid , surface : i64) -> Aabb { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_get_aabb ; let ret = crate :: icalls :: icallptr_aabb_rid_i64 (method_bind , self . this . sys () . as_ptr () , mesh , surface) ; mem :: transmute (ret) } } # [doc = "Returns a mesh's surface's vertex buffer."] # [doc = ""] # [inline] pub fn mesh_surface_get_array (& self , mesh : Rid , surface : i64) -> ByteArray { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_get_array ; let ret = crate :: icalls :: icallptr_bytearr_rid_i64 (method_bind , self . this . sys () . as_ptr () , mesh , surface) ; ByteArray :: from_sys (ret) } } # [doc = "Returns a mesh's surface's amount of indices."] # [doc = ""] # [inline] pub fn mesh_surface_get_array_index_len (& self , mesh : Rid , surface : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_get_array_index_len ; let ret = crate :: icalls :: icallptr_i64_rid_i64 (method_bind , self . this . sys () . as_ptr () , mesh , surface) ; ret as _ } } # [doc = "Returns a mesh's surface's amount of vertices."] # [doc = ""] # [inline] pub fn mesh_surface_get_array_len (& self , mesh : Rid , surface : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_get_array_len ; let ret = crate :: icalls :: icallptr_i64_rid_i64 (method_bind , self . this . sys () . as_ptr () , mesh , surface) ; ret as _ } } # [doc = "Returns a mesh's surface's buffer arrays."] # [doc = ""] # [inline] pub fn mesh_surface_get_arrays (& self , mesh : Rid , surface : i64) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_get_arrays ; let ret = crate :: icalls :: icallvar__rid_i64 (method_bind , self . this . sys () . as_ptr () , mesh , surface) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } # [doc = "Returns a mesh's surface's arrays for blend shapes."] # [doc = ""] # [inline] pub fn mesh_surface_get_blend_shape_arrays (& self , mesh : Rid , surface : i64) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_get_blend_shape_arrays ; let ret = crate :: icalls :: icallvar__rid_i64 (method_bind , self . this . sys () . as_ptr () , mesh , surface) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } # [doc = "Returns the format of a mesh's surface."] # [doc = ""] # [inline] pub fn mesh_surface_get_format (& self , mesh : Rid , surface : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_get_format ; let ret = crate :: icalls :: icallptr_i64_rid_i64 (method_bind , self . this . sys () . as_ptr () , mesh , surface) ; ret as _ } } # [doc = "Function is unused in Godot 3.x."] # [doc = ""] # [inline] pub fn mesh_surface_get_format_offset (& self , format : i64 , vertex_len : i64 , index_len : i64 , array_index : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_get_format_offset ; let ret = crate :: icalls :: icallptr_i64_i64_i64_i64_i64 (method_bind , self . this . sys () . as_ptr () , format , vertex_len , index_len , array_index) ; ret as _ } } # [doc = "Function is unused in Godot 3.x."] # [doc = ""] # [inline] pub fn mesh_surface_get_format_stride (& self , format : i64 , vertex_len : i64 , index_len : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_get_format_stride ; let ret = crate :: icalls :: icallptr_i64_i64_i64_i64 (method_bind , self . this . sys () . as_ptr () , format , vertex_len , index_len) ; ret as _ } } # [doc = "Returns a mesh's surface's index buffer."] # [doc = ""] # [inline] pub fn mesh_surface_get_index_array (& self , mesh : Rid , surface : i64) -> ByteArray { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_get_index_array ; let ret = crate :: icalls :: icallptr_bytearr_rid_i64 (method_bind , self . this . sys () . as_ptr () , mesh , surface) ; ByteArray :: from_sys (ret) } } # [doc = "Returns a mesh's surface's material."] # [doc = ""] # [inline] pub fn mesh_surface_get_material (& self , mesh : Rid , surface : i64) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_get_material ; let ret = crate :: icalls :: icallptr_rid_rid_i64 (method_bind , self . this . sys () . as_ptr () , mesh , surface) ; Rid :: from_sys (ret) } } # [doc = "Returns the primitive type of a mesh's surface."] # [doc = ""] # [inline] pub fn mesh_surface_get_primitive_type (& self , mesh : Rid , surface : i64) -> crate :: generated :: visual_server :: PrimitiveType { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_get_primitive_type ; let ret = crate :: icalls :: icallptr_i64_rid_i64 (method_bind , self . this . sys () . as_ptr () , mesh , surface) ; crate :: generated :: visual_server :: PrimitiveType (ret) } } # [doc = "Returns the aabb of a mesh's surface's skeleton."] # [doc = ""] # [inline] pub fn mesh_surface_get_skeleton_aabb (& self , mesh : Rid , surface : i64) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_get_skeleton_aabb ; let ret = crate :: icalls :: icallvar__rid_i64 (method_bind , self . this . sys () . as_ptr () , mesh , surface) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } # [doc = "Sets a mesh's surface's material."] # [doc = ""] # [inline] pub fn mesh_surface_set_material (& self , mesh : Rid , surface : i64 , material : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_set_material ; let ret = crate :: icalls :: icallptr_void_rid_i64_rid (method_bind , self . this . sys () . as_ptr () , mesh , surface , material) ; } } # [doc = "Updates a specific region of a vertex buffer for the specified surface. Warning: this function alters the vertex buffer directly with no safety mechanisms, you can easily corrupt your mesh."] # [doc = ""] # [inline] pub fn mesh_surface_update_region (& self , mesh : Rid , surface : i64 , offset : i64 , data : ByteArray) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . mesh_surface_update_region ; let ret = crate :: icalls :: icallptr_void_rid_i64_i64_bytearr (method_bind , self . this . sys () . as_ptr () , mesh , surface , offset , data) ; } } # [doc = "Allocates space for the multimesh data. Format parameters determine how the data will be stored by OpenGL. See [enum MultimeshTransformFormat], [enum MultimeshColorFormat], and [enum MultimeshCustomDataFormat] for usage. Equivalent to [member MultiMesh.instance_count].\n# Default Arguments\n* `custom_data_format` - `0`"] # [doc = ""] # [inline] pub fn multimesh_allocate (& self , multimesh : Rid , instances : i64 , transform_format : i64 , color_format : i64 , custom_data_format : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_allocate ; let ret = crate :: icalls :: icallptr_void_rid_i64_i64_i64_i64 (method_bind , self . this . sys () . as_ptr () , multimesh , instances , transform_format , color_format , custom_data_format) ; } } # [doc = "Creates a new multimesh on the VisualServer and returns an [RID] handle. This RID will be used in all `multimesh_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.\nTo place in a scene, attach this multimesh to an instance using [method instance_set_base] using the returned RID."] # [doc = ""] # [inline] pub fn multimesh_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Calculates and returns the axis-aligned bounding box that encloses all instances within the multimesh."] # [doc = ""] # [inline] pub fn multimesh_get_aabb (& self , multimesh : Rid) -> Aabb { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_get_aabb ; let ret = crate :: icalls :: icallptr_aabb_rid (method_bind , self . this . sys () . as_ptr () , multimesh) ; mem :: transmute (ret) } } # [doc = "Returns the number of instances allocated for this multimesh."] # [doc = ""] # [inline] pub fn multimesh_get_instance_count (& self , multimesh : Rid) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_get_instance_count ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , multimesh) ; ret as _ } } # [doc = "Returns the RID of the mesh that will be used in drawing this multimesh."] # [doc = ""] # [inline] pub fn multimesh_get_mesh (& self , multimesh : Rid) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_get_mesh ; let ret = crate :: icalls :: icallptr_rid_rid (method_bind , self . this . sys () . as_ptr () , multimesh) ; Rid :: from_sys (ret) } } # [doc = "Returns the number of visible instances for this multimesh."] # [doc = ""] # [inline] pub fn multimesh_get_visible_instances (& self , multimesh : Rid) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_get_visible_instances ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , multimesh) ; ret as _ } } # [doc = "Returns the color by which the specified instance will be modulated."] # [doc = ""] # [inline] pub fn multimesh_instance_get_color (& self , multimesh : Rid , index : i64) -> Color { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_instance_get_color ; let ret = crate :: icalls :: icallptr_color_rid_i64 (method_bind , self . this . sys () . as_ptr () , multimesh , index) ; mem :: transmute (ret) } } # [doc = "Returns the custom data associated with the specified instance."] # [doc = ""] # [inline] pub fn multimesh_instance_get_custom_data (& self , multimesh : Rid , index : i64) -> Color { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_instance_get_custom_data ; let ret = crate :: icalls :: icallptr_color_rid_i64 (method_bind , self . this . sys () . as_ptr () , multimesh , index) ; mem :: transmute (ret) } } # [doc = "Returns the [Transform] of the specified instance."] # [doc = ""] # [inline] pub fn multimesh_instance_get_transform (& self , multimesh : Rid , index : i64) -> Transform { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_instance_get_transform ; let ret = crate :: icalls :: icallptr_trans_rid_i64 (method_bind , self . this . sys () . as_ptr () , multimesh , index) ; mem :: transmute (ret) } } # [doc = "Returns the [Transform2D] of the specified instance. For use when the multimesh is set to use 2D transforms."] # [doc = ""] # [inline] pub fn multimesh_instance_get_transform_2d (& self , multimesh : Rid , index : i64) -> Transform2D { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_instance_get_transform_2d ; let ret = crate :: icalls :: icallptr_trans2D_rid_i64 (method_bind , self . this . sys () . as_ptr () , multimesh , index) ; mem :: transmute (ret) } } # [doc = "Sets the color by which this instance will be modulated. Equivalent to [method MultiMesh.set_instance_color]."] # [doc = ""] # [inline] pub fn multimesh_instance_set_color (& self , multimesh : Rid , index : i64 , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_instance_set_color ; let ret = crate :: icalls :: icallptr_void_rid_i64_color (method_bind , self . this . sys () . as_ptr () , multimesh , index , color) ; } } # [doc = "Sets the custom data for this instance. Custom data is passed as a [Color], but is interpreted as a `vec4` in the shader. Equivalent to [method MultiMesh.set_instance_custom_data]."] # [doc = ""] # [inline] pub fn multimesh_instance_set_custom_data (& self , multimesh : Rid , index : i64 , custom_data : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_instance_set_custom_data ; let ret = crate :: icalls :: icallptr_void_rid_i64_color (method_bind , self . this . sys () . as_ptr () , multimesh , index , custom_data) ; } } # [doc = "Sets the [Transform] for this instance. Equivalent to [method MultiMesh.set_instance_transform]."] # [doc = ""] # [inline] pub fn multimesh_instance_set_transform (& self , multimesh : Rid , index : i64 , transform : Transform) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_instance_set_transform ; let ret = crate :: icalls :: icallptr_void_rid_i64_trans (method_bind , self . this . sys () . as_ptr () , multimesh , index , transform) ; } } # [doc = "Sets the [Transform2D] for this instance. For use when multimesh is used in 2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."] # [doc = ""] # [inline] pub fn multimesh_instance_set_transform_2d (& self , multimesh : Rid , index : i64 , transform : Transform2D) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_instance_set_transform_2d ; let ret = crate :: icalls :: icallptr_void_rid_i64_trans2D (method_bind , self . this . sys () . as_ptr () , multimesh , index , transform) ; } } # [doc = "Sets all data related to the instances in one go. This is especially useful when loading the data from disk or preparing the data from GDNative.\n\nAll data is packed in one large float array. An array may look like this: Transform for instance 1, color data for instance 1, custom data for instance 1, transform for instance 2, color data for instance 2, etc.\n\n[Transform] is stored as 12 floats, [Transform2D] is stored as 8 floats, `COLOR_8BIT` / `CUSTOM_DATA_8BIT` is stored as 1 float (4 bytes as is) and `COLOR_FLOAT` / `CUSTOM_DATA_FLOAT` is stored as 4 floats."] # [doc = ""] # [inline] pub fn multimesh_set_as_bulk_array (& self , multimesh : Rid , array : Float32Array) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_set_as_bulk_array ; let ret = crate :: icalls :: icallptr_void_rid_f32arr (method_bind , self . this . sys () . as_ptr () , multimesh , array) ; } } # [doc = "Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh.mesh]."] # [doc = ""] # [inline] pub fn multimesh_set_mesh (& self , multimesh : Rid , mesh : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_set_mesh ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , multimesh , mesh) ; } } # [doc = "Sets the number of instances visible at a given time. If -1, all instances that have been allocated are drawn. Equivalent to [member MultiMesh.visible_instance_count]."] # [doc = ""] # [inline] pub fn multimesh_set_visible_instances (& self , multimesh : Rid , visible : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . multimesh_set_visible_instances ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , multimesh , visible) ; } } # [doc = "Creates a new omni light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID can be used in most `light_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.\nTo place in a scene, attach this omni light to an instance using [method instance_set_base] using the returned RID."] # [doc = ""] # [inline] pub fn omni_light_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . omni_light_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Creates a particle system and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `particles_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.\nTo place in a scene, attach these particles to an instance using [method instance_set_base] using the returned RID."] # [doc = ""] # [inline] pub fn particles_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Calculates and returns the axis-aligned bounding box that contains all the particles. Equivalent to [method Particles.capture_aabb]."] # [doc = ""] # [inline] pub fn particles_get_current_aabb (& self , particles : Rid) -> Aabb { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_get_current_aabb ; let ret = crate :: icalls :: icallptr_aabb_rid (method_bind , self . this . sys () . as_ptr () , particles) ; mem :: transmute (ret) } } # [doc = "Returns `true` if particles are currently set to emitting."] # [doc = ""] # [inline] pub fn particles_get_emitting (& self , particles : Rid) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_get_emitting ; let ret = crate :: icalls :: icallptr_bool_rid (method_bind , self . this . sys () . as_ptr () , particles) ; ret as _ } } # [doc = "Returns `true` if particles are not emitting and particles are set to inactive."] # [doc = ""] # [inline] pub fn particles_is_inactive (& self , particles : Rid) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_is_inactive ; let ret = crate :: icalls :: icallptr_bool_rid (method_bind , self . this . sys () . as_ptr () , particles) ; ret as _ } } # [doc = "Add particle system to list of particle systems that need to be updated. Update will take place on the next frame, or on the next call to [method instances_cull_aabb], [method instances_cull_convex], or [method instances_cull_ray]."] # [doc = ""] # [inline] pub fn particles_request_process (& self , particles : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_request_process ; let ret = crate :: icalls :: icallptr_void_rid (method_bind , self . this . sys () . as_ptr () , particles) ; } } # [doc = "Reset the particles on the next update. Equivalent to [method Particles.restart]."] # [doc = ""] # [inline] pub fn particles_restart (& self , particles : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_restart ; let ret = crate :: icalls :: icallptr_void_rid (method_bind , self . this . sys () . as_ptr () , particles) ; } } # [doc = "Sets the number of particles to be drawn and allocates the memory for them. Equivalent to [member Particles.amount]."] # [doc = ""] # [inline] pub fn particles_set_amount (& self , particles : Rid , amount : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_amount ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , particles , amount) ; } } # [doc = "Sets a custom axis-aligned bounding box for the particle system. Equivalent to [member Particles.visibility_aabb]."] # [doc = ""] # [inline] pub fn particles_set_custom_aabb (& self , particles : Rid , aabb : Aabb) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_custom_aabb ; let ret = crate :: icalls :: icallptr_void_rid_aabb (method_bind , self . this . sys () . as_ptr () , particles , aabb) ; } } # [doc = "Sets the draw order of the particles to one of the named enums from [enum ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent to [member Particles.draw_order]."] # [doc = ""] # [inline] pub fn particles_set_draw_order (& self , particles : Rid , order : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_draw_order ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , particles , order) ; } } # [doc = "Sets the mesh to be used for the specified draw pass. Equivalent to [member Particles.draw_pass_1], [member Particles.draw_pass_2], [member Particles.draw_pass_3], and [member Particles.draw_pass_4]."] # [doc = ""] # [inline] pub fn particles_set_draw_pass_mesh (& self , particles : Rid , pass : i64 , mesh : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_draw_pass_mesh ; let ret = crate :: icalls :: icallptr_void_rid_i64_rid (method_bind , self . this . sys () . as_ptr () , particles , pass , mesh) ; } } # [doc = "Sets the number of draw passes to use. Equivalent to [member Particles.draw_passes]."] # [doc = ""] # [inline] pub fn particles_set_draw_passes (& self , particles : Rid , count : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_draw_passes ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , particles , count) ; } } # [doc = "Sets the [Transform] that will be used by the particles when they first emit."] # [doc = ""] # [inline] pub fn particles_set_emission_transform (& self , particles : Rid , transform : Transform) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_emission_transform ; let ret = crate :: icalls :: icallptr_void_rid_trans (method_bind , self . this . sys () . as_ptr () , particles , transform) ; } } # [doc = "If `true`, particles will emit over time. Setting to false does not reset the particles, but only stops their emission. Equivalent to [member Particles.emitting]."] # [doc = ""] # [inline] pub fn particles_set_emitting (& self , particles : Rid , emitting : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_emitting ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , particles , emitting) ; } } # [doc = "Sets the explosiveness ratio. Equivalent to [member Particles.explosiveness]."] # [doc = ""] # [inline] pub fn particles_set_explosiveness_ratio (& self , particles : Rid , ratio : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_explosiveness_ratio ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , particles , ratio) ; } } # [doc = "Sets the frame rate that the particle system rendering will be fixed to. Equivalent to [member Particles.fixed_fps]."] # [doc = ""] # [inline] pub fn particles_set_fixed_fps (& self , particles : Rid , fps : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_fixed_fps ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , particles , fps) ; } } # [doc = "If `true`, uses fractional delta which smooths the movement of the particles. Equivalent to [member Particles.fract_delta]."] # [doc = ""] # [inline] pub fn particles_set_fractional_delta (& self , particles : Rid , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_fractional_delta ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , particles , enable) ; } } # [doc = "Sets the lifetime of each particle in the system. Equivalent to [member Particles.lifetime]."] # [doc = ""] # [inline] pub fn particles_set_lifetime (& self , particles : Rid , lifetime : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_lifetime ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , particles , lifetime) ; } } # [doc = "If `true`, particles will emit once and then stop. Equivalent to [member Particles.one_shot]."] # [doc = ""] # [inline] pub fn particles_set_one_shot (& self , particles : Rid , one_shot : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_one_shot ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , particles , one_shot) ; } } # [doc = "Sets the preprocess time for the particles animation. This lets you delay starting an animation until after the particles have begun emitting. Equivalent to [member Particles.preprocess]."] # [doc = ""] # [inline] pub fn particles_set_pre_process_time (& self , particles : Rid , time : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_pre_process_time ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , particles , time) ; } } # [doc = "Sets the material for processing the particles. Note: this is not the material used to draw the materials. Equivalent to [member Particles.process_material]."] # [doc = ""] # [inline] pub fn particles_set_process_material (& self , particles : Rid , material : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_process_material ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , particles , material) ; } } # [doc = "Sets the emission randomness ratio. This randomizes the emission of particles within their phase. Equivalent to [member Particles.randomness]."] # [doc = ""] # [inline] pub fn particles_set_randomness_ratio (& self , particles : Rid , ratio : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_randomness_ratio ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , particles , ratio) ; } } # [doc = "Sets the speed scale of the particle system. Equivalent to [member Particles.speed_scale]."] # [doc = ""] # [inline] pub fn particles_set_speed_scale (& self , particles : Rid , scale : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_speed_scale ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , particles , scale) ; } } # [doc = "If `true`, particles use local coordinates. If `false` they use global coordinates. Equivalent to [member Particles.local_coords]."] # [doc = ""] # [inline] pub fn particles_set_use_local_coordinates (& self , particles : Rid , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . particles_set_use_local_coordinates ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , particles , enable) ; } } # [doc = "Creates a reflection probe and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `reflection_probe_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.\nTo place in a scene, attach this reflection probe to an instance using [method instance_set_base] using the returned RID."] # [doc = ""] # [inline] pub fn reflection_probe_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . reflection_probe_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "If `true`, reflections will ignore sky contribution. Equivalent to [member ReflectionProbe.interior_enable]."] # [doc = ""] # [inline] pub fn reflection_probe_set_as_interior (& self , probe : Rid , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . reflection_probe_set_as_interior ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , probe , enable) ; } } # [doc = "Sets the render cull mask for this reflection probe. Only instances with a matching cull mask will be rendered by this probe. Equivalent to [member ReflectionProbe.cull_mask]."] # [doc = ""] # [inline] pub fn reflection_probe_set_cull_mask (& self , probe : Rid , layers : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . reflection_probe_set_cull_mask ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , probe , layers) ; } } # [doc = "If `true`, uses box projection. This can make reflections look more correct in certain situations. Equivalent to [member ReflectionProbe.box_projection]."] # [doc = ""] # [inline] pub fn reflection_probe_set_enable_box_projection (& self , probe : Rid , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . reflection_probe_set_enable_box_projection ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , probe , enable) ; } } # [doc = "If `true`, computes shadows in the reflection probe. This makes the reflection much slower to compute. Equivalent to [member ReflectionProbe.enable_shadows]."] # [doc = ""] # [inline] pub fn reflection_probe_set_enable_shadows (& self , probe : Rid , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . reflection_probe_set_enable_shadows ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , probe , enable) ; } } # [doc = "Sets the size of the area that the reflection probe will capture. Equivalent to [member ReflectionProbe.extents]."] # [doc = ""] # [inline] pub fn reflection_probe_set_extents (& self , probe : Rid , extents : Vector3) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . reflection_probe_set_extents ; let ret = crate :: icalls :: icallptr_void_rid_vec3 (method_bind , self . this . sys () . as_ptr () , probe , extents) ; } } # [doc = "Sets the intensity of the reflection probe. Intensity modulates the strength of the reflection. Equivalent to [member ReflectionProbe.intensity]."] # [doc = ""] # [inline] pub fn reflection_probe_set_intensity (& self , probe : Rid , intensity : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . reflection_probe_set_intensity ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , probe , intensity) ; } } # [doc = "Sets the ambient light color for this reflection probe when set to interior mode. Equivalent to [member ReflectionProbe.interior_ambient_color]."] # [doc = ""] # [inline] pub fn reflection_probe_set_interior_ambient (& self , probe : Rid , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . reflection_probe_set_interior_ambient ; let ret = crate :: icalls :: icallptr_void_rid_color (method_bind , self . this . sys () . as_ptr () , probe , color) ; } } # [doc = "Sets the energy multiplier for this reflection probes ambient light contribution when set to interior mode. Equivalent to [member ReflectionProbe.interior_ambient_energy]."] # [doc = ""] # [inline] pub fn reflection_probe_set_interior_ambient_energy (& self , probe : Rid , energy : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . reflection_probe_set_interior_ambient_energy ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , probe , energy) ; } } # [doc = "Sets the contribution value for how much the reflection affects the ambient light for this reflection probe when set to interior mode. Useful so that ambient light matches the color of the room. Equivalent to [member ReflectionProbe.interior_ambient_contrib]."] # [doc = ""] # [inline] pub fn reflection_probe_set_interior_ambient_probe_contribution (& self , probe : Rid , contrib : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . reflection_probe_set_interior_ambient_probe_contribution ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , probe , contrib) ; } } # [doc = "Sets the max distance away from the probe an object can be before it is culled. Equivalent to [member ReflectionProbe.max_distance]."] # [doc = ""] # [inline] pub fn reflection_probe_set_max_distance (& self , probe : Rid , distance : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . reflection_probe_set_max_distance ; let ret = crate :: icalls :: icallptr_void_rid_f64 (method_bind , self . this . sys () . as_ptr () , probe , distance) ; } } # [doc = "Sets the origin offset to be used when this reflection probe is in box project mode. Equivalent to [member ReflectionProbe.origin_offset]."] # [doc = ""] # [inline] pub fn reflection_probe_set_origin_offset (& self , probe : Rid , offset : Vector3) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . reflection_probe_set_origin_offset ; let ret = crate :: icalls :: icallptr_void_rid_vec3 (method_bind , self . this . sys () . as_ptr () , probe , offset) ; } } # [doc = "Sets how often the reflection probe updates. Can either be once or every frame. See [enum ReflectionProbeUpdateMode] for options."] # [doc = ""] # [inline] pub fn reflection_probe_set_update_mode (& self , probe : Rid , mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . reflection_probe_set_update_mode ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , probe , mode) ; } } # [doc = "Schedules a callback to the corresponding named `method` on `where` after a frame has been drawn.\nThe callback method must use only 1 argument which will be called with `userdata`."] # [doc = ""] # [inline] pub fn request_frame_drawn_callback (& self , _where : impl AsArg < crate :: generated :: object :: Object > , method : impl Into < GodotString > , userdata : impl OwnedToVariant) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . request_frame_drawn_callback ; let ret = crate :: icalls :: icallptr_void_obj_str_var (method_bind , self . this . sys () . as_ptr () , _where . as_arg_ptr () , method . into () , userdata . owned_to_variant ()) ; } } # [doc = "Creates a scenario and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `scenario_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.\nThe scenario is the 3D world that all the visual instances exist in."] # [doc = ""] # [inline] pub fn scenario_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . scenario_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Sets the [enum ScenarioDebugMode] for this scenario. See [enum ScenarioDebugMode] for options."] # [doc = ""] # [inline] pub fn scenario_set_debug (& self , scenario : Rid , debug_mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . scenario_set_debug ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , scenario , debug_mode) ; } } # [doc = "Sets the environment that will be used with this scenario."] # [doc = ""] # [inline] pub fn scenario_set_environment (& self , scenario : Rid , environment : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . scenario_set_environment ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , scenario , environment) ; } } # [doc = "Sets the fallback environment to be used by this scenario. The fallback environment is used if no environment is set. Internally, this is used by the editor to provide a default environment."] # [doc = ""] # [inline] pub fn scenario_set_fallback_environment (& self , scenario : Rid , environment : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . scenario_set_fallback_environment ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , scenario , environment) ; } } # [doc = "Sets the size of the reflection atlas shared by all reflection probes in this scenario."] # [doc = ""] # [inline] pub fn scenario_set_reflection_atlas_size (& self , scenario : Rid , size : i64 , subdiv : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . scenario_set_reflection_atlas_size ; let ret = crate :: icalls :: icallptr_void_rid_i64_i64 (method_bind , self . this . sys () . as_ptr () , scenario , size , subdiv) ; } } # [doc = "Sets a boot image. The color defines the background color. If `scale` is `true`, the image will be scaled to fit the screen size. If `use_filter` is `true`, the image will be scaled with linear interpolation. If `use_filter` is `false`, the image will be scaled with nearest-neighbor interpolation.\n# Default Arguments\n* `use_filter` - `true`"] # [doc = ""] # [inline] pub fn set_boot_image (& self , image : impl AsArg < crate :: generated :: image :: Image > , color : Color , scale : bool , use_filter : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . set_boot_image ; let ret = crate :: icalls :: icallptr_void_obj_color_bool_bool (method_bind , self . this . sys () . as_ptr () , image . as_arg_ptr () , color , scale , use_filter) ; } } # [doc = "If `true`, the engine will generate wireframes for use with the wireframe debug mode."] # [doc = ""] # [inline] pub fn set_debug_generate_wireframes (& self , generate : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . set_debug_generate_wireframes ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , generate) ; } } # [doc = "Sets the default clear color which is used when a specific clear color has not been selected."] # [doc = ""] # [inline] pub fn set_default_clear_color (& self , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . set_default_clear_color ; let ret = crate :: icalls :: icallptr_void_color (method_bind , self . this . sys () . as_ptr () , color) ; } } # [doc = "If `false`, disables rendering completely, but the engine logic is still being processed. You can call [method force_draw] to draw a frame even with rendering disabled."] # [doc = ""] # [inline] pub fn set_render_loop_enabled (& self , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . set_render_loop_enabled ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , enabled) ; } } # [doc = "Sets the scale to apply to the passage of time for the shaders' `TIME` builtin.\nThe default value is `1.0`, which means `TIME` will count the real time as it goes by, without narrowing or stretching it."] # [doc = ""] # [inline] pub fn set_shader_time_scale (& self , scale : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . set_shader_time_scale ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , scale) ; } } # [doc = "Creates an empty shader and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `shader_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method."] # [doc = ""] # [inline] pub fn shader_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . shader_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Returns a shader's code."] # [doc = ""] # [inline] pub fn shader_get_code (& self , shader : Rid) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . shader_get_code ; let ret = crate :: icalls :: icallptr_str_rid (method_bind , self . this . sys () . as_ptr () , shader) ; GodotString :: from_sys (ret) } } # [doc = "Returns a default texture from a shader searched by name."] # [doc = ""] # [inline] pub fn shader_get_default_texture_param (& self , shader : Rid , name : impl Into < GodotString >) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . shader_get_default_texture_param ; let ret = crate :: icalls :: icallptr_rid_rid_str (method_bind , self . this . sys () . as_ptr () , shader , name . into ()) ; Rid :: from_sys (ret) } } # [doc = "Returns the parameters of a shader."] # [doc = ""] # [inline] pub fn shader_get_param_list (& self , shader : Rid) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . shader_get_param_list ; let ret = crate :: icalls :: icallvar__rid (method_bind , self . this . sys () . as_ptr () , shader) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } # [doc = "Sets a shader's code."] # [doc = ""] # [inline] pub fn shader_set_code (& self , shader : Rid , code : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . shader_set_code ; let ret = crate :: icalls :: icallptr_void_rid_str (method_bind , self . this . sys () . as_ptr () , shader , code . into ()) ; } } # [doc = "Sets a shader's default texture. Overwrites the texture given by name."] # [doc = ""] # [inline] pub fn shader_set_default_texture_param (& self , shader : Rid , name : impl Into < GodotString > , texture : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . shader_set_default_texture_param ; let ret = crate :: icalls :: icallptr_void_rid_str_rid (method_bind , self . this . sys () . as_ptr () , shader , name . into () , texture) ; } } # [doc = "Allocates the GPU buffers for this skeleton.\n# Default Arguments\n* `is_2d_skeleton` - `false`"] # [doc = ""] # [inline] pub fn skeleton_allocate (& self , skeleton : Rid , bones : i64 , is_2d_skeleton : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . skeleton_allocate ; let ret = crate :: icalls :: icallptr_void_rid_i64_bool (method_bind , self . this . sys () . as_ptr () , skeleton , bones , is_2d_skeleton) ; } } # [doc = "Returns the [Transform] set for a specific bone of this skeleton."] # [doc = ""] # [inline] pub fn skeleton_bone_get_transform (& self , skeleton : Rid , bone : i64) -> Transform { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . skeleton_bone_get_transform ; let ret = crate :: icalls :: icallptr_trans_rid_i64 (method_bind , self . this . sys () . as_ptr () , skeleton , bone) ; mem :: transmute (ret) } } # [doc = "Returns the [Transform2D] set for a specific bone of this skeleton."] # [doc = ""] # [inline] pub fn skeleton_bone_get_transform_2d (& self , skeleton : Rid , bone : i64) -> Transform2D { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . skeleton_bone_get_transform_2d ; let ret = crate :: icalls :: icallptr_trans2D_rid_i64 (method_bind , self . this . sys () . as_ptr () , skeleton , bone) ; mem :: transmute (ret) } } # [doc = "Sets the [Transform] for a specific bone of this skeleton."] # [doc = ""] # [inline] pub fn skeleton_bone_set_transform (& self , skeleton : Rid , bone : i64 , transform : Transform) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . skeleton_bone_set_transform ; let ret = crate :: icalls :: icallptr_void_rid_i64_trans (method_bind , self . this . sys () . as_ptr () , skeleton , bone , transform) ; } } # [doc = "Sets the [Transform2D] for a specific bone of this skeleton."] # [doc = ""] # [inline] pub fn skeleton_bone_set_transform_2d (& self , skeleton : Rid , bone : i64 , transform : Transform2D) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . skeleton_bone_set_transform_2d ; let ret = crate :: icalls :: icallptr_void_rid_i64_trans2D (method_bind , self . this . sys () . as_ptr () , skeleton , bone , transform) ; } } # [doc = "Creates a skeleton and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `skeleton_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method."] # [doc = ""] # [inline] pub fn skeleton_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . skeleton_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Returns the number of bones allocated for this skeleton."] # [doc = ""] # [inline] pub fn skeleton_get_bone_count (& self , skeleton : Rid) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . skeleton_get_bone_count ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , skeleton) ; ret as _ } } # [doc = "Creates an empty sky and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `sky_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method."] # [doc = ""] # [inline] pub fn sky_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . sky_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Sets a sky's texture."] # [doc = ""] # [inline] pub fn sky_set_texture (& self , sky : Rid , cube_map : Rid , radiance_size : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . sky_set_texture ; let ret = crate :: icalls :: icallptr_void_rid_rid_i64 (method_bind , self . this . sys () . as_ptr () , sky , cube_map , radiance_size) ; } } # [doc = "Creates a spot light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID can be used in most `light_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.\nTo place in a scene, attach this spot light to an instance using [method instance_set_base] using the returned RID."] # [doc = ""] # [inline] pub fn spot_light_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . spot_light_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Not implemented in Godot 3.x."] # [doc = ""] # [inline] pub fn sync (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . sync ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = "Allocates the GPU memory for the texture.\n# Default Arguments\n* `flags` - `7`"] # [doc = ""] # [inline] pub fn texture_allocate (& self , texture : Rid , width : i64 , height : i64 , depth_3d : i64 , format : i64 , _type : i64 , flags : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_allocate ; let ret = crate :: icalls :: icallptr_void_rid_i64_i64_i64_i64_i64_i64 (method_bind , self . this . sys () . as_ptr () , texture , width , height , depth_3d , format , _type , flags) ; } } # [doc = "Binds the texture to a texture slot."] # [doc = ""] # [inline] pub fn texture_bind (& self , texture : Rid , number : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_bind ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , texture , number) ; } } # [doc = "Creates an empty texture and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `texture_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method."] # [doc = ""] # [inline] pub fn texture_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Creates a texture, allocates the space for an image, and fills in the image.\n# Default Arguments\n* `flags` - `7`"] # [doc = ""] # [inline] pub fn texture_create_from_image (& self , image : impl AsArg < crate :: generated :: image :: Image > , flags : i64) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_create_from_image ; let ret = crate :: icalls :: icallptr_rid_obj_i64 (method_bind , self . this . sys () . as_ptr () , image . as_arg_ptr () , flags) ; Rid :: from_sys (ret) } } # [doc = "Returns a list of all the textures and their information."] # [doc = ""] # [inline] pub fn texture_debug_usage (& self) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_debug_usage ; let ret = crate :: icalls :: icallvar_ (method_bind , self . this . sys () . as_ptr ()) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } # [doc = "Returns a copy of a texture's image unless it's a CubeMap, in which case it returns the [RID] of the image at one of the cubes sides.\n# Default Arguments\n* `cube_side` - `0`"] # [doc = ""] # [inline] pub fn texture_get_data (& self , texture : Rid , cube_side : i64) -> Option < Ref < crate :: generated :: image :: Image , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_get_data ; let ret = crate :: icalls :: icallptr_obj_rid_i64 (method_bind , self . this . sys () . as_ptr () , texture , cube_side) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: image :: Image , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Returns the depth of the texture."] # [doc = ""] # [inline] pub fn texture_get_depth (& self , texture : Rid) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_get_depth ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , texture) ; ret as _ } } # [doc = "Returns the flags of a texture."] # [doc = ""] # [inline] pub fn texture_get_flags (& self , texture : Rid) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_get_flags ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , texture) ; ret as _ } } # [doc = "Returns the format of the texture's image."] # [doc = ""] # [inline] pub fn texture_get_format (& self , texture : Rid) -> crate :: generated :: image :: Format { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_get_format ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , texture) ; crate :: generated :: image :: Format (ret) } } # [doc = "Returns the texture's height."] # [doc = ""] # [inline] pub fn texture_get_height (& self , texture : Rid) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_get_height ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , texture) ; ret as _ } } # [doc = "Returns the texture's path."] # [doc = ""] # [inline] pub fn texture_get_path (& self , texture : Rid) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_get_path ; let ret = crate :: icalls :: icallptr_str_rid (method_bind , self . this . sys () . as_ptr () , texture) ; GodotString :: from_sys (ret) } } # [doc = "Returns the opengl id of the texture's image."] # [doc = ""] # [inline] pub fn texture_get_texid (& self , texture : Rid) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_get_texid ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , texture) ; ret as _ } } # [doc = "Returns the type of the texture, can be any of the [enum TextureType]."] # [doc = ""] # [inline] pub fn texture_get_type (& self , texture : Rid) -> crate :: generated :: visual_server :: TextureType { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_get_type ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , texture) ; crate :: generated :: visual_server :: TextureType (ret) } } # [doc = "Returns the texture's width."] # [doc = ""] # [inline] pub fn texture_get_width (& self , texture : Rid) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_get_width ; let ret = crate :: icalls :: icallptr_i64_rid (method_bind , self . this . sys () . as_ptr () , texture) ; ret as _ } } # [doc = "Sets the texture's image data. If it's a CubeMap, it sets the image data at a cube side.\n# Default Arguments\n* `layer` - `0`"] # [doc = ""] # [inline] pub fn texture_set_data (& self , texture : Rid , image : impl AsArg < crate :: generated :: image :: Image > , layer : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_set_data ; let ret = crate :: icalls :: icallptr_void_rid_obj_i64 (method_bind , self . this . sys () . as_ptr () , texture , image . as_arg_ptr () , layer) ; } } # [doc = "Sets a part of the data for a texture. Warning: this function calls the underlying graphics API directly and may corrupt your texture if used improperly.\n# Default Arguments\n* `layer` - `0`"] # [doc = ""] # [inline] pub fn texture_set_data_partial (& self , texture : Rid , image : impl AsArg < crate :: generated :: image :: Image > , src_x : i64 , src_y : i64 , src_w : i64 , src_h : i64 , dst_x : i64 , dst_y : i64 , dst_mip : i64 , layer : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_set_data_partial ; let ret = crate :: icalls :: icallptr_void_rid_obj_i64_i64_i64_i64_i64_i64_i64_i64 (method_bind , self . this . sys () . as_ptr () , texture , image . as_arg_ptr () , src_x , src_y , src_w , src_h , dst_x , dst_y , dst_mip , layer) ; } } # [doc = "Sets the texture's flags. See [enum TextureFlags] for options."] # [doc = ""] # [inline] pub fn texture_set_flags (& self , texture : Rid , flags : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_set_flags ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , texture , flags) ; } } # [doc = "Sets the texture's path."] # [doc = ""] # [inline] pub fn texture_set_path (& self , texture : Rid , path : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_set_path ; let ret = crate :: icalls :: icallptr_void_rid_str (method_bind , self . this . sys () . as_ptr () , texture , path . into ()) ; } } # [doc = "If `true`, sets internal processes to shrink all image data to half the size."] # [doc = ""] # [inline] pub fn texture_set_shrink_all_x2_on_set_data (& self , shrink : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_set_shrink_all_x2_on_set_data ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , shrink) ; } } # [doc = "Resizes the texture to the specified dimensions."] # [doc = ""] # [inline] pub fn texture_set_size_override (& self , texture : Rid , width : i64 , height : i64 , depth : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . texture_set_size_override ; let ret = crate :: icalls :: icallptr_void_rid_i64_i64_i64 (method_bind , self . this . sys () . as_ptr () , texture , width , height , depth) ; } } # [doc = "If `true`, the image will be stored in the texture's images array if overwritten."] # [doc = ""] # [inline] pub fn textures_keep_original (& self , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . textures_keep_original ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , enable) ; } } # [doc = "Sets a viewport's camera."] # [doc = ""] # [inline] pub fn viewport_attach_camera (& self , viewport : Rid , camera : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_attach_camera ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , viewport , camera) ; } } # [doc = "Sets a viewport's canvas."] # [doc = ""] # [inline] pub fn viewport_attach_canvas (& self , viewport : Rid , canvas : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_attach_canvas ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , viewport , canvas) ; } } # [doc = "_Sample code is GDScript unless otherwise noted._\n\nCopies viewport to a region of the screen specified by `rect`. If [member Viewport.render_direct_to_screen] is `true`, then viewport does not use a framebuffer and the contents of the viewport are rendered directly to screen. However, note that the root viewport is drawn last, therefore it will draw over the screen. Accordingly, you must set the root viewport to an area that does not cover the area that you have attached this viewport to.\nFor example, you can set the root viewport to not render at all with the following code:\n```gdscript\nfunc _ready():\n get_viewport().set_attach_to_screen_rect(Rect2())\n $Viewport.set_attach_to_screen_rect(Rect2(0, 0, 600, 600))\n```\nUsing this can result in significant optimization, especially on lower-end devices. However, it comes at the cost of having to manage your viewports manually. For a further optimization see, [method viewport_set_render_direct_to_screen].\n# Default Arguments\n* `rect` - `Rect2( 0, 0, 0, 0 )`\n* `screen` - `0`"] # [doc = ""] # [inline] pub fn viewport_attach_to_screen (& self , viewport : Rid , rect : Rect2 , screen : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_attach_to_screen ; let ret = crate :: icalls :: icallptr_void_rid_rect2_i64 (method_bind , self . this . sys () . as_ptr () , viewport , rect , screen) ; } } # [doc = "Creates an empty viewport and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all `viewport_*` VisualServer functions.\nOnce finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method."] # [doc = ""] # [inline] pub fn viewport_create (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_create ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Detaches the viewport from the screen."] # [doc = ""] # [inline] pub fn viewport_detach (& self , viewport : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_detach ; let ret = crate :: icalls :: icallptr_void_rid (method_bind , self . this . sys () . as_ptr () , viewport) ; } } # [doc = "Returns a viewport's render information. For options, see the [enum ViewportRenderInfo] constants."] # [doc = ""] # [inline] pub fn viewport_get_render_info (& self , viewport : Rid , info : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_get_render_info ; let ret = crate :: icalls :: icallptr_i64_rid_i64 (method_bind , self . this . sys () . as_ptr () , viewport , info) ; ret as _ } } # [doc = "Returns the viewport's last rendered frame."] # [doc = ""] # [inline] pub fn viewport_get_texture (& self , viewport : Rid) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_get_texture ; let ret = crate :: icalls :: icallptr_rid_rid (method_bind , self . this . sys () . as_ptr () , viewport) ; Rid :: from_sys (ret) } } # [doc = "Detaches a viewport from a canvas and vice versa."] # [doc = ""] # [inline] pub fn viewport_remove_canvas (& self , viewport : Rid , canvas : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_remove_canvas ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , viewport , canvas) ; } } # [doc = "If `true`, sets the viewport active, else sets it inactive."] # [doc = ""] # [inline] pub fn viewport_set_active (& self , viewport : Rid , active : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_active ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , viewport , active) ; } } # [doc = "Sets the stacking order for a viewport's canvas.\n`layer` is the actual canvas layer, while `sublayer` specifies the stacking order of the canvas among those in the same layer."] # [doc = ""] # [inline] pub fn viewport_set_canvas_stacking (& self , viewport : Rid , canvas : Rid , layer : i64 , sublayer : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_canvas_stacking ; let ret = crate :: icalls :: icallptr_void_rid_rid_i64_i64 (method_bind , self . this . sys () . as_ptr () , viewport , canvas , layer , sublayer) ; } } # [doc = "Sets the transformation of a viewport's canvas."] # [doc = ""] # [inline] pub fn viewport_set_canvas_transform (& self , viewport : Rid , canvas : Rid , offset : Transform2D) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_canvas_transform ; let ret = crate :: icalls :: icallptr_void_rid_rid_trans2D (method_bind , self . this . sys () . as_ptr () , viewport , canvas , offset) ; } } # [doc = "Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."] # [doc = ""] # [inline] pub fn viewport_set_clear_mode (& self , viewport : Rid , clear_mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_clear_mode ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , viewport , clear_mode) ; } } # [doc = "Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for options."] # [doc = ""] # [inline] pub fn viewport_set_debug_draw (& self , viewport : Rid , draw : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_debug_draw ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , viewport , draw) ; } } # [doc = "If `true`, a viewport's 3D rendering is disabled."] # [doc = ""] # [inline] pub fn viewport_set_disable_3d (& self , viewport : Rid , disabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_disable_3d ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , viewport , disabled) ; } } # [doc = "If `true`, rendering of a viewport's environment is disabled."] # [doc = ""] # [inline] pub fn viewport_set_disable_environment (& self , viewport : Rid , disabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_disable_environment ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , viewport , disabled) ; } } # [doc = "Sets the viewport's global transformation matrix."] # [doc = ""] # [inline] pub fn viewport_set_global_canvas_transform (& self , viewport : Rid , transform : Transform2D) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_global_canvas_transform ; let ret = crate :: icalls :: icallptr_void_rid_trans2D (method_bind , self . this . sys () . as_ptr () , viewport , transform) ; } } # [doc = "If `true`, the viewport renders to hdr."] # [doc = ""] # [inline] pub fn viewport_set_hdr (& self , viewport : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_hdr ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , viewport , enabled) ; } } # [doc = "If `true`, the viewport's canvas is not rendered."] # [doc = ""] # [inline] pub fn viewport_set_hide_canvas (& self , viewport : Rid , hidden : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_hide_canvas ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , viewport , hidden) ; } } # [doc = "Currently unimplemented in Godot 3.x."] # [doc = ""] # [inline] pub fn viewport_set_hide_scenario (& self , viewport : Rid , hidden : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_hide_scenario ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , viewport , hidden) ; } } # [doc = "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."] # [doc = ""] # [inline] pub fn viewport_set_msaa (& self , viewport : Rid , msaa : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_msaa ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , viewport , msaa) ; } } # [doc = "Sets the viewport's parent to another viewport."] # [doc = ""] # [inline] pub fn viewport_set_parent_viewport (& self , viewport : Rid , parent_viewport : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_parent_viewport ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , viewport , parent_viewport) ; } } # [doc = "If `true`, render the contents of the viewport directly to screen. This allows a low-level optimization where you can skip drawing a viewport to the root viewport. While this optimization can result in a significant increase in speed (especially on older devices), it comes at a cost of usability. When this is enabled, you cannot read from the viewport or from the `SCREEN_TEXTURE`. You also lose the benefit of certain window settings, such as the various stretch modes. Another consequence to be aware of is that in 2D the rendering happens in window coordinates, so if you have a viewport that is double the size of the window, and you set this, then only the portion that fits within the window will be drawn, no automatic scaling is possible, even if your game scene is significantly larger than the window size."] # [doc = ""] # [inline] pub fn viewport_set_render_direct_to_screen (& self , viewport : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_render_direct_to_screen ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , viewport , enabled) ; } } # [doc = "Sets a viewport's scenario.\nThe scenario contains information about the [enum ScenarioDebugMode], environment information, reflection atlas etc."] # [doc = ""] # [inline] pub fn viewport_set_scenario (& self , viewport : Rid , scenario : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_scenario ; let ret = crate :: icalls :: icallptr_void_rid_rid (method_bind , self . this . sys () . as_ptr () , viewport , scenario) ; } } # [doc = "Sets the shadow atlas quadrant's subdivision."] # [doc = ""] # [inline] pub fn viewport_set_shadow_atlas_quadrant_subdivision (& self , viewport : Rid , quadrant : i64 , subdivision : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_shadow_atlas_quadrant_subdivision ; let ret = crate :: icalls :: icallptr_void_rid_i64_i64 (method_bind , self . this . sys () . as_ptr () , viewport , quadrant , subdivision) ; } } # [doc = "Sets the size of the shadow atlas's images (used for omni and spot lights). The value will be rounded up to the nearest power of 2."] # [doc = ""] # [inline] pub fn viewport_set_shadow_atlas_size (& self , viewport : Rid , size : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_shadow_atlas_size ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , viewport , size) ; } } # [doc = "Sets the viewport's width and height."] # [doc = ""] # [inline] pub fn viewport_set_size (& self , viewport : Rid , width : i64 , height : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_size ; let ret = crate :: icalls :: icallptr_void_rid_i64_i64 (method_bind , self . this . sys () . as_ptr () , viewport , width , height) ; } } # [doc = "If `true`, the viewport renders its background as transparent."] # [doc = ""] # [inline] pub fn viewport_set_transparent_background (& self , viewport : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_transparent_background ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , viewport , enabled) ; } } # [doc = "Sets when the viewport should be updated. See [enum ViewportUpdateMode] constants for options."] # [doc = ""] # [inline] pub fn viewport_set_update_mode (& self , viewport : Rid , update_mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_update_mode ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , viewport , update_mode) ; } } # [doc = "Sets the viewport's 2D/3D mode. See [enum ViewportUsage] constants for options."] # [doc = ""] # [inline] pub fn viewport_set_usage (& self , viewport : Rid , usage : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_usage ; let ret = crate :: icalls :: icallptr_void_rid_i64 (method_bind , self . this . sys () . as_ptr () , viewport , usage) ; } } # [doc = "If `true`, the viewport uses augmented or virtual reality technologies. See [ARVRInterface]."] # [doc = ""] # [inline] pub fn viewport_set_use_arvr (& self , viewport : Rid , use_arvr : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_use_arvr ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , viewport , use_arvr) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn viewport_set_use_debanding (& self , viewport : Rid , debanding : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_use_debanding ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , viewport , debanding) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn viewport_set_use_fxaa (& self , viewport : Rid , fxaa : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_use_fxaa ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , viewport , fxaa) ; } } # [doc = "If `true`, the viewport's rendering is flipped vertically."] # [doc = ""] # [inline] pub fn viewport_set_vflip (& self , viewport : Rid , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualServerMethodTable :: get (get_api ()) . viewport_set_vflip ; let ret = crate :: icalls :: icallptr_void_rid_bool (method_bind , self . this . sys () . as_ptr () , viewport , enabled) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualServer { } unsafe impl GodotObject for VisualServer { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "VisualServer" } } impl std :: ops :: Deref for VisualServer { type Target = crate :: generated :: object :: Object ; # [inline] fn deref (& self) -> & crate :: generated :: object :: Object { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualServer { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: object :: Object { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualServer { } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualServerMethodTable { pub class_constructor : sys :: godot_class_constructor , pub black_bars_set_images : * mut sys :: godot_method_bind , pub black_bars_set_margins : * mut sys :: godot_method_bind , pub camera_create : * mut sys :: godot_method_bind , pub camera_set_cull_mask : * mut sys :: godot_method_bind , pub camera_set_environment : * mut sys :: godot_method_bind , pub camera_set_frustum : * mut sys :: godot_method_bind , pub camera_set_orthogonal : * mut sys :: godot_method_bind , pub camera_set_perspective : * mut sys :: godot_method_bind , pub camera_set_transform : * mut sys :: godot_method_bind , pub camera_set_use_vertical_aspect : * mut sys :: godot_method_bind , pub canvas_create : * mut sys :: godot_method_bind , pub canvas_item_add_circle : * mut sys :: godot_method_bind , pub canvas_item_add_clip_ignore : * mut sys :: godot_method_bind , pub canvas_item_add_line : * mut sys :: godot_method_bind , pub canvas_item_add_mesh : * mut sys :: godot_method_bind , pub canvas_item_add_multimesh : * mut sys :: godot_method_bind , pub canvas_item_add_nine_patch : * mut sys :: godot_method_bind , pub canvas_item_add_particles : * mut sys :: godot_method_bind , pub canvas_item_add_polygon : * mut sys :: godot_method_bind , pub canvas_item_add_polyline : * mut sys :: godot_method_bind , pub canvas_item_add_primitive : * mut sys :: godot_method_bind , pub canvas_item_add_rect : * mut sys :: godot_method_bind , pub canvas_item_add_set_transform : * mut sys :: godot_method_bind , pub canvas_item_add_texture_rect : * mut sys :: godot_method_bind , pub canvas_item_add_texture_rect_region : * mut sys :: godot_method_bind , pub canvas_item_add_triangle_array : * mut sys :: godot_method_bind , pub canvas_item_clear : * mut sys :: godot_method_bind , pub canvas_item_create : * mut sys :: godot_method_bind , pub canvas_item_set_clip : * mut sys :: godot_method_bind , pub canvas_item_set_copy_to_backbuffer : * mut sys :: godot_method_bind , pub canvas_item_set_custom_rect : * mut sys :: godot_method_bind , pub canvas_item_set_distance_field_mode : * mut sys :: godot_method_bind , pub canvas_item_set_draw_behind_parent : * mut sys :: godot_method_bind , pub canvas_item_set_draw_index : * mut sys :: godot_method_bind , pub canvas_item_set_light_mask : * mut sys :: godot_method_bind , pub canvas_item_set_material : * mut sys :: godot_method_bind , pub canvas_item_set_modulate : * mut sys :: godot_method_bind , pub canvas_item_set_parent : * mut sys :: godot_method_bind , pub canvas_item_set_self_modulate : * mut sys :: godot_method_bind , pub canvas_item_set_sort_children_by_y : * mut sys :: godot_method_bind , pub canvas_item_set_transform : * mut sys :: godot_method_bind , pub canvas_item_set_use_parent_material : * mut sys :: godot_method_bind , pub canvas_item_set_visible : * mut sys :: godot_method_bind , pub canvas_item_set_z_as_relative_to_parent : * mut sys :: godot_method_bind , pub canvas_item_set_z_index : * mut sys :: godot_method_bind , pub canvas_light_attach_to_canvas : * mut sys :: godot_method_bind , pub canvas_light_create : * mut sys :: godot_method_bind , pub canvas_light_occluder_attach_to_canvas : * mut sys :: godot_method_bind , pub canvas_light_occluder_create : * mut sys :: godot_method_bind , pub canvas_light_occluder_set_enabled : * mut sys :: godot_method_bind , pub canvas_light_occluder_set_light_mask : * mut sys :: godot_method_bind , pub canvas_light_occluder_set_polygon : * mut sys :: godot_method_bind , pub canvas_light_occluder_set_transform : * mut sys :: godot_method_bind , pub canvas_light_set_color : * mut sys :: godot_method_bind , pub canvas_light_set_enabled : * mut sys :: godot_method_bind , pub canvas_light_set_energy : * mut sys :: godot_method_bind , pub canvas_light_set_height : * mut sys :: godot_method_bind , pub canvas_light_set_item_cull_mask : * mut sys :: godot_method_bind , pub canvas_light_set_item_shadow_cull_mask : * mut sys :: godot_method_bind , pub canvas_light_set_layer_range : * mut sys :: godot_method_bind , pub canvas_light_set_mode : * mut sys :: godot_method_bind , pub canvas_light_set_scale : * mut sys :: godot_method_bind , pub canvas_light_set_shadow_buffer_size : * mut sys :: godot_method_bind , pub canvas_light_set_shadow_color : * mut sys :: godot_method_bind , pub canvas_light_set_shadow_enabled : * mut sys :: godot_method_bind , pub canvas_light_set_shadow_filter : * mut sys :: godot_method_bind , pub canvas_light_set_shadow_gradient_length : * mut sys :: godot_method_bind , pub canvas_light_set_shadow_smooth : * mut sys :: godot_method_bind , pub canvas_light_set_texture : * mut sys :: godot_method_bind , pub canvas_light_set_texture_offset : * mut sys :: godot_method_bind , pub canvas_light_set_transform : * mut sys :: godot_method_bind , pub canvas_light_set_z_range : * mut sys :: godot_method_bind , pub canvas_occluder_polygon_create : * mut sys :: godot_method_bind , pub canvas_occluder_polygon_set_cull_mode : * mut sys :: godot_method_bind , pub canvas_occluder_polygon_set_shape : * mut sys :: godot_method_bind , pub canvas_occluder_polygon_set_shape_as_lines : * mut sys :: godot_method_bind , pub canvas_set_item_mirroring : * mut sys :: godot_method_bind , pub canvas_set_modulate : * mut sys :: godot_method_bind , pub directional_light_create : * mut sys :: godot_method_bind , pub draw : * mut sys :: godot_method_bind , pub environment_create : * mut sys :: godot_method_bind , pub environment_set_adjustment : * mut sys :: godot_method_bind , pub environment_set_ambient_light : * mut sys :: godot_method_bind , pub environment_set_background : * mut sys :: godot_method_bind , pub environment_set_bg_color : * mut sys :: godot_method_bind , pub environment_set_bg_energy : * mut sys :: godot_method_bind , pub environment_set_canvas_max_layer : * mut sys :: godot_method_bind , pub environment_set_dof_blur_far : * mut sys :: godot_method_bind , pub environment_set_dof_blur_near : * mut sys :: godot_method_bind , pub environment_set_fog : * mut sys :: godot_method_bind , pub environment_set_fog_depth : * mut sys :: godot_method_bind , pub environment_set_fog_height : * mut sys :: godot_method_bind , pub environment_set_glow : * mut sys :: godot_method_bind , pub environment_set_sky : * mut sys :: godot_method_bind , pub environment_set_sky_custom_fov : * mut sys :: godot_method_bind , pub environment_set_sky_orientation : * mut sys :: godot_method_bind , pub environment_set_ssao : * mut sys :: godot_method_bind , pub environment_set_ssr : * mut sys :: godot_method_bind , pub environment_set_tonemap : * mut sys :: godot_method_bind , pub finish : * mut sys :: godot_method_bind , pub force_draw : * mut sys :: godot_method_bind , pub force_sync : * mut sys :: godot_method_bind , pub free_rid : * mut sys :: godot_method_bind , pub get_render_info : * mut sys :: godot_method_bind , pub get_test_cube : * mut sys :: godot_method_bind , pub get_test_texture : * mut sys :: godot_method_bind , pub get_video_adapter_name : * mut sys :: godot_method_bind , pub get_video_adapter_vendor : * mut sys :: godot_method_bind , pub get_white_texture : * mut sys :: godot_method_bind , pub gi_probe_create : * mut sys :: godot_method_bind , pub gi_probe_get_bias : * mut sys :: godot_method_bind , pub gi_probe_get_bounds : * mut sys :: godot_method_bind , pub gi_probe_get_cell_size : * mut sys :: godot_method_bind , pub gi_probe_get_dynamic_data : * mut sys :: godot_method_bind , pub gi_probe_get_dynamic_range : * mut sys :: godot_method_bind , pub gi_probe_get_energy : * mut sys :: godot_method_bind , pub gi_probe_get_normal_bias : * mut sys :: godot_method_bind , pub gi_probe_get_propagation : * mut sys :: godot_method_bind , pub gi_probe_get_to_cell_xform : * mut sys :: godot_method_bind , pub gi_probe_is_compressed : * mut sys :: godot_method_bind , pub gi_probe_is_interior : * mut sys :: godot_method_bind , pub gi_probe_set_bias : * mut sys :: godot_method_bind , pub gi_probe_set_bounds : * mut sys :: godot_method_bind , pub gi_probe_set_cell_size : * mut sys :: godot_method_bind , pub gi_probe_set_compress : * mut sys :: godot_method_bind , pub gi_probe_set_dynamic_data : * mut sys :: godot_method_bind , pub gi_probe_set_dynamic_range : * mut sys :: godot_method_bind , pub gi_probe_set_energy : * mut sys :: godot_method_bind , pub gi_probe_set_interior : * mut sys :: godot_method_bind , pub gi_probe_set_normal_bias : * mut sys :: godot_method_bind , pub gi_probe_set_propagation : * mut sys :: godot_method_bind , pub gi_probe_set_to_cell_xform : * mut sys :: godot_method_bind , pub has_changed : * mut sys :: godot_method_bind , pub has_feature : * mut sys :: godot_method_bind , pub has_os_feature : * mut sys :: godot_method_bind , pub immediate_begin : * mut sys :: godot_method_bind , pub immediate_clear : * mut sys :: godot_method_bind , pub immediate_color : * mut sys :: godot_method_bind , pub immediate_create : * mut sys :: godot_method_bind , pub immediate_end : * mut sys :: godot_method_bind , pub immediate_get_material : * mut sys :: godot_method_bind , pub immediate_normal : * mut sys :: godot_method_bind , pub immediate_set_material : * mut sys :: godot_method_bind , pub immediate_tangent : * mut sys :: godot_method_bind , pub immediate_uv : * mut sys :: godot_method_bind , pub immediate_uv2 : * mut sys :: godot_method_bind , pub immediate_vertex : * mut sys :: godot_method_bind , pub immediate_vertex_2d : * mut sys :: godot_method_bind , pub init : * mut sys :: godot_method_bind , pub instance_attach_object_instance_id : * mut sys :: godot_method_bind , pub instance_attach_skeleton : * mut sys :: godot_method_bind , pub instance_create : * mut sys :: godot_method_bind , pub instance_create2 : * mut sys :: godot_method_bind , pub instance_geometry_set_as_instance_lod : * mut sys :: godot_method_bind , pub instance_geometry_set_cast_shadows_setting : * mut sys :: godot_method_bind , pub instance_geometry_set_draw_range : * mut sys :: godot_method_bind , pub instance_geometry_set_flag : * mut sys :: godot_method_bind , pub instance_geometry_set_material_override : * mut sys :: godot_method_bind , pub instance_set_base : * mut sys :: godot_method_bind , pub instance_set_blend_shape_weight : * mut sys :: godot_method_bind , pub instance_set_custom_aabb : * mut sys :: godot_method_bind , pub instance_set_exterior : * mut sys :: godot_method_bind , pub instance_set_extra_visibility_margin : * mut sys :: godot_method_bind , pub instance_set_layer_mask : * mut sys :: godot_method_bind , pub instance_set_scenario : * mut sys :: godot_method_bind , pub instance_set_surface_material : * mut sys :: godot_method_bind , pub instance_set_transform : * mut sys :: godot_method_bind , pub instance_set_use_lightmap : * mut sys :: godot_method_bind , pub instance_set_visible : * mut sys :: godot_method_bind , pub instances_cull_aabb : * mut sys :: godot_method_bind , pub instances_cull_convex : * mut sys :: godot_method_bind , pub instances_cull_ray : * mut sys :: godot_method_bind , pub is_render_loop_enabled : * mut sys :: godot_method_bind , pub light_directional_set_blend_splits : * mut sys :: godot_method_bind , pub light_directional_set_shadow_depth_range_mode : * mut sys :: godot_method_bind , pub light_directional_set_shadow_mode : * mut sys :: godot_method_bind , pub light_omni_set_shadow_detail : * mut sys :: godot_method_bind , pub light_omni_set_shadow_mode : * mut sys :: godot_method_bind , pub light_set_bake_mode : * mut sys :: godot_method_bind , pub light_set_color : * mut sys :: godot_method_bind , pub light_set_cull_mask : * mut sys :: godot_method_bind , pub light_set_negative : * mut sys :: godot_method_bind , pub light_set_param : * mut sys :: godot_method_bind , pub light_set_projector : * mut sys :: godot_method_bind , pub light_set_reverse_cull_face_mode : * mut sys :: godot_method_bind , pub light_set_shadow : * mut sys :: godot_method_bind , pub light_set_shadow_color : * mut sys :: godot_method_bind , pub light_set_use_gi : * mut sys :: godot_method_bind , pub lightmap_capture_create : * mut sys :: godot_method_bind , pub lightmap_capture_get_bounds : * mut sys :: godot_method_bind , pub lightmap_capture_get_energy : * mut sys :: godot_method_bind , pub lightmap_capture_get_octree : * mut sys :: godot_method_bind , pub lightmap_capture_get_octree_cell_subdiv : * mut sys :: godot_method_bind , pub lightmap_capture_get_octree_cell_transform : * mut sys :: godot_method_bind , pub lightmap_capture_is_interior : * mut sys :: godot_method_bind , pub lightmap_capture_set_bounds : * mut sys :: godot_method_bind , pub lightmap_capture_set_energy : * mut sys :: godot_method_bind , pub lightmap_capture_set_interior : * mut sys :: godot_method_bind , pub lightmap_capture_set_octree : * mut sys :: godot_method_bind , pub lightmap_capture_set_octree_cell_subdiv : * mut sys :: godot_method_bind , pub lightmap_capture_set_octree_cell_transform : * mut sys :: godot_method_bind , pub make_sphere_mesh : * mut sys :: godot_method_bind , pub material_create : * mut sys :: godot_method_bind , pub material_get_param : * mut sys :: godot_method_bind , pub material_get_param_default : * mut sys :: godot_method_bind , pub material_get_shader : * mut sys :: godot_method_bind , pub material_set_line_width : * mut sys :: godot_method_bind , pub material_set_next_pass : * mut sys :: godot_method_bind , pub material_set_param : * mut sys :: godot_method_bind , pub material_set_render_priority : * mut sys :: godot_method_bind , pub material_set_shader : * mut sys :: godot_method_bind , pub mesh_add_surface_from_arrays : * mut sys :: godot_method_bind , pub mesh_clear : * mut sys :: godot_method_bind , pub mesh_create : * mut sys :: godot_method_bind , pub mesh_get_blend_shape_count : * mut sys :: godot_method_bind , pub mesh_get_blend_shape_mode : * mut sys :: godot_method_bind , pub mesh_get_custom_aabb : * mut sys :: godot_method_bind , pub mesh_get_surface_count : * mut sys :: godot_method_bind , pub mesh_remove_surface : * mut sys :: godot_method_bind , pub mesh_set_blend_shape_count : * mut sys :: godot_method_bind , pub mesh_set_blend_shape_mode : * mut sys :: godot_method_bind , pub mesh_set_custom_aabb : * mut sys :: godot_method_bind , pub mesh_surface_get_aabb : * mut sys :: godot_method_bind , pub mesh_surface_get_array : * mut sys :: godot_method_bind , pub mesh_surface_get_array_index_len : * mut sys :: godot_method_bind , pub mesh_surface_get_array_len : * mut sys :: godot_method_bind , pub mesh_surface_get_arrays : * mut sys :: godot_method_bind , pub mesh_surface_get_blend_shape_arrays : * mut sys :: godot_method_bind , pub mesh_surface_get_format : * mut sys :: godot_method_bind , pub mesh_surface_get_format_offset : * mut sys :: godot_method_bind , pub mesh_surface_get_format_stride : * mut sys :: godot_method_bind , pub mesh_surface_get_index_array : * mut sys :: godot_method_bind , pub mesh_surface_get_material : * mut sys :: godot_method_bind , pub mesh_surface_get_primitive_type : * mut sys :: godot_method_bind , pub mesh_surface_get_skeleton_aabb : * mut sys :: godot_method_bind , pub mesh_surface_set_material : * mut sys :: godot_method_bind , pub mesh_surface_update_region : * mut sys :: godot_method_bind , pub multimesh_allocate : * mut sys :: godot_method_bind , pub multimesh_create : * mut sys :: godot_method_bind , pub multimesh_get_aabb : * mut sys :: godot_method_bind , pub multimesh_get_instance_count : * mut sys :: godot_method_bind , pub multimesh_get_mesh : * mut sys :: godot_method_bind , pub multimesh_get_visible_instances : * mut sys :: godot_method_bind , pub multimesh_instance_get_color : * mut sys :: godot_method_bind , pub multimesh_instance_get_custom_data : * mut sys :: godot_method_bind , pub multimesh_instance_get_transform : * mut sys :: godot_method_bind , pub multimesh_instance_get_transform_2d : * mut sys :: godot_method_bind , pub multimesh_instance_set_color : * mut sys :: godot_method_bind , pub multimesh_instance_set_custom_data : * mut sys :: godot_method_bind , pub multimesh_instance_set_transform : * mut sys :: godot_method_bind , pub multimesh_instance_set_transform_2d : * mut sys :: godot_method_bind , pub multimesh_set_as_bulk_array : * mut sys :: godot_method_bind , pub multimesh_set_mesh : * mut sys :: godot_method_bind , pub multimesh_set_visible_instances : * mut sys :: godot_method_bind , pub omni_light_create : * mut sys :: godot_method_bind , pub particles_create : * mut sys :: godot_method_bind , pub particles_get_current_aabb : * mut sys :: godot_method_bind , pub particles_get_emitting : * mut sys :: godot_method_bind , pub particles_is_inactive : * mut sys :: godot_method_bind , pub particles_request_process : * mut sys :: godot_method_bind , pub particles_restart : * mut sys :: godot_method_bind , pub particles_set_amount : * mut sys :: godot_method_bind , pub particles_set_custom_aabb : * mut sys :: godot_method_bind , pub particles_set_draw_order : * mut sys :: godot_method_bind , pub particles_set_draw_pass_mesh : * mut sys :: godot_method_bind , pub particles_set_draw_passes : * mut sys :: godot_method_bind , pub particles_set_emission_transform : * mut sys :: godot_method_bind , pub particles_set_emitting : * mut sys :: godot_method_bind , pub particles_set_explosiveness_ratio : * mut sys :: godot_method_bind , pub particles_set_fixed_fps : * mut sys :: godot_method_bind , pub particles_set_fractional_delta : * mut sys :: godot_method_bind , pub particles_set_lifetime : * mut sys :: godot_method_bind , pub particles_set_one_shot : * mut sys :: godot_method_bind , pub particles_set_pre_process_time : * mut sys :: godot_method_bind , pub particles_set_process_material : * mut sys :: godot_method_bind , pub particles_set_randomness_ratio : * mut sys :: godot_method_bind , pub particles_set_speed_scale : * mut sys :: godot_method_bind , pub particles_set_use_local_coordinates : * mut sys :: godot_method_bind , pub reflection_probe_create : * mut sys :: godot_method_bind , pub reflection_probe_set_as_interior : * mut sys :: godot_method_bind , pub reflection_probe_set_cull_mask : * mut sys :: godot_method_bind , pub reflection_probe_set_enable_box_projection : * mut sys :: godot_method_bind , pub reflection_probe_set_enable_shadows : * mut sys :: godot_method_bind , pub reflection_probe_set_extents : * mut sys :: godot_method_bind , pub reflection_probe_set_intensity : * mut sys :: godot_method_bind , pub reflection_probe_set_interior_ambient : * mut sys :: godot_method_bind , pub reflection_probe_set_interior_ambient_energy : * mut sys :: godot_method_bind , pub reflection_probe_set_interior_ambient_probe_contribution : * mut sys :: godot_method_bind , pub reflection_probe_set_max_distance : * mut sys :: godot_method_bind , pub reflection_probe_set_origin_offset : * mut sys :: godot_method_bind , pub reflection_probe_set_update_mode : * mut sys :: godot_method_bind , pub request_frame_drawn_callback : * mut sys :: godot_method_bind , pub scenario_create : * mut sys :: godot_method_bind , pub scenario_set_debug : * mut sys :: godot_method_bind , pub scenario_set_environment : * mut sys :: godot_method_bind , pub scenario_set_fallback_environment : * mut sys :: godot_method_bind , pub scenario_set_reflection_atlas_size : * mut sys :: godot_method_bind , pub set_boot_image : * mut sys :: godot_method_bind , pub set_debug_generate_wireframes : * mut sys :: godot_method_bind , pub set_default_clear_color : * mut sys :: godot_method_bind , pub set_render_loop_enabled : * mut sys :: godot_method_bind , pub set_shader_time_scale : * mut sys :: godot_method_bind , pub shader_create : * mut sys :: godot_method_bind , pub shader_get_code : * mut sys :: godot_method_bind , pub shader_get_default_texture_param : * mut sys :: godot_method_bind , pub shader_get_param_list : * mut sys :: godot_method_bind , pub shader_set_code : * mut sys :: godot_method_bind , pub shader_set_default_texture_param : * mut sys :: godot_method_bind , pub skeleton_allocate : * mut sys :: godot_method_bind , pub skeleton_bone_get_transform : * mut sys :: godot_method_bind , pub skeleton_bone_get_transform_2d : * mut sys :: godot_method_bind , pub skeleton_bone_set_transform : * mut sys :: godot_method_bind , pub skeleton_bone_set_transform_2d : * mut sys :: godot_method_bind , pub skeleton_create : * mut sys :: godot_method_bind , pub skeleton_get_bone_count : * mut sys :: godot_method_bind , pub sky_create : * mut sys :: godot_method_bind , pub sky_set_texture : * mut sys :: godot_method_bind , pub spot_light_create : * mut sys :: godot_method_bind , pub sync : * mut sys :: godot_method_bind , pub texture_allocate : * mut sys :: godot_method_bind , pub texture_bind : * mut sys :: godot_method_bind , pub texture_create : * mut sys :: godot_method_bind , pub texture_create_from_image : * mut sys :: godot_method_bind , pub texture_debug_usage : * mut sys :: godot_method_bind , pub texture_get_data : * mut sys :: godot_method_bind , pub texture_get_depth : * mut sys :: godot_method_bind , pub texture_get_flags : * mut sys :: godot_method_bind , pub texture_get_format : * mut sys :: godot_method_bind , pub texture_get_height : * mut sys :: godot_method_bind , pub texture_get_path : * mut sys :: godot_method_bind , pub texture_get_texid : * mut sys :: godot_method_bind , pub texture_get_type : * mut sys :: godot_method_bind , pub texture_get_width : * mut sys :: godot_method_bind , pub texture_set_data : * mut sys :: godot_method_bind , pub texture_set_data_partial : * mut sys :: godot_method_bind , pub texture_set_flags : * mut sys :: godot_method_bind , pub texture_set_path : * mut sys :: godot_method_bind , pub texture_set_shrink_all_x2_on_set_data : * mut sys :: godot_method_bind , pub texture_set_size_override : * mut sys :: godot_method_bind , pub textures_keep_original : * mut sys :: godot_method_bind , pub viewport_attach_camera : * mut sys :: godot_method_bind , pub viewport_attach_canvas : * mut sys :: godot_method_bind , pub viewport_attach_to_screen : * mut sys :: godot_method_bind , pub viewport_create : * mut sys :: godot_method_bind , pub viewport_detach : * mut sys :: godot_method_bind , pub viewport_get_render_info : * mut sys :: godot_method_bind , pub viewport_get_texture : * mut sys :: godot_method_bind , pub viewport_remove_canvas : * mut sys :: godot_method_bind , pub viewport_set_active : * mut sys :: godot_method_bind , pub viewport_set_canvas_stacking : * mut sys :: godot_method_bind , pub viewport_set_canvas_transform : * mut sys :: godot_method_bind , pub viewport_set_clear_mode : * mut sys :: godot_method_bind , pub viewport_set_debug_draw : * mut sys :: godot_method_bind , pub viewport_set_disable_3d : * mut sys :: godot_method_bind , pub viewport_set_disable_environment : * mut sys :: godot_method_bind , pub viewport_set_global_canvas_transform : * mut sys :: godot_method_bind , pub viewport_set_hdr : * mut sys :: godot_method_bind , pub viewport_set_hide_canvas : * mut sys :: godot_method_bind , pub viewport_set_hide_scenario : * mut sys :: godot_method_bind , pub viewport_set_msaa : * mut sys :: godot_method_bind , pub viewport_set_parent_viewport : * mut sys :: godot_method_bind , pub viewport_set_render_direct_to_screen : * mut sys :: godot_method_bind , pub viewport_set_scenario : * mut sys :: godot_method_bind , pub viewport_set_shadow_atlas_quadrant_subdivision : * mut sys :: godot_method_bind , pub viewport_set_shadow_atlas_size : * mut sys :: godot_method_bind , pub viewport_set_size : * mut sys :: godot_method_bind , pub viewport_set_transparent_background : * mut sys :: godot_method_bind , pub viewport_set_update_mode : * mut sys :: godot_method_bind , pub viewport_set_usage : * mut sys :: godot_method_bind , pub viewport_set_use_arvr : * mut sys :: godot_method_bind , pub viewport_set_use_debanding : * mut sys :: godot_method_bind , pub viewport_set_use_fxaa : * mut sys :: godot_method_bind , pub viewport_set_vflip : * mut sys :: godot_method_bind } impl VisualServerMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualServerMethodTable = VisualServerMethodTable { class_constructor : None , black_bars_set_images : 0 as * mut sys :: godot_method_bind , black_bars_set_margins : 0 as * mut sys :: godot_method_bind , camera_create : 0 as * mut sys :: godot_method_bind , camera_set_cull_mask : 0 as * mut sys :: godot_method_bind , camera_set_environment : 0 as * mut sys :: godot_method_bind , camera_set_frustum : 0 as * mut sys :: godot_method_bind , camera_set_orthogonal : 0 as * mut sys :: godot_method_bind , camera_set_perspective : 0 as * mut sys :: godot_method_bind , camera_set_transform : 0 as * mut sys :: godot_method_bind , camera_set_use_vertical_aspect : 0 as * mut sys :: godot_method_bind , canvas_create : 0 as * mut sys :: godot_method_bind , canvas_item_add_circle : 0 as * mut sys :: godot_method_bind , canvas_item_add_clip_ignore : 0 as * mut sys :: godot_method_bind , canvas_item_add_line : 0 as * mut sys :: godot_method_bind , canvas_item_add_mesh : 0 as * mut sys :: godot_method_bind , canvas_item_add_multimesh : 0 as * mut sys :: godot_method_bind , canvas_item_add_nine_patch : 0 as * mut sys :: godot_method_bind , canvas_item_add_particles : 0 as * mut sys :: godot_method_bind , canvas_item_add_polygon : 0 as * mut sys :: godot_method_bind , canvas_item_add_polyline : 0 as * mut sys :: godot_method_bind , canvas_item_add_primitive : 0 as * mut sys :: godot_method_bind , canvas_item_add_rect : 0 as * mut sys :: godot_method_bind , canvas_item_add_set_transform : 0 as * mut sys :: godot_method_bind , canvas_item_add_texture_rect : 0 as * mut sys :: godot_method_bind , canvas_item_add_texture_rect_region : 0 as * mut sys :: godot_method_bind , canvas_item_add_triangle_array : 0 as * mut sys :: godot_method_bind , canvas_item_clear : 0 as * mut sys :: godot_method_bind , canvas_item_create : 0 as * mut sys :: godot_method_bind , canvas_item_set_clip : 0 as * mut sys :: godot_method_bind , canvas_item_set_copy_to_backbuffer : 0 as * mut sys :: godot_method_bind , canvas_item_set_custom_rect : 0 as * mut sys :: godot_method_bind , canvas_item_set_distance_field_mode : 0 as * mut sys :: godot_method_bind , canvas_item_set_draw_behind_parent : 0 as * mut sys :: godot_method_bind , canvas_item_set_draw_index : 0 as * mut sys :: godot_method_bind , canvas_item_set_light_mask : 0 as * mut sys :: godot_method_bind , canvas_item_set_material : 0 as * mut sys :: godot_method_bind , canvas_item_set_modulate : 0 as * mut sys :: godot_method_bind , canvas_item_set_parent : 0 as * mut sys :: godot_method_bind , canvas_item_set_self_modulate : 0 as * mut sys :: godot_method_bind , canvas_item_set_sort_children_by_y : 0 as * mut sys :: godot_method_bind , canvas_item_set_transform : 0 as * mut sys :: godot_method_bind , canvas_item_set_use_parent_material : 0 as * mut sys :: godot_method_bind , canvas_item_set_visible : 0 as * mut sys :: godot_method_bind , canvas_item_set_z_as_relative_to_parent : 0 as * mut sys :: godot_method_bind , canvas_item_set_z_index : 0 as * mut sys :: godot_method_bind , canvas_light_attach_to_canvas : 0 as * mut sys :: godot_method_bind , canvas_light_create : 0 as * mut sys :: godot_method_bind , canvas_light_occluder_attach_to_canvas : 0 as * mut sys :: godot_method_bind , canvas_light_occluder_create : 0 as * mut sys :: godot_method_bind , canvas_light_occluder_set_enabled : 0 as * mut sys :: godot_method_bind , canvas_light_occluder_set_light_mask : 0 as * mut sys :: godot_method_bind , canvas_light_occluder_set_polygon : 0 as * mut sys :: godot_method_bind , canvas_light_occluder_set_transform : 0 as * mut sys :: godot_method_bind , canvas_light_set_color : 0 as * mut sys :: godot_method_bind , canvas_light_set_enabled : 0 as * mut sys :: godot_method_bind , canvas_light_set_energy : 0 as * mut sys :: godot_method_bind , canvas_light_set_height : 0 as * mut sys :: godot_method_bind , canvas_light_set_item_cull_mask : 0 as * mut sys :: godot_method_bind , canvas_light_set_item_shadow_cull_mask : 0 as * mut sys :: godot_method_bind , canvas_light_set_layer_range : 0 as * mut sys :: godot_method_bind , canvas_light_set_mode : 0 as * mut sys :: godot_method_bind , canvas_light_set_scale : 0 as * mut sys :: godot_method_bind , canvas_light_set_shadow_buffer_size : 0 as * mut sys :: godot_method_bind , canvas_light_set_shadow_color : 0 as * mut sys :: godot_method_bind , canvas_light_set_shadow_enabled : 0 as * mut sys :: godot_method_bind , canvas_light_set_shadow_filter : 0 as * mut sys :: godot_method_bind , canvas_light_set_shadow_gradient_length : 0 as * mut sys :: godot_method_bind , canvas_light_set_shadow_smooth : 0 as * mut sys :: godot_method_bind , canvas_light_set_texture : 0 as * mut sys :: godot_method_bind , canvas_light_set_texture_offset : 0 as * mut sys :: godot_method_bind , canvas_light_set_transform : 0 as * mut sys :: godot_method_bind , canvas_light_set_z_range : 0 as * mut sys :: godot_method_bind , canvas_occluder_polygon_create : 0 as * mut sys :: godot_method_bind , canvas_occluder_polygon_set_cull_mode : 0 as * mut sys :: godot_method_bind , canvas_occluder_polygon_set_shape : 0 as * mut sys :: godot_method_bind , canvas_occluder_polygon_set_shape_as_lines : 0 as * mut sys :: godot_method_bind , canvas_set_item_mirroring : 0 as * mut sys :: godot_method_bind , canvas_set_modulate : 0 as * mut sys :: godot_method_bind , directional_light_create : 0 as * mut sys :: godot_method_bind , draw : 0 as * mut sys :: godot_method_bind , environment_create : 0 as * mut sys :: godot_method_bind , environment_set_adjustment : 0 as * mut sys :: godot_method_bind , environment_set_ambient_light : 0 as * mut sys :: godot_method_bind , environment_set_background : 0 as * mut sys :: godot_method_bind , environment_set_bg_color : 0 as * mut sys :: godot_method_bind , environment_set_bg_energy : 0 as * mut sys :: godot_method_bind , environment_set_canvas_max_layer : 0 as * mut sys :: godot_method_bind , environment_set_dof_blur_far : 0 as * mut sys :: godot_method_bind , environment_set_dof_blur_near : 0 as * mut sys :: godot_method_bind , environment_set_fog : 0 as * mut sys :: godot_method_bind , environment_set_fog_depth : 0 as * mut sys :: godot_method_bind , environment_set_fog_height : 0 as * mut sys :: godot_method_bind , environment_set_glow : 0 as * mut sys :: godot_method_bind , environment_set_sky : 0 as * mut sys :: godot_method_bind , environment_set_sky_custom_fov : 0 as * mut sys :: godot_method_bind , environment_set_sky_orientation : 0 as * mut sys :: godot_method_bind , environment_set_ssao : 0 as * mut sys :: godot_method_bind , environment_set_ssr : 0 as * mut sys :: godot_method_bind , environment_set_tonemap : 0 as * mut sys :: godot_method_bind , finish : 0 as * mut sys :: godot_method_bind , force_draw : 0 as * mut sys :: godot_method_bind , force_sync : 0 as * mut sys :: godot_method_bind , free_rid : 0 as * mut sys :: godot_method_bind , get_render_info : 0 as * mut sys :: godot_method_bind , get_test_cube : 0 as * mut sys :: godot_method_bind , get_test_texture : 0 as * mut sys :: godot_method_bind , get_video_adapter_name : 0 as * mut sys :: godot_method_bind , get_video_adapter_vendor : 0 as * mut sys :: godot_method_bind , get_white_texture : 0 as * mut sys :: godot_method_bind , gi_probe_create : 0 as * mut sys :: godot_method_bind , gi_probe_get_bias : 0 as * mut sys :: godot_method_bind , gi_probe_get_bounds : 0 as * mut sys :: godot_method_bind , gi_probe_get_cell_size : 0 as * mut sys :: godot_method_bind , gi_probe_get_dynamic_data : 0 as * mut sys :: godot_method_bind , gi_probe_get_dynamic_range : 0 as * mut sys :: godot_method_bind , gi_probe_get_energy : 0 as * mut sys :: godot_method_bind , gi_probe_get_normal_bias : 0 as * mut sys :: godot_method_bind , gi_probe_get_propagation : 0 as * mut sys :: godot_method_bind , gi_probe_get_to_cell_xform : 0 as * mut sys :: godot_method_bind , gi_probe_is_compressed : 0 as * mut sys :: godot_method_bind , gi_probe_is_interior : 0 as * mut sys :: godot_method_bind , gi_probe_set_bias : 0 as * mut sys :: godot_method_bind , gi_probe_set_bounds : 0 as * mut sys :: godot_method_bind , gi_probe_set_cell_size : 0 as * mut sys :: godot_method_bind , gi_probe_set_compress : 0 as * mut sys :: godot_method_bind , gi_probe_set_dynamic_data : 0 as * mut sys :: godot_method_bind , gi_probe_set_dynamic_range : 0 as * mut sys :: godot_method_bind , gi_probe_set_energy : 0 as * mut sys :: godot_method_bind , gi_probe_set_interior : 0 as * mut sys :: godot_method_bind , gi_probe_set_normal_bias : 0 as * mut sys :: godot_method_bind , gi_probe_set_propagation : 0 as * mut sys :: godot_method_bind , gi_probe_set_to_cell_xform : 0 as * mut sys :: godot_method_bind , has_changed : 0 as * mut sys :: godot_method_bind , has_feature : 0 as * mut sys :: godot_method_bind , has_os_feature : 0 as * mut sys :: godot_method_bind , immediate_begin : 0 as * mut sys :: godot_method_bind , immediate_clear : 0 as * mut sys :: godot_method_bind , immediate_color : 0 as * mut sys :: godot_method_bind , immediate_create : 0 as * mut sys :: godot_method_bind , immediate_end : 0 as * mut sys :: godot_method_bind , immediate_get_material : 0 as * mut sys :: godot_method_bind , immediate_normal : 0 as * mut sys :: godot_method_bind , immediate_set_material : 0 as * mut sys :: godot_method_bind , immediate_tangent : 0 as * mut sys :: godot_method_bind , immediate_uv : 0 as * mut sys :: godot_method_bind , immediate_uv2 : 0 as * mut sys :: godot_method_bind , immediate_vertex : 0 as * mut sys :: godot_method_bind , immediate_vertex_2d : 0 as * mut sys :: godot_method_bind , init : 0 as * mut sys :: godot_method_bind , instance_attach_object_instance_id : 0 as * mut sys :: godot_method_bind , instance_attach_skeleton : 0 as * mut sys :: godot_method_bind , instance_create : 0 as * mut sys :: godot_method_bind , instance_create2 : 0 as * mut sys :: godot_method_bind , instance_geometry_set_as_instance_lod : 0 as * mut sys :: godot_method_bind , instance_geometry_set_cast_shadows_setting : 0 as * mut sys :: godot_method_bind , instance_geometry_set_draw_range : 0 as * mut sys :: godot_method_bind , instance_geometry_set_flag : 0 as * mut sys :: godot_method_bind , instance_geometry_set_material_override : 0 as * mut sys :: godot_method_bind , instance_set_base : 0 as * mut sys :: godot_method_bind , instance_set_blend_shape_weight : 0 as * mut sys :: godot_method_bind , instance_set_custom_aabb : 0 as * mut sys :: godot_method_bind , instance_set_exterior : 0 as * mut sys :: godot_method_bind , instance_set_extra_visibility_margin : 0 as * mut sys :: godot_method_bind , instance_set_layer_mask : 0 as * mut sys :: godot_method_bind , instance_set_scenario : 0 as * mut sys :: godot_method_bind , instance_set_surface_material : 0 as * mut sys :: godot_method_bind , instance_set_transform : 0 as * mut sys :: godot_method_bind , instance_set_use_lightmap : 0 as * mut sys :: godot_method_bind , instance_set_visible : 0 as * mut sys :: godot_method_bind , instances_cull_aabb : 0 as * mut sys :: godot_method_bind , instances_cull_convex : 0 as * mut sys :: godot_method_bind , instances_cull_ray : 0 as * mut sys :: godot_method_bind , is_render_loop_enabled : 0 as * mut sys :: godot_method_bind , light_directional_set_blend_splits : 0 as * mut sys :: godot_method_bind , light_directional_set_shadow_depth_range_mode : 0 as * mut sys :: godot_method_bind , light_directional_set_shadow_mode : 0 as * mut sys :: godot_method_bind , light_omni_set_shadow_detail : 0 as * mut sys :: godot_method_bind , light_omni_set_shadow_mode : 0 as * mut sys :: godot_method_bind , light_set_bake_mode : 0 as * mut sys :: godot_method_bind , light_set_color : 0 as * mut sys :: godot_method_bind , light_set_cull_mask : 0 as * mut sys :: godot_method_bind , light_set_negative : 0 as * mut sys :: godot_method_bind , light_set_param : 0 as * mut sys :: godot_method_bind , light_set_projector : 0 as * mut sys :: godot_method_bind , light_set_reverse_cull_face_mode : 0 as * mut sys :: godot_method_bind , light_set_shadow : 0 as * mut sys :: godot_method_bind , light_set_shadow_color : 0 as * mut sys :: godot_method_bind , light_set_use_gi : 0 as * mut sys :: godot_method_bind , lightmap_capture_create : 0 as * mut sys :: godot_method_bind , lightmap_capture_get_bounds : 0 as * mut sys :: godot_method_bind , lightmap_capture_get_energy : 0 as * mut sys :: godot_method_bind , lightmap_capture_get_octree : 0 as * mut sys :: godot_method_bind , lightmap_capture_get_octree_cell_subdiv : 0 as * mut sys :: godot_method_bind , lightmap_capture_get_octree_cell_transform : 0 as * mut sys :: godot_method_bind , lightmap_capture_is_interior : 0 as * mut sys :: godot_method_bind , lightmap_capture_set_bounds : 0 as * mut sys :: godot_method_bind , lightmap_capture_set_energy : 0 as * mut sys :: godot_method_bind , lightmap_capture_set_interior : 0 as * mut sys :: godot_method_bind , lightmap_capture_set_octree : 0 as * mut sys :: godot_method_bind , lightmap_capture_set_octree_cell_subdiv : 0 as * mut sys :: godot_method_bind , lightmap_capture_set_octree_cell_transform : 0 as * mut sys :: godot_method_bind , make_sphere_mesh : 0 as * mut sys :: godot_method_bind , material_create : 0 as * mut sys :: godot_method_bind , material_get_param : 0 as * mut sys :: godot_method_bind , material_get_param_default : 0 as * mut sys :: godot_method_bind , material_get_shader : 0 as * mut sys :: godot_method_bind , material_set_line_width : 0 as * mut sys :: godot_method_bind , material_set_next_pass : 0 as * mut sys :: godot_method_bind , material_set_param : 0 as * mut sys :: godot_method_bind , material_set_render_priority : 0 as * mut sys :: godot_method_bind , material_set_shader : 0 as * mut sys :: godot_method_bind , mesh_add_surface_from_arrays : 0 as * mut sys :: godot_method_bind , mesh_clear : 0 as * mut sys :: godot_method_bind , mesh_create : 0 as * mut sys :: godot_method_bind , mesh_get_blend_shape_count : 0 as * mut sys :: godot_method_bind , mesh_get_blend_shape_mode : 0 as * mut sys :: godot_method_bind , mesh_get_custom_aabb : 0 as * mut sys :: godot_method_bind , mesh_get_surface_count : 0 as * mut sys :: godot_method_bind , mesh_remove_surface : 0 as * mut sys :: godot_method_bind , mesh_set_blend_shape_count : 0 as * mut sys :: godot_method_bind , mesh_set_blend_shape_mode : 0 as * mut sys :: godot_method_bind , mesh_set_custom_aabb : 0 as * mut sys :: godot_method_bind , mesh_surface_get_aabb : 0 as * mut sys :: godot_method_bind , mesh_surface_get_array : 0 as * mut sys :: godot_method_bind , mesh_surface_get_array_index_len : 0 as * mut sys :: godot_method_bind , mesh_surface_get_array_len : 0 as * mut sys :: godot_method_bind , mesh_surface_get_arrays : 0 as * mut sys :: godot_method_bind , mesh_surface_get_blend_shape_arrays : 0 as * mut sys :: godot_method_bind , mesh_surface_get_format : 0 as * mut sys :: godot_method_bind , mesh_surface_get_format_offset : 0 as * mut sys :: godot_method_bind , mesh_surface_get_format_stride : 0 as * mut sys :: godot_method_bind , mesh_surface_get_index_array : 0 as * mut sys :: godot_method_bind , mesh_surface_get_material : 0 as * mut sys :: godot_method_bind , mesh_surface_get_primitive_type : 0 as * mut sys :: godot_method_bind , mesh_surface_get_skeleton_aabb : 0 as * mut sys :: godot_method_bind , mesh_surface_set_material : 0 as * mut sys :: godot_method_bind , mesh_surface_update_region : 0 as * mut sys :: godot_method_bind , multimesh_allocate : 0 as * mut sys :: godot_method_bind , multimesh_create : 0 as * mut sys :: godot_method_bind , multimesh_get_aabb : 0 as * mut sys :: godot_method_bind , multimesh_get_instance_count : 0 as * mut sys :: godot_method_bind , multimesh_get_mesh : 0 as * mut sys :: godot_method_bind , multimesh_get_visible_instances : 0 as * mut sys :: godot_method_bind , multimesh_instance_get_color : 0 as * mut sys :: godot_method_bind , multimesh_instance_get_custom_data : 0 as * mut sys :: godot_method_bind , multimesh_instance_get_transform : 0 as * mut sys :: godot_method_bind , multimesh_instance_get_transform_2d : 0 as * mut sys :: godot_method_bind , multimesh_instance_set_color : 0 as * mut sys :: godot_method_bind , multimesh_instance_set_custom_data : 0 as * mut sys :: godot_method_bind , multimesh_instance_set_transform : 0 as * mut sys :: godot_method_bind , multimesh_instance_set_transform_2d : 0 as * mut sys :: godot_method_bind , multimesh_set_as_bulk_array : 0 as * mut sys :: godot_method_bind , multimesh_set_mesh : 0 as * mut sys :: godot_method_bind , multimesh_set_visible_instances : 0 as * mut sys :: godot_method_bind , omni_light_create : 0 as * mut sys :: godot_method_bind , particles_create : 0 as * mut sys :: godot_method_bind , particles_get_current_aabb : 0 as * mut sys :: godot_method_bind , particles_get_emitting : 0 as * mut sys :: godot_method_bind , particles_is_inactive : 0 as * mut sys :: godot_method_bind , particles_request_process : 0 as * mut sys :: godot_method_bind , particles_restart : 0 as * mut sys :: godot_method_bind , particles_set_amount : 0 as * mut sys :: godot_method_bind , particles_set_custom_aabb : 0 as * mut sys :: godot_method_bind , particles_set_draw_order : 0 as * mut sys :: godot_method_bind , particles_set_draw_pass_mesh : 0 as * mut sys :: godot_method_bind , particles_set_draw_passes : 0 as * mut sys :: godot_method_bind , particles_set_emission_transform : 0 as * mut sys :: godot_method_bind , particles_set_emitting : 0 as * mut sys :: godot_method_bind , particles_set_explosiveness_ratio : 0 as * mut sys :: godot_method_bind , particles_set_fixed_fps : 0 as * mut sys :: godot_method_bind , particles_set_fractional_delta : 0 as * mut sys :: godot_method_bind , particles_set_lifetime : 0 as * mut sys :: godot_method_bind , particles_set_one_shot : 0 as * mut sys :: godot_method_bind , particles_set_pre_process_time : 0 as * mut sys :: godot_method_bind , particles_set_process_material : 0 as * mut sys :: godot_method_bind , particles_set_randomness_ratio : 0 as * mut sys :: godot_method_bind , particles_set_speed_scale : 0 as * mut sys :: godot_method_bind , particles_set_use_local_coordinates : 0 as * mut sys :: godot_method_bind , reflection_probe_create : 0 as * mut sys :: godot_method_bind , reflection_probe_set_as_interior : 0 as * mut sys :: godot_method_bind , reflection_probe_set_cull_mask : 0 as * mut sys :: godot_method_bind , reflection_probe_set_enable_box_projection : 0 as * mut sys :: godot_method_bind , reflection_probe_set_enable_shadows : 0 as * mut sys :: godot_method_bind , reflection_probe_set_extents : 0 as * mut sys :: godot_method_bind , reflection_probe_set_intensity : 0 as * mut sys :: godot_method_bind , reflection_probe_set_interior_ambient : 0 as * mut sys :: godot_method_bind , reflection_probe_set_interior_ambient_energy : 0 as * mut sys :: godot_method_bind , reflection_probe_set_interior_ambient_probe_contribution : 0 as * mut sys :: godot_method_bind , reflection_probe_set_max_distance : 0 as * mut sys :: godot_method_bind , reflection_probe_set_origin_offset : 0 as * mut sys :: godot_method_bind , reflection_probe_set_update_mode : 0 as * mut sys :: godot_method_bind , request_frame_drawn_callback : 0 as * mut sys :: godot_method_bind , scenario_create : 0 as * mut sys :: godot_method_bind , scenario_set_debug : 0 as * mut sys :: godot_method_bind , scenario_set_environment : 0 as * mut sys :: godot_method_bind , scenario_set_fallback_environment : 0 as * mut sys :: godot_method_bind , scenario_set_reflection_atlas_size : 0 as * mut sys :: godot_method_bind , set_boot_image : 0 as * mut sys :: godot_method_bind , set_debug_generate_wireframes : 0 as * mut sys :: godot_method_bind , set_default_clear_color : 0 as * mut sys :: godot_method_bind , set_render_loop_enabled : 0 as * mut sys :: godot_method_bind , set_shader_time_scale : 0 as * mut sys :: godot_method_bind , shader_create : 0 as * mut sys :: godot_method_bind , shader_get_code : 0 as * mut sys :: godot_method_bind , shader_get_default_texture_param : 0 as * mut sys :: godot_method_bind , shader_get_param_list : 0 as * mut sys :: godot_method_bind , shader_set_code : 0 as * mut sys :: godot_method_bind , shader_set_default_texture_param : 0 as * mut sys :: godot_method_bind , skeleton_allocate : 0 as * mut sys :: godot_method_bind , skeleton_bone_get_transform : 0 as * mut sys :: godot_method_bind , skeleton_bone_get_transform_2d : 0 as * mut sys :: godot_method_bind , skeleton_bone_set_transform : 0 as * mut sys :: godot_method_bind , skeleton_bone_set_transform_2d : 0 as * mut sys :: godot_method_bind , skeleton_create : 0 as * mut sys :: godot_method_bind , skeleton_get_bone_count : 0 as * mut sys :: godot_method_bind , sky_create : 0 as * mut sys :: godot_method_bind , sky_set_texture : 0 as * mut sys :: godot_method_bind , spot_light_create : 0 as * mut sys :: godot_method_bind , sync : 0 as * mut sys :: godot_method_bind , texture_allocate : 0 as * mut sys :: godot_method_bind , texture_bind : 0 as * mut sys :: godot_method_bind , texture_create : 0 as * mut sys :: godot_method_bind , texture_create_from_image : 0 as * mut sys :: godot_method_bind , texture_debug_usage : 0 as * mut sys :: godot_method_bind , texture_get_data : 0 as * mut sys :: godot_method_bind , texture_get_depth : 0 as * mut sys :: godot_method_bind , texture_get_flags : 0 as * mut sys :: godot_method_bind , texture_get_format : 0 as * mut sys :: godot_method_bind , texture_get_height : 0 as * mut sys :: godot_method_bind , texture_get_path : 0 as * mut sys :: godot_method_bind , texture_get_texid : 0 as * mut sys :: godot_method_bind , texture_get_type : 0 as * mut sys :: godot_method_bind , texture_get_width : 0 as * mut sys :: godot_method_bind , texture_set_data : 0 as * mut sys :: godot_method_bind , texture_set_data_partial : 0 as * mut sys :: godot_method_bind , texture_set_flags : 0 as * mut sys :: godot_method_bind , texture_set_path : 0 as * mut sys :: godot_method_bind , texture_set_shrink_all_x2_on_set_data : 0 as * mut sys :: godot_method_bind , texture_set_size_override : 0 as * mut sys :: godot_method_bind , textures_keep_original : 0 as * mut sys :: godot_method_bind , viewport_attach_camera : 0 as * mut sys :: godot_method_bind , viewport_attach_canvas : 0 as * mut sys :: godot_method_bind , viewport_attach_to_screen : 0 as * mut sys :: godot_method_bind , viewport_create : 0 as * mut sys :: godot_method_bind , viewport_detach : 0 as * mut sys :: godot_method_bind , viewport_get_render_info : 0 as * mut sys :: godot_method_bind , viewport_get_texture : 0 as * mut sys :: godot_method_bind , viewport_remove_canvas : 0 as * mut sys :: godot_method_bind , viewport_set_active : 0 as * mut sys :: godot_method_bind , viewport_set_canvas_stacking : 0 as * mut sys :: godot_method_bind , viewport_set_canvas_transform : 0 as * mut sys :: godot_method_bind , viewport_set_clear_mode : 0 as * mut sys :: godot_method_bind , viewport_set_debug_draw : 0 as * mut sys :: godot_method_bind , viewport_set_disable_3d : 0 as * mut sys :: godot_method_bind , viewport_set_disable_environment : 0 as * mut sys :: godot_method_bind , viewport_set_global_canvas_transform : 0 as * mut sys :: godot_method_bind , viewport_set_hdr : 0 as * mut sys :: godot_method_bind , viewport_set_hide_canvas : 0 as * mut sys :: godot_method_bind , viewport_set_hide_scenario : 0 as * mut sys :: godot_method_bind , viewport_set_msaa : 0 as * mut sys :: godot_method_bind , viewport_set_parent_viewport : 0 as * mut sys :: godot_method_bind , viewport_set_render_direct_to_screen : 0 as * mut sys :: godot_method_bind , viewport_set_scenario : 0 as * mut sys :: godot_method_bind , viewport_set_shadow_atlas_quadrant_subdivision : 0 as * mut sys :: godot_method_bind , viewport_set_shadow_atlas_size : 0 as * mut sys :: godot_method_bind , viewport_set_size : 0 as * mut sys :: godot_method_bind , viewport_set_transparent_background : 0 as * mut sys :: godot_method_bind , viewport_set_update_mode : 0 as * mut sys :: godot_method_bind , viewport_set_usage : 0 as * mut sys :: godot_method_bind , viewport_set_use_arvr : 0 as * mut sys :: godot_method_bind , viewport_set_use_debanding : 0 as * mut sys :: godot_method_bind , viewport_set_use_fxaa : 0 as * mut sys :: godot_method_bind , viewport_set_vflip : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualServerMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualServer\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . black_bars_set_images = (gd_api . godot_method_bind_get_method) (class_name , "black_bars_set_images\0" . as_ptr () as * const c_char) ; table . black_bars_set_margins = (gd_api . godot_method_bind_get_method) (class_name , "black_bars_set_margins\0" . as_ptr () as * const c_char) ; table . camera_create = (gd_api . godot_method_bind_get_method) (class_name , "camera_create\0" . as_ptr () as * const c_char) ; table . camera_set_cull_mask = (gd_api . godot_method_bind_get_method) (class_name , "camera_set_cull_mask\0" . as_ptr () as * const c_char) ; table . camera_set_environment = (gd_api . godot_method_bind_get_method) (class_name , "camera_set_environment\0" . as_ptr () as * const c_char) ; table . camera_set_frustum = (gd_api . godot_method_bind_get_method) (class_name , "camera_set_frustum\0" . as_ptr () as * const c_char) ; table . camera_set_orthogonal = (gd_api . godot_method_bind_get_method) (class_name , "camera_set_orthogonal\0" . as_ptr () as * const c_char) ; table . camera_set_perspective = (gd_api . godot_method_bind_get_method) (class_name , "camera_set_perspective\0" . as_ptr () as * const c_char) ; table . camera_set_transform = (gd_api . godot_method_bind_get_method) (class_name , "camera_set_transform\0" . as_ptr () as * const c_char) ; table . camera_set_use_vertical_aspect = (gd_api . godot_method_bind_get_method) (class_name , "camera_set_use_vertical_aspect\0" . as_ptr () as * const c_char) ; table . canvas_create = (gd_api . godot_method_bind_get_method) (class_name , "canvas_create\0" . as_ptr () as * const c_char) ; table . canvas_item_add_circle = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_circle\0" . as_ptr () as * const c_char) ; table . canvas_item_add_clip_ignore = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_clip_ignore\0" . as_ptr () as * const c_char) ; table . canvas_item_add_line = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_line\0" . as_ptr () as * const c_char) ; table . canvas_item_add_mesh = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_mesh\0" . as_ptr () as * const c_char) ; table . canvas_item_add_multimesh = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_multimesh\0" . as_ptr () as * const c_char) ; table . canvas_item_add_nine_patch = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_nine_patch\0" . as_ptr () as * const c_char) ; table . canvas_item_add_particles = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_particles\0" . as_ptr () as * const c_char) ; table . canvas_item_add_polygon = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_polygon\0" . as_ptr () as * const c_char) ; table . canvas_item_add_polyline = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_polyline\0" . as_ptr () as * const c_char) ; table . canvas_item_add_primitive = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_primitive\0" . as_ptr () as * const c_char) ; table . canvas_item_add_rect = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_rect\0" . as_ptr () as * const c_char) ; table . canvas_item_add_set_transform = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_set_transform\0" . as_ptr () as * const c_char) ; table . canvas_item_add_texture_rect = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_texture_rect\0" . as_ptr () as * const c_char) ; table . canvas_item_add_texture_rect_region = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_texture_rect_region\0" . as_ptr () as * const c_char) ; table . canvas_item_add_triangle_array = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_add_triangle_array\0" . as_ptr () as * const c_char) ; table . canvas_item_clear = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_clear\0" . as_ptr () as * const c_char) ; table . canvas_item_create = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_create\0" . as_ptr () as * const c_char) ; table . canvas_item_set_clip = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_clip\0" . as_ptr () as * const c_char) ; table . canvas_item_set_copy_to_backbuffer = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_copy_to_backbuffer\0" . as_ptr () as * const c_char) ; table . canvas_item_set_custom_rect = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_custom_rect\0" . as_ptr () as * const c_char) ; table . canvas_item_set_distance_field_mode = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_distance_field_mode\0" . as_ptr () as * const c_char) ; table . canvas_item_set_draw_behind_parent = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_draw_behind_parent\0" . as_ptr () as * const c_char) ; table . canvas_item_set_draw_index = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_draw_index\0" . as_ptr () as * const c_char) ; table . canvas_item_set_light_mask = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_light_mask\0" . as_ptr () as * const c_char) ; table . canvas_item_set_material = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_material\0" . as_ptr () as * const c_char) ; table . canvas_item_set_modulate = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_modulate\0" . as_ptr () as * const c_char) ; table . canvas_item_set_parent = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_parent\0" . as_ptr () as * const c_char) ; table . canvas_item_set_self_modulate = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_self_modulate\0" . as_ptr () as * const c_char) ; table . canvas_item_set_sort_children_by_y = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_sort_children_by_y\0" . as_ptr () as * const c_char) ; table . canvas_item_set_transform = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_transform\0" . as_ptr () as * const c_char) ; table . canvas_item_set_use_parent_material = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_use_parent_material\0" . as_ptr () as * const c_char) ; table . canvas_item_set_visible = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_visible\0" . as_ptr () as * const c_char) ; table . canvas_item_set_z_as_relative_to_parent = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_z_as_relative_to_parent\0" . as_ptr () as * const c_char) ; table . canvas_item_set_z_index = (gd_api . godot_method_bind_get_method) (class_name , "canvas_item_set_z_index\0" . as_ptr () as * const c_char) ; table . canvas_light_attach_to_canvas = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_attach_to_canvas\0" . as_ptr () as * const c_char) ; table . canvas_light_create = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_create\0" . as_ptr () as * const c_char) ; table . canvas_light_occluder_attach_to_canvas = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_occluder_attach_to_canvas\0" . as_ptr () as * const c_char) ; table . canvas_light_occluder_create = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_occluder_create\0" . as_ptr () as * const c_char) ; table . canvas_light_occluder_set_enabled = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_occluder_set_enabled\0" . as_ptr () as * const c_char) ; table . canvas_light_occluder_set_light_mask = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_occluder_set_light_mask\0" . as_ptr () as * const c_char) ; table . canvas_light_occluder_set_polygon = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_occluder_set_polygon\0" . as_ptr () as * const c_char) ; table . canvas_light_occluder_set_transform = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_occluder_set_transform\0" . as_ptr () as * const c_char) ; table . canvas_light_set_color = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_color\0" . as_ptr () as * const c_char) ; table . canvas_light_set_enabled = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_enabled\0" . as_ptr () as * const c_char) ; table . canvas_light_set_energy = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_energy\0" . as_ptr () as * const c_char) ; table . canvas_light_set_height = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_height\0" . as_ptr () as * const c_char) ; table . canvas_light_set_item_cull_mask = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_item_cull_mask\0" . as_ptr () as * const c_char) ; table . canvas_light_set_item_shadow_cull_mask = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_item_shadow_cull_mask\0" . as_ptr () as * const c_char) ; table . canvas_light_set_layer_range = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_layer_range\0" . as_ptr () as * const c_char) ; table . canvas_light_set_mode = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_mode\0" . as_ptr () as * const c_char) ; table . canvas_light_set_scale = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_scale\0" . as_ptr () as * const c_char) ; table . canvas_light_set_shadow_buffer_size = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_shadow_buffer_size\0" . as_ptr () as * const c_char) ; table . canvas_light_set_shadow_color = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_shadow_color\0" . as_ptr () as * const c_char) ; table . canvas_light_set_shadow_enabled = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_shadow_enabled\0" . as_ptr () as * const c_char) ; table . canvas_light_set_shadow_filter = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_shadow_filter\0" . as_ptr () as * const c_char) ; table . canvas_light_set_shadow_gradient_length = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_shadow_gradient_length\0" . as_ptr () as * const c_char) ; table . canvas_light_set_shadow_smooth = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_shadow_smooth\0" . as_ptr () as * const c_char) ; table . canvas_light_set_texture = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_texture\0" . as_ptr () as * const c_char) ; table . canvas_light_set_texture_offset = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_texture_offset\0" . as_ptr () as * const c_char) ; table . canvas_light_set_transform = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_transform\0" . as_ptr () as * const c_char) ; table . canvas_light_set_z_range = (gd_api . godot_method_bind_get_method) (class_name , "canvas_light_set_z_range\0" . as_ptr () as * const c_char) ; table . canvas_occluder_polygon_create = (gd_api . godot_method_bind_get_method) (class_name , "canvas_occluder_polygon_create\0" . as_ptr () as * const c_char) ; table . canvas_occluder_polygon_set_cull_mode = (gd_api . godot_method_bind_get_method) (class_name , "canvas_occluder_polygon_set_cull_mode\0" . as_ptr () as * const c_char) ; table . canvas_occluder_polygon_set_shape = (gd_api . godot_method_bind_get_method) (class_name , "canvas_occluder_polygon_set_shape\0" . as_ptr () as * const c_char) ; table . canvas_occluder_polygon_set_shape_as_lines = (gd_api . godot_method_bind_get_method) (class_name , "canvas_occluder_polygon_set_shape_as_lines\0" . as_ptr () as * const c_char) ; table . canvas_set_item_mirroring = (gd_api . godot_method_bind_get_method) (class_name , "canvas_set_item_mirroring\0" . as_ptr () as * const c_char) ; table . canvas_set_modulate = (gd_api . godot_method_bind_get_method) (class_name , "canvas_set_modulate\0" . as_ptr () as * const c_char) ; table . directional_light_create = (gd_api . godot_method_bind_get_method) (class_name , "directional_light_create\0" . as_ptr () as * const c_char) ; table . draw = (gd_api . godot_method_bind_get_method) (class_name , "draw\0" . as_ptr () as * const c_char) ; table . environment_create = (gd_api . godot_method_bind_get_method) (class_name , "environment_create\0" . as_ptr () as * const c_char) ; table . environment_set_adjustment = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_adjustment\0" . as_ptr () as * const c_char) ; table . environment_set_ambient_light = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_ambient_light\0" . as_ptr () as * const c_char) ; table . environment_set_background = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_background\0" . as_ptr () as * const c_char) ; table . environment_set_bg_color = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_bg_color\0" . as_ptr () as * const c_char) ; table . environment_set_bg_energy = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_bg_energy\0" . as_ptr () as * const c_char) ; table . environment_set_canvas_max_layer = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_canvas_max_layer\0" . as_ptr () as * const c_char) ; table . environment_set_dof_blur_far = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_dof_blur_far\0" . as_ptr () as * const c_char) ; table . environment_set_dof_blur_near = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_dof_blur_near\0" . as_ptr () as * const c_char) ; table . environment_set_fog = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_fog\0" . as_ptr () as * const c_char) ; table . environment_set_fog_depth = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_fog_depth\0" . as_ptr () as * const c_char) ; table . environment_set_fog_height = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_fog_height\0" . as_ptr () as * const c_char) ; table . environment_set_glow = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_glow\0" . as_ptr () as * const c_char) ; table . environment_set_sky = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_sky\0" . as_ptr () as * const c_char) ; table . environment_set_sky_custom_fov = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_sky_custom_fov\0" . as_ptr () as * const c_char) ; table . environment_set_sky_orientation = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_sky_orientation\0" . as_ptr () as * const c_char) ; table . environment_set_ssao = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_ssao\0" . as_ptr () as * const c_char) ; table . environment_set_ssr = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_ssr\0" . as_ptr () as * const c_char) ; table . environment_set_tonemap = (gd_api . godot_method_bind_get_method) (class_name , "environment_set_tonemap\0" . as_ptr () as * const c_char) ; table . finish = (gd_api . godot_method_bind_get_method) (class_name , "finish\0" . as_ptr () as * const c_char) ; table . force_draw = (gd_api . godot_method_bind_get_method) (class_name , "force_draw\0" . as_ptr () as * const c_char) ; table . force_sync = (gd_api . godot_method_bind_get_method) (class_name , "force_sync\0" . as_ptr () as * const c_char) ; table . free_rid = (gd_api . godot_method_bind_get_method) (class_name , "free_rid\0" . as_ptr () as * const c_char) ; table . get_render_info = (gd_api . godot_method_bind_get_method) (class_name , "get_render_info\0" . as_ptr () as * const c_char) ; table . get_test_cube = (gd_api . godot_method_bind_get_method) (class_name , "get_test_cube\0" . as_ptr () as * const c_char) ; table . get_test_texture = (gd_api . godot_method_bind_get_method) (class_name , "get_test_texture\0" . as_ptr () as * const c_char) ; table . get_video_adapter_name = (gd_api . godot_method_bind_get_method) (class_name , "get_video_adapter_name\0" . as_ptr () as * const c_char) ; table . get_video_adapter_vendor = (gd_api . godot_method_bind_get_method) (class_name , "get_video_adapter_vendor\0" . as_ptr () as * const c_char) ; table . get_white_texture = (gd_api . godot_method_bind_get_method) (class_name , "get_white_texture\0" . as_ptr () as * const c_char) ; table . gi_probe_create = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_create\0" . as_ptr () as * const c_char) ; table . gi_probe_get_bias = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_get_bias\0" . as_ptr () as * const c_char) ; table . gi_probe_get_bounds = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_get_bounds\0" . as_ptr () as * const c_char) ; table . gi_probe_get_cell_size = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_get_cell_size\0" . as_ptr () as * const c_char) ; table . gi_probe_get_dynamic_data = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_get_dynamic_data\0" . as_ptr () as * const c_char) ; table . gi_probe_get_dynamic_range = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_get_dynamic_range\0" . as_ptr () as * const c_char) ; table . gi_probe_get_energy = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_get_energy\0" . as_ptr () as * const c_char) ; table . gi_probe_get_normal_bias = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_get_normal_bias\0" . as_ptr () as * const c_char) ; table . gi_probe_get_propagation = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_get_propagation\0" . as_ptr () as * const c_char) ; table . gi_probe_get_to_cell_xform = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_get_to_cell_xform\0" . as_ptr () as * const c_char) ; table . gi_probe_is_compressed = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_is_compressed\0" . as_ptr () as * const c_char) ; table . gi_probe_is_interior = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_is_interior\0" . as_ptr () as * const c_char) ; table . gi_probe_set_bias = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_set_bias\0" . as_ptr () as * const c_char) ; table . gi_probe_set_bounds = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_set_bounds\0" . as_ptr () as * const c_char) ; table . gi_probe_set_cell_size = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_set_cell_size\0" . as_ptr () as * const c_char) ; table . gi_probe_set_compress = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_set_compress\0" . as_ptr () as * const c_char) ; table . gi_probe_set_dynamic_data = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_set_dynamic_data\0" . as_ptr () as * const c_char) ; table . gi_probe_set_dynamic_range = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_set_dynamic_range\0" . as_ptr () as * const c_char) ; table . gi_probe_set_energy = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_set_energy\0" . as_ptr () as * const c_char) ; table . gi_probe_set_interior = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_set_interior\0" . as_ptr () as * const c_char) ; table . gi_probe_set_normal_bias = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_set_normal_bias\0" . as_ptr () as * const c_char) ; table . gi_probe_set_propagation = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_set_propagation\0" . as_ptr () as * const c_char) ; table . gi_probe_set_to_cell_xform = (gd_api . godot_method_bind_get_method) (class_name , "gi_probe_set_to_cell_xform\0" . as_ptr () as * const c_char) ; table . has_changed = (gd_api . godot_method_bind_get_method) (class_name , "has_changed\0" . as_ptr () as * const c_char) ; table . has_feature = (gd_api . godot_method_bind_get_method) (class_name , "has_feature\0" . as_ptr () as * const c_char) ; table . has_os_feature = (gd_api . godot_method_bind_get_method) (class_name , "has_os_feature\0" . as_ptr () as * const c_char) ; table . immediate_begin = (gd_api . godot_method_bind_get_method) (class_name , "immediate_begin\0" . as_ptr () as * const c_char) ; table . immediate_clear = (gd_api . godot_method_bind_get_method) (class_name , "immediate_clear\0" . as_ptr () as * const c_char) ; table . immediate_color = (gd_api . godot_method_bind_get_method) (class_name , "immediate_color\0" . as_ptr () as * const c_char) ; table . immediate_create = (gd_api . godot_method_bind_get_method) (class_name , "immediate_create\0" . as_ptr () as * const c_char) ; table . immediate_end = (gd_api . godot_method_bind_get_method) (class_name , "immediate_end\0" . as_ptr () as * const c_char) ; table . immediate_get_material = (gd_api . godot_method_bind_get_method) (class_name , "immediate_get_material\0" . as_ptr () as * const c_char) ; table . immediate_normal = (gd_api . godot_method_bind_get_method) (class_name , "immediate_normal\0" . as_ptr () as * const c_char) ; table . immediate_set_material = (gd_api . godot_method_bind_get_method) (class_name , "immediate_set_material\0" . as_ptr () as * const c_char) ; table . immediate_tangent = (gd_api . godot_method_bind_get_method) (class_name , "immediate_tangent\0" . as_ptr () as * const c_char) ; table . immediate_uv = (gd_api . godot_method_bind_get_method) (class_name , "immediate_uv\0" . as_ptr () as * const c_char) ; table . immediate_uv2 = (gd_api . godot_method_bind_get_method) (class_name , "immediate_uv2\0" . as_ptr () as * const c_char) ; table . immediate_vertex = (gd_api . godot_method_bind_get_method) (class_name , "immediate_vertex\0" . as_ptr () as * const c_char) ; table . immediate_vertex_2d = (gd_api . godot_method_bind_get_method) (class_name , "immediate_vertex_2d\0" . as_ptr () as * const c_char) ; table . init = (gd_api . godot_method_bind_get_method) (class_name , "init\0" . as_ptr () as * const c_char) ; table . instance_attach_object_instance_id = (gd_api . godot_method_bind_get_method) (class_name , "instance_attach_object_instance_id\0" . as_ptr () as * const c_char) ; table . instance_attach_skeleton = (gd_api . godot_method_bind_get_method) (class_name , "instance_attach_skeleton\0" . as_ptr () as * const c_char) ; table . instance_create = (gd_api . godot_method_bind_get_method) (class_name , "instance_create\0" . as_ptr () as * const c_char) ; table . instance_create2 = (gd_api . godot_method_bind_get_method) (class_name , "instance_create2\0" . as_ptr () as * const c_char) ; table . instance_geometry_set_as_instance_lod = (gd_api . godot_method_bind_get_method) (class_name , "instance_geometry_set_as_instance_lod\0" . as_ptr () as * const c_char) ; table . instance_geometry_set_cast_shadows_setting = (gd_api . godot_method_bind_get_method) (class_name , "instance_geometry_set_cast_shadows_setting\0" . as_ptr () as * const c_char) ; table . instance_geometry_set_draw_range = (gd_api . godot_method_bind_get_method) (class_name , "instance_geometry_set_draw_range\0" . as_ptr () as * const c_char) ; table . instance_geometry_set_flag = (gd_api . godot_method_bind_get_method) (class_name , "instance_geometry_set_flag\0" . as_ptr () as * const c_char) ; table . instance_geometry_set_material_override = (gd_api . godot_method_bind_get_method) (class_name , "instance_geometry_set_material_override\0" . as_ptr () as * const c_char) ; table . instance_set_base = (gd_api . godot_method_bind_get_method) (class_name , "instance_set_base\0" . as_ptr () as * const c_char) ; table . instance_set_blend_shape_weight = (gd_api . godot_method_bind_get_method) (class_name , "instance_set_blend_shape_weight\0" . as_ptr () as * const c_char) ; table . instance_set_custom_aabb = (gd_api . godot_method_bind_get_method) (class_name , "instance_set_custom_aabb\0" . as_ptr () as * const c_char) ; table . instance_set_exterior = (gd_api . godot_method_bind_get_method) (class_name , "instance_set_exterior\0" . as_ptr () as * const c_char) ; table . instance_set_extra_visibility_margin = (gd_api . godot_method_bind_get_method) (class_name , "instance_set_extra_visibility_margin\0" . as_ptr () as * const c_char) ; table . instance_set_layer_mask = (gd_api . godot_method_bind_get_method) (class_name , "instance_set_layer_mask\0" . as_ptr () as * const c_char) ; table . instance_set_scenario = (gd_api . godot_method_bind_get_method) (class_name , "instance_set_scenario\0" . as_ptr () as * const c_char) ; table . instance_set_surface_material = (gd_api . godot_method_bind_get_method) (class_name , "instance_set_surface_material\0" . as_ptr () as * const c_char) ; table . instance_set_transform = (gd_api . godot_method_bind_get_method) (class_name , "instance_set_transform\0" . as_ptr () as * const c_char) ; table . instance_set_use_lightmap = (gd_api . godot_method_bind_get_method) (class_name , "instance_set_use_lightmap\0" . as_ptr () as * const c_char) ; table . instance_set_visible = (gd_api . godot_method_bind_get_method) (class_name , "instance_set_visible\0" . as_ptr () as * const c_char) ; table . instances_cull_aabb = (gd_api . godot_method_bind_get_method) (class_name , "instances_cull_aabb\0" . as_ptr () as * const c_char) ; table . instances_cull_convex = (gd_api . godot_method_bind_get_method) (class_name , "instances_cull_convex\0" . as_ptr () as * const c_char) ; table . instances_cull_ray = (gd_api . godot_method_bind_get_method) (class_name , "instances_cull_ray\0" . as_ptr () as * const c_char) ; table . is_render_loop_enabled = (gd_api . godot_method_bind_get_method) (class_name , "is_render_loop_enabled\0" . as_ptr () as * const c_char) ; table . light_directional_set_blend_splits = (gd_api . godot_method_bind_get_method) (class_name , "light_directional_set_blend_splits\0" . as_ptr () as * const c_char) ; table . light_directional_set_shadow_depth_range_mode = (gd_api . godot_method_bind_get_method) (class_name , "light_directional_set_shadow_depth_range_mode\0" . as_ptr () as * const c_char) ; table . light_directional_set_shadow_mode = (gd_api . godot_method_bind_get_method) (class_name , "light_directional_set_shadow_mode\0" . as_ptr () as * const c_char) ; table . light_omni_set_shadow_detail = (gd_api . godot_method_bind_get_method) (class_name , "light_omni_set_shadow_detail\0" . as_ptr () as * const c_char) ; table . light_omni_set_shadow_mode = (gd_api . godot_method_bind_get_method) (class_name , "light_omni_set_shadow_mode\0" . as_ptr () as * const c_char) ; table . light_set_bake_mode = (gd_api . godot_method_bind_get_method) (class_name , "light_set_bake_mode\0" . as_ptr () as * const c_char) ; table . light_set_color = (gd_api . godot_method_bind_get_method) (class_name , "light_set_color\0" . as_ptr () as * const c_char) ; table . light_set_cull_mask = (gd_api . godot_method_bind_get_method) (class_name , "light_set_cull_mask\0" . as_ptr () as * const c_char) ; table . light_set_negative = (gd_api . godot_method_bind_get_method) (class_name , "light_set_negative\0" . as_ptr () as * const c_char) ; table . light_set_param = (gd_api . godot_method_bind_get_method) (class_name , "light_set_param\0" . as_ptr () as * const c_char) ; table . light_set_projector = (gd_api . godot_method_bind_get_method) (class_name , "light_set_projector\0" . as_ptr () as * const c_char) ; table . light_set_reverse_cull_face_mode = (gd_api . godot_method_bind_get_method) (class_name , "light_set_reverse_cull_face_mode\0" . as_ptr () as * const c_char) ; table . light_set_shadow = (gd_api . godot_method_bind_get_method) (class_name , "light_set_shadow\0" . as_ptr () as * const c_char) ; table . light_set_shadow_color = (gd_api . godot_method_bind_get_method) (class_name , "light_set_shadow_color\0" . as_ptr () as * const c_char) ; table . light_set_use_gi = (gd_api . godot_method_bind_get_method) (class_name , "light_set_use_gi\0" . as_ptr () as * const c_char) ; table . lightmap_capture_create = (gd_api . godot_method_bind_get_method) (class_name , "lightmap_capture_create\0" . as_ptr () as * const c_char) ; table . lightmap_capture_get_bounds = (gd_api . godot_method_bind_get_method) (class_name , "lightmap_capture_get_bounds\0" . as_ptr () as * const c_char) ; table . lightmap_capture_get_energy = (gd_api . godot_method_bind_get_method) (class_name , "lightmap_capture_get_energy\0" . as_ptr () as * const c_char) ; table . lightmap_capture_get_octree = (gd_api . godot_method_bind_get_method) (class_name , "lightmap_capture_get_octree\0" . as_ptr () as * const c_char) ; table . lightmap_capture_get_octree_cell_subdiv = (gd_api . godot_method_bind_get_method) (class_name , "lightmap_capture_get_octree_cell_subdiv\0" . as_ptr () as * const c_char) ; table . lightmap_capture_get_octree_cell_transform = (gd_api . godot_method_bind_get_method) (class_name , "lightmap_capture_get_octree_cell_transform\0" . as_ptr () as * const c_char) ; table . lightmap_capture_is_interior = (gd_api . godot_method_bind_get_method) (class_name , "lightmap_capture_is_interior\0" . as_ptr () as * const c_char) ; table . lightmap_capture_set_bounds = (gd_api . godot_method_bind_get_method) (class_name , "lightmap_capture_set_bounds\0" . as_ptr () as * const c_char) ; table . lightmap_capture_set_energy = (gd_api . godot_method_bind_get_method) (class_name , "lightmap_capture_set_energy\0" . as_ptr () as * const c_char) ; table . lightmap_capture_set_interior = (gd_api . godot_method_bind_get_method) (class_name , "lightmap_capture_set_interior\0" . as_ptr () as * const c_char) ; table . lightmap_capture_set_octree = (gd_api . godot_method_bind_get_method) (class_name , "lightmap_capture_set_octree\0" . as_ptr () as * const c_char) ; table . lightmap_capture_set_octree_cell_subdiv = (gd_api . godot_method_bind_get_method) (class_name , "lightmap_capture_set_octree_cell_subdiv\0" . as_ptr () as * const c_char) ; table . lightmap_capture_set_octree_cell_transform = (gd_api . godot_method_bind_get_method) (class_name , "lightmap_capture_set_octree_cell_transform\0" . as_ptr () as * const c_char) ; table . make_sphere_mesh = (gd_api . godot_method_bind_get_method) (class_name , "make_sphere_mesh\0" . as_ptr () as * const c_char) ; table . material_create = (gd_api . godot_method_bind_get_method) (class_name , "material_create\0" . as_ptr () as * const c_char) ; table . material_get_param = (gd_api . godot_method_bind_get_method) (class_name , "material_get_param\0" . as_ptr () as * const c_char) ; table . material_get_param_default = (gd_api . godot_method_bind_get_method) (class_name , "material_get_param_default\0" . as_ptr () as * const c_char) ; table . material_get_shader = (gd_api . godot_method_bind_get_method) (class_name , "material_get_shader\0" . as_ptr () as * const c_char) ; table . material_set_line_width = (gd_api . godot_method_bind_get_method) (class_name , "material_set_line_width\0" . as_ptr () as * const c_char) ; table . material_set_next_pass = (gd_api . godot_method_bind_get_method) (class_name , "material_set_next_pass\0" . as_ptr () as * const c_char) ; table . material_set_param = (gd_api . godot_method_bind_get_method) (class_name , "material_set_param\0" . as_ptr () as * const c_char) ; table . material_set_render_priority = (gd_api . godot_method_bind_get_method) (class_name , "material_set_render_priority\0" . as_ptr () as * const c_char) ; table . material_set_shader = (gd_api . godot_method_bind_get_method) (class_name , "material_set_shader\0" . as_ptr () as * const c_char) ; table . mesh_add_surface_from_arrays = (gd_api . godot_method_bind_get_method) (class_name , "mesh_add_surface_from_arrays\0" . as_ptr () as * const c_char) ; table . mesh_clear = (gd_api . godot_method_bind_get_method) (class_name , "mesh_clear\0" . as_ptr () as * const c_char) ; table . mesh_create = (gd_api . godot_method_bind_get_method) (class_name , "mesh_create\0" . as_ptr () as * const c_char) ; table . mesh_get_blend_shape_count = (gd_api . godot_method_bind_get_method) (class_name , "mesh_get_blend_shape_count\0" . as_ptr () as * const c_char) ; table . mesh_get_blend_shape_mode = (gd_api . godot_method_bind_get_method) (class_name , "mesh_get_blend_shape_mode\0" . as_ptr () as * const c_char) ; table . mesh_get_custom_aabb = (gd_api . godot_method_bind_get_method) (class_name , "mesh_get_custom_aabb\0" . as_ptr () as * const c_char) ; table . mesh_get_surface_count = (gd_api . godot_method_bind_get_method) (class_name , "mesh_get_surface_count\0" . as_ptr () as * const c_char) ; table . mesh_remove_surface = (gd_api . godot_method_bind_get_method) (class_name , "mesh_remove_surface\0" . as_ptr () as * const c_char) ; table . mesh_set_blend_shape_count = (gd_api . godot_method_bind_get_method) (class_name , "mesh_set_blend_shape_count\0" . as_ptr () as * const c_char) ; table . mesh_set_blend_shape_mode = (gd_api . godot_method_bind_get_method) (class_name , "mesh_set_blend_shape_mode\0" . as_ptr () as * const c_char) ; table . mesh_set_custom_aabb = (gd_api . godot_method_bind_get_method) (class_name , "mesh_set_custom_aabb\0" . as_ptr () as * const c_char) ; table . mesh_surface_get_aabb = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_get_aabb\0" . as_ptr () as * const c_char) ; table . mesh_surface_get_array = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_get_array\0" . as_ptr () as * const c_char) ; table . mesh_surface_get_array_index_len = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_get_array_index_len\0" . as_ptr () as * const c_char) ; table . mesh_surface_get_array_len = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_get_array_len\0" . as_ptr () as * const c_char) ; table . mesh_surface_get_arrays = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_get_arrays\0" . as_ptr () as * const c_char) ; table . mesh_surface_get_blend_shape_arrays = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_get_blend_shape_arrays\0" . as_ptr () as * const c_char) ; table . mesh_surface_get_format = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_get_format\0" . as_ptr () as * const c_char) ; table . mesh_surface_get_format_offset = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_get_format_offset\0" . as_ptr () as * const c_char) ; table . mesh_surface_get_format_stride = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_get_format_stride\0" . as_ptr () as * const c_char) ; table . mesh_surface_get_index_array = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_get_index_array\0" . as_ptr () as * const c_char) ; table . mesh_surface_get_material = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_get_material\0" . as_ptr () as * const c_char) ; table . mesh_surface_get_primitive_type = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_get_primitive_type\0" . as_ptr () as * const c_char) ; table . mesh_surface_get_skeleton_aabb = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_get_skeleton_aabb\0" . as_ptr () as * const c_char) ; table . mesh_surface_set_material = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_set_material\0" . as_ptr () as * const c_char) ; table . mesh_surface_update_region = (gd_api . godot_method_bind_get_method) (class_name , "mesh_surface_update_region\0" . as_ptr () as * const c_char) ; table . multimesh_allocate = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_allocate\0" . as_ptr () as * const c_char) ; table . multimesh_create = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_create\0" . as_ptr () as * const c_char) ; table . multimesh_get_aabb = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_get_aabb\0" . as_ptr () as * const c_char) ; table . multimesh_get_instance_count = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_get_instance_count\0" . as_ptr () as * const c_char) ; table . multimesh_get_mesh = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_get_mesh\0" . as_ptr () as * const c_char) ; table . multimesh_get_visible_instances = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_get_visible_instances\0" . as_ptr () as * const c_char) ; table . multimesh_instance_get_color = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_instance_get_color\0" . as_ptr () as * const c_char) ; table . multimesh_instance_get_custom_data = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_instance_get_custom_data\0" . as_ptr () as * const c_char) ; table . multimesh_instance_get_transform = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_instance_get_transform\0" . as_ptr () as * const c_char) ; table . multimesh_instance_get_transform_2d = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_instance_get_transform_2d\0" . as_ptr () as * const c_char) ; table . multimesh_instance_set_color = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_instance_set_color\0" . as_ptr () as * const c_char) ; table . multimesh_instance_set_custom_data = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_instance_set_custom_data\0" . as_ptr () as * const c_char) ; table . multimesh_instance_set_transform = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_instance_set_transform\0" . as_ptr () as * const c_char) ; table . multimesh_instance_set_transform_2d = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_instance_set_transform_2d\0" . as_ptr () as * const c_char) ; table . multimesh_set_as_bulk_array = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_set_as_bulk_array\0" . as_ptr () as * const c_char) ; table . multimesh_set_mesh = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_set_mesh\0" . as_ptr () as * const c_char) ; table . multimesh_set_visible_instances = (gd_api . godot_method_bind_get_method) (class_name , "multimesh_set_visible_instances\0" . as_ptr () as * const c_char) ; table . omni_light_create = (gd_api . godot_method_bind_get_method) (class_name , "omni_light_create\0" . as_ptr () as * const c_char) ; table . particles_create = (gd_api . godot_method_bind_get_method) (class_name , "particles_create\0" . as_ptr () as * const c_char) ; table . particles_get_current_aabb = (gd_api . godot_method_bind_get_method) (class_name , "particles_get_current_aabb\0" . as_ptr () as * const c_char) ; table . particles_get_emitting = (gd_api . godot_method_bind_get_method) (class_name , "particles_get_emitting\0" . as_ptr () as * const c_char) ; table . particles_is_inactive = (gd_api . godot_method_bind_get_method) (class_name , "particles_is_inactive\0" . as_ptr () as * const c_char) ; table . particles_request_process = (gd_api . godot_method_bind_get_method) (class_name , "particles_request_process\0" . as_ptr () as * const c_char) ; table . particles_restart = (gd_api . godot_method_bind_get_method) (class_name , "particles_restart\0" . as_ptr () as * const c_char) ; table . particles_set_amount = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_amount\0" . as_ptr () as * const c_char) ; table . particles_set_custom_aabb = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_custom_aabb\0" . as_ptr () as * const c_char) ; table . particles_set_draw_order = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_draw_order\0" . as_ptr () as * const c_char) ; table . particles_set_draw_pass_mesh = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_draw_pass_mesh\0" . as_ptr () as * const c_char) ; table . particles_set_draw_passes = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_draw_passes\0" . as_ptr () as * const c_char) ; table . particles_set_emission_transform = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_emission_transform\0" . as_ptr () as * const c_char) ; table . particles_set_emitting = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_emitting\0" . as_ptr () as * const c_char) ; table . particles_set_explosiveness_ratio = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_explosiveness_ratio\0" . as_ptr () as * const c_char) ; table . particles_set_fixed_fps = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_fixed_fps\0" . as_ptr () as * const c_char) ; table . particles_set_fractional_delta = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_fractional_delta\0" . as_ptr () as * const c_char) ; table . particles_set_lifetime = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_lifetime\0" . as_ptr () as * const c_char) ; table . particles_set_one_shot = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_one_shot\0" . as_ptr () as * const c_char) ; table . particles_set_pre_process_time = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_pre_process_time\0" . as_ptr () as * const c_char) ; table . particles_set_process_material = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_process_material\0" . as_ptr () as * const c_char) ; table . particles_set_randomness_ratio = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_randomness_ratio\0" . as_ptr () as * const c_char) ; table . particles_set_speed_scale = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_speed_scale\0" . as_ptr () as * const c_char) ; table . particles_set_use_local_coordinates = (gd_api . godot_method_bind_get_method) (class_name , "particles_set_use_local_coordinates\0" . as_ptr () as * const c_char) ; table . reflection_probe_create = (gd_api . godot_method_bind_get_method) (class_name , "reflection_probe_create\0" . as_ptr () as * const c_char) ; table . reflection_probe_set_as_interior = (gd_api . godot_method_bind_get_method) (class_name , "reflection_probe_set_as_interior\0" . as_ptr () as * const c_char) ; table . reflection_probe_set_cull_mask = (gd_api . godot_method_bind_get_method) (class_name , "reflection_probe_set_cull_mask\0" . as_ptr () as * const c_char) ; table . reflection_probe_set_enable_box_projection = (gd_api . godot_method_bind_get_method) (class_name , "reflection_probe_set_enable_box_projection\0" . as_ptr () as * const c_char) ; table . reflection_probe_set_enable_shadows = (gd_api . godot_method_bind_get_method) (class_name , "reflection_probe_set_enable_shadows\0" . as_ptr () as * const c_char) ; table . reflection_probe_set_extents = (gd_api . godot_method_bind_get_method) (class_name , "reflection_probe_set_extents\0" . as_ptr () as * const c_char) ; table . reflection_probe_set_intensity = (gd_api . godot_method_bind_get_method) (class_name , "reflection_probe_set_intensity\0" . as_ptr () as * const c_char) ; table . reflection_probe_set_interior_ambient = (gd_api . godot_method_bind_get_method) (class_name , "reflection_probe_set_interior_ambient\0" . as_ptr () as * const c_char) ; table . reflection_probe_set_interior_ambient_energy = (gd_api . godot_method_bind_get_method) (class_name , "reflection_probe_set_interior_ambient_energy\0" . as_ptr () as * const c_char) ; table . reflection_probe_set_interior_ambient_probe_contribution = (gd_api . godot_method_bind_get_method) (class_name , "reflection_probe_set_interior_ambient_probe_contribution\0" . as_ptr () as * const c_char) ; table . reflection_probe_set_max_distance = (gd_api . godot_method_bind_get_method) (class_name , "reflection_probe_set_max_distance\0" . as_ptr () as * const c_char) ; table . reflection_probe_set_origin_offset = (gd_api . godot_method_bind_get_method) (class_name , "reflection_probe_set_origin_offset\0" . as_ptr () as * const c_char) ; table . reflection_probe_set_update_mode = (gd_api . godot_method_bind_get_method) (class_name , "reflection_probe_set_update_mode\0" . as_ptr () as * const c_char) ; table . request_frame_drawn_callback = (gd_api . godot_method_bind_get_method) (class_name , "request_frame_drawn_callback\0" . as_ptr () as * const c_char) ; table . scenario_create = (gd_api . godot_method_bind_get_method) (class_name , "scenario_create\0" . as_ptr () as * const c_char) ; table . scenario_set_debug = (gd_api . godot_method_bind_get_method) (class_name , "scenario_set_debug\0" . as_ptr () as * const c_char) ; table . scenario_set_environment = (gd_api . godot_method_bind_get_method) (class_name , "scenario_set_environment\0" . as_ptr () as * const c_char) ; table . scenario_set_fallback_environment = (gd_api . godot_method_bind_get_method) (class_name , "scenario_set_fallback_environment\0" . as_ptr () as * const c_char) ; table . scenario_set_reflection_atlas_size = (gd_api . godot_method_bind_get_method) (class_name , "scenario_set_reflection_atlas_size\0" . as_ptr () as * const c_char) ; table . set_boot_image = (gd_api . godot_method_bind_get_method) (class_name , "set_boot_image\0" . as_ptr () as * const c_char) ; table . set_debug_generate_wireframes = (gd_api . godot_method_bind_get_method) (class_name , "set_debug_generate_wireframes\0" . as_ptr () as * const c_char) ; table . set_default_clear_color = (gd_api . godot_method_bind_get_method) (class_name , "set_default_clear_color\0" . as_ptr () as * const c_char) ; table . set_render_loop_enabled = (gd_api . godot_method_bind_get_method) (class_name , "set_render_loop_enabled\0" . as_ptr () as * const c_char) ; table . set_shader_time_scale = (gd_api . godot_method_bind_get_method) (class_name , "set_shader_time_scale\0" . as_ptr () as * const c_char) ; table . shader_create = (gd_api . godot_method_bind_get_method) (class_name , "shader_create\0" . as_ptr () as * const c_char) ; table . shader_get_code = (gd_api . godot_method_bind_get_method) (class_name , "shader_get_code\0" . as_ptr () as * const c_char) ; table . shader_get_default_texture_param = (gd_api . godot_method_bind_get_method) (class_name , "shader_get_default_texture_param\0" . as_ptr () as * const c_char) ; table . shader_get_param_list = (gd_api . godot_method_bind_get_method) (class_name , "shader_get_param_list\0" . as_ptr () as * const c_char) ; table . shader_set_code = (gd_api . godot_method_bind_get_method) (class_name , "shader_set_code\0" . as_ptr () as * const c_char) ; table . shader_set_default_texture_param = (gd_api . godot_method_bind_get_method) (class_name , "shader_set_default_texture_param\0" . as_ptr () as * const c_char) ; table . skeleton_allocate = (gd_api . godot_method_bind_get_method) (class_name , "skeleton_allocate\0" . as_ptr () as * const c_char) ; table . skeleton_bone_get_transform = (gd_api . godot_method_bind_get_method) (class_name , "skeleton_bone_get_transform\0" . as_ptr () as * const c_char) ; table . skeleton_bone_get_transform_2d = (gd_api . godot_method_bind_get_method) (class_name , "skeleton_bone_get_transform_2d\0" . as_ptr () as * const c_char) ; table . skeleton_bone_set_transform = (gd_api . godot_method_bind_get_method) (class_name , "skeleton_bone_set_transform\0" . as_ptr () as * const c_char) ; table . skeleton_bone_set_transform_2d = (gd_api . godot_method_bind_get_method) (class_name , "skeleton_bone_set_transform_2d\0" . as_ptr () as * const c_char) ; table . skeleton_create = (gd_api . godot_method_bind_get_method) (class_name , "skeleton_create\0" . as_ptr () as * const c_char) ; table . skeleton_get_bone_count = (gd_api . godot_method_bind_get_method) (class_name , "skeleton_get_bone_count\0" . as_ptr () as * const c_char) ; table . sky_create = (gd_api . godot_method_bind_get_method) (class_name , "sky_create\0" . as_ptr () as * const c_char) ; table . sky_set_texture = (gd_api . godot_method_bind_get_method) (class_name , "sky_set_texture\0" . as_ptr () as * const c_char) ; table . spot_light_create = (gd_api . godot_method_bind_get_method) (class_name , "spot_light_create\0" . as_ptr () as * const c_char) ; table . sync = (gd_api . godot_method_bind_get_method) (class_name , "sync\0" . as_ptr () as * const c_char) ; table . texture_allocate = (gd_api . godot_method_bind_get_method) (class_name , "texture_allocate\0" . as_ptr () as * const c_char) ; table . texture_bind = (gd_api . godot_method_bind_get_method) (class_name , "texture_bind\0" . as_ptr () as * const c_char) ; table . texture_create = (gd_api . godot_method_bind_get_method) (class_name , "texture_create\0" . as_ptr () as * const c_char) ; table . texture_create_from_image = (gd_api . godot_method_bind_get_method) (class_name , "texture_create_from_image\0" . as_ptr () as * const c_char) ; table . texture_debug_usage = (gd_api . godot_method_bind_get_method) (class_name , "texture_debug_usage\0" . as_ptr () as * const c_char) ; table . texture_get_data = (gd_api . godot_method_bind_get_method) (class_name , "texture_get_data\0" . as_ptr () as * const c_char) ; table . texture_get_depth = (gd_api . godot_method_bind_get_method) (class_name , "texture_get_depth\0" . as_ptr () as * const c_char) ; table . texture_get_flags = (gd_api . godot_method_bind_get_method) (class_name , "texture_get_flags\0" . as_ptr () as * const c_char) ; table . texture_get_format = (gd_api . godot_method_bind_get_method) (class_name , "texture_get_format\0" . as_ptr () as * const c_char) ; table . texture_get_height = (gd_api . godot_method_bind_get_method) (class_name , "texture_get_height\0" . as_ptr () as * const c_char) ; table . texture_get_path = (gd_api . godot_method_bind_get_method) (class_name , "texture_get_path\0" . as_ptr () as * const c_char) ; table . texture_get_texid = (gd_api . godot_method_bind_get_method) (class_name , "texture_get_texid\0" . as_ptr () as * const c_char) ; table . texture_get_type = (gd_api . godot_method_bind_get_method) (class_name , "texture_get_type\0" . as_ptr () as * const c_char) ; table . texture_get_width = (gd_api . godot_method_bind_get_method) (class_name , "texture_get_width\0" . as_ptr () as * const c_char) ; table . texture_set_data = (gd_api . godot_method_bind_get_method) (class_name , "texture_set_data\0" . as_ptr () as * const c_char) ; table . texture_set_data_partial = (gd_api . godot_method_bind_get_method) (class_name , "texture_set_data_partial\0" . as_ptr () as * const c_char) ; table . texture_set_flags = (gd_api . godot_method_bind_get_method) (class_name , "texture_set_flags\0" . as_ptr () as * const c_char) ; table . texture_set_path = (gd_api . godot_method_bind_get_method) (class_name , "texture_set_path\0" . as_ptr () as * const c_char) ; table . texture_set_shrink_all_x2_on_set_data = (gd_api . godot_method_bind_get_method) (class_name , "texture_set_shrink_all_x2_on_set_data\0" . as_ptr () as * const c_char) ; table . texture_set_size_override = (gd_api . godot_method_bind_get_method) (class_name , "texture_set_size_override\0" . as_ptr () as * const c_char) ; table . textures_keep_original = (gd_api . godot_method_bind_get_method) (class_name , "textures_keep_original\0" . as_ptr () as * const c_char) ; table . viewport_attach_camera = (gd_api . godot_method_bind_get_method) (class_name , "viewport_attach_camera\0" . as_ptr () as * const c_char) ; table . viewport_attach_canvas = (gd_api . godot_method_bind_get_method) (class_name , "viewport_attach_canvas\0" . as_ptr () as * const c_char) ; table . viewport_attach_to_screen = (gd_api . godot_method_bind_get_method) (class_name , "viewport_attach_to_screen\0" . as_ptr () as * const c_char) ; table . viewport_create = (gd_api . godot_method_bind_get_method) (class_name , "viewport_create\0" . as_ptr () as * const c_char) ; table . viewport_detach = (gd_api . godot_method_bind_get_method) (class_name , "viewport_detach\0" . as_ptr () as * const c_char) ; table . viewport_get_render_info = (gd_api . godot_method_bind_get_method) (class_name , "viewport_get_render_info\0" . as_ptr () as * const c_char) ; table . viewport_get_texture = (gd_api . godot_method_bind_get_method) (class_name , "viewport_get_texture\0" . as_ptr () as * const c_char) ; table . viewport_remove_canvas = (gd_api . godot_method_bind_get_method) (class_name , "viewport_remove_canvas\0" . as_ptr () as * const c_char) ; table . viewport_set_active = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_active\0" . as_ptr () as * const c_char) ; table . viewport_set_canvas_stacking = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_canvas_stacking\0" . as_ptr () as * const c_char) ; table . viewport_set_canvas_transform = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_canvas_transform\0" . as_ptr () as * const c_char) ; table . viewport_set_clear_mode = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_clear_mode\0" . as_ptr () as * const c_char) ; table . viewport_set_debug_draw = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_debug_draw\0" . as_ptr () as * const c_char) ; table . viewport_set_disable_3d = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_disable_3d\0" . as_ptr () as * const c_char) ; table . viewport_set_disable_environment = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_disable_environment\0" . as_ptr () as * const c_char) ; table . viewport_set_global_canvas_transform = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_global_canvas_transform\0" . as_ptr () as * const c_char) ; table . viewport_set_hdr = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_hdr\0" . as_ptr () as * const c_char) ; table . viewport_set_hide_canvas = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_hide_canvas\0" . as_ptr () as * const c_char) ; table . viewport_set_hide_scenario = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_hide_scenario\0" . as_ptr () as * const c_char) ; table . viewport_set_msaa = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_msaa\0" . as_ptr () as * const c_char) ; table . viewport_set_parent_viewport = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_parent_viewport\0" . as_ptr () as * const c_char) ; table . viewport_set_render_direct_to_screen = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_render_direct_to_screen\0" . as_ptr () as * const c_char) ; table . viewport_set_scenario = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_scenario\0" . as_ptr () as * const c_char) ; table . viewport_set_shadow_atlas_quadrant_subdivision = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_shadow_atlas_quadrant_subdivision\0" . as_ptr () as * const c_char) ; table . viewport_set_shadow_atlas_size = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_shadow_atlas_size\0" . as_ptr () as * const c_char) ; table . viewport_set_size = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_size\0" . as_ptr () as * const c_char) ; table . viewport_set_transparent_background = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_transparent_background\0" . as_ptr () as * const c_char) ; table . viewport_set_update_mode = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_update_mode\0" . as_ptr () as * const c_char) ; table . viewport_set_usage = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_usage\0" . as_ptr () as * const c_char) ; table . viewport_set_use_arvr = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_use_arvr\0" . as_ptr () as * const c_char) ; table . viewport_set_use_debanding = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_use_debanding\0" . as_ptr () as * const c_char) ; table . viewport_set_use_fxaa = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_use_fxaa\0" . as_ptr () as * const c_char) ; table . viewport_set_vflip = (gd_api . godot_method_bind_get_method) (class_name , "viewport_set_vflip\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:46:3679 [INFO] [stdout] | [INFO] [stdout] 46 | ...odTable { class_constructor : None , } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 46 | # [doc = "`core class VisualShaderNodeCustom` inherits `VisualShaderNode` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualshadernodecustom.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nVisualShaderNodeCustom inherits methods from:\n - [VisualShaderNode](struct.VisualShaderNode.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualShaderNodeCustom { this : RawObject < Self > , } impl VisualShaderNodeCustom { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisualShaderNodeCustomMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualShaderNodeCustom { } unsafe impl GodotObject for VisualShaderNodeCustom { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "VisualShaderNodeCustom" } } impl std :: ops :: Deref for VisualShaderNodeCustom { type Target = crate :: generated :: visual_shader_node :: VisualShaderNode ; # [inline] fn deref (& self) -> & crate :: generated :: visual_shader_node :: VisualShaderNode { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualShaderNodeCustom { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: visual_shader_node :: VisualShaderNode { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: visual_shader_node :: VisualShaderNode > for VisualShaderNodeCustom { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for VisualShaderNodeCustom { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for VisualShaderNodeCustom { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualShaderNodeCustom { } impl Instanciable for VisualShaderNodeCustom { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisualShaderNodeCustom :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualShaderNodeCustomMethodTable { pub class_constructor : sys :: godot_class_constructor , } impl VisualShaderNodeCustomMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualShaderNodeCustomMethodTable = VisualShaderNodeCustomMethodTable { class_constructor : None , } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualShaderNodeCustomMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualShaderNodeCustom\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:52:5174 [INFO] [stdout] | [INFO] [stdout] 52 | ... 0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 52 | # [doc = "`core class YSort` inherits `Node2D` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_ysort.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nNon reference counted objects such as the ones of this type are usually owned by the engine.\n\n`YSort` is a reference-only type. Persistent references can\nonly exist in the unsafe `Ref` form.\n\nIn the cases where Rust code owns an object of this type, for example if the object was just\ncreated on the Rust side and not passed to the engine yet, ownership should be either given\nto the engine or the object must be manually destroyed using `Ref::free`, or `Ref::queue_free`\nif it is a `Node`."] # [doc = "\n## Class hierarchy\n\nYSort inherits methods from:\n - [Node2D](struct.Node2D.html)\n - [CanvasItem](struct.CanvasItem.html)\n - [Node](struct.Node.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct YSort { this : RawObject < Self > , } impl YSort { # [doc = "Creates a new instance of this object.\n\nBecause this type is not reference counted, the lifetime of the returned object\nis *not* automatically managed.\n\nImmediately after creation, the object is owned by the caller, and can be\npassed to the engine (in which case the engine will be responsible for\ndestroying the object) or destroyed manually using `Ref::free`, or preferably\n`Ref::queue_free` if it is a `Node`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = YSortMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "If `true`, child nodes are sorted, otherwise sorting is disabled."] # [doc = ""] # [inline] pub fn is_sort_enabled (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = YSortMethodTable :: get (get_api ()) . is_sort_enabled ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "If `true`, child nodes are sorted, otherwise sorting is disabled."] # [doc = ""] # [inline] pub fn set_sort_enabled (& self , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = YSortMethodTable :: get (get_api ()) . set_sort_enabled ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , enabled) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for YSort { } unsafe impl GodotObject for YSort { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "YSort" } } impl QueueFree for YSort { # [inline] unsafe fn godot_queue_free (obj : * mut sys :: godot_object) { let method_bind : * mut sys :: godot_method_bind = crate :: generated :: node :: NodeMethodTable :: get (get_api ()) . queue_free ; crate :: icalls :: icallptr_void (method_bind , obj) } } impl std :: ops :: Deref for YSort { type Target = crate :: generated :: node_2d :: Node2D ; # [inline] fn deref (& self) -> & crate :: generated :: node_2d :: Node2D { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for YSort { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: node_2d :: Node2D { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: node_2d :: Node2D > for YSort { } unsafe impl SubClass < crate :: generated :: canvas_item :: CanvasItem > for YSort { } unsafe impl SubClass < crate :: generated :: node :: Node > for YSort { } unsafe impl SubClass < crate :: generated :: object :: Object > for YSort { } impl Instanciable for YSort { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { YSort :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct YSortMethodTable { pub class_constructor : sys :: godot_class_constructor , pub is_sort_enabled : * mut sys :: godot_method_bind , pub set_sort_enabled : * mut sys :: godot_method_bind } impl YSortMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : YSortMethodTable = YSortMethodTable { class_constructor : None , is_sort_enabled : 0 as * mut sys :: godot_method_bind , set_sort_enabled : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { YSortMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "YSort\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . is_sort_enabled = (gd_api . godot_method_bind_get_method) (class_name , "is_sort_enabled\0" . as_ptr () as * const c_char) ; table . set_sort_enabled = (gd_api . godot_method_bind_get_method) (class_name , "set_sort_enabled\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:58:9007 [INFO] [stdout] | [INFO] [stdout] 58 | ... 0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 58 | # [doc = "`core class MultiMeshInstance2D` inherits `Node2D` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_multimeshinstance2d.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nNon reference counted objects such as the ones of this type are usually owned by the engine.\n\n`MultiMeshInstance2D` is a reference-only type. Persistent references can\nonly exist in the unsafe `Ref` form.\n\nIn the cases where Rust code owns an object of this type, for example if the object was just\ncreated on the Rust side and not passed to the engine yet, ownership should be either given\nto the engine or the object must be manually destroyed using `Ref::free`, or `Ref::queue_free`\nif it is a `Node`."] # [doc = "\n## Class hierarchy\n\nMultiMeshInstance2D inherits methods from:\n - [Node2D](struct.Node2D.html)\n - [CanvasItem](struct.CanvasItem.html)\n - [Node](struct.Node.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct MultiMeshInstance2D { this : RawObject < Self > , } impl MultiMeshInstance2D { # [doc = "Creates a new instance of this object.\n\nBecause this type is not reference counted, the lifetime of the returned object\nis *not* automatically managed.\n\nImmediately after creation, the object is owned by the caller, and can be\npassed to the engine (in which case the engine will be responsible for\ndestroying the object) or destroyed manually using `Ref::free`, or preferably\n`Ref::queue_free` if it is a `Node`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = MultiMeshInstance2DMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "The [MultiMesh] that will be drawn by the [MultiMeshInstance2D]."] # [doc = ""] # [inline] pub fn multimesh (& self) -> Option < Ref < crate :: generated :: multi_mesh :: MultiMesh , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = MultiMeshInstance2DMethodTable :: get (get_api ()) . get_multimesh ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: multi_mesh :: MultiMesh , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "The normal map that will be used if using the default [CanvasItemMaterial].\n**Note:** Godot expects the normal map to use X+, Y-, and Z+ coordinates. See [url=http://wiki.polycount.com/wiki/Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for a comparison of normal map coordinates expected by popular engines."] # [doc = ""] # [inline] pub fn normal_map (& self) -> Option < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = MultiMeshInstance2DMethodTable :: get (get_api ()) . get_normal_map ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "The [Texture] that will be used if using the default [CanvasItemMaterial]. Can be accessed as `TEXTURE` in CanvasItem shader."] # [doc = ""] # [inline] pub fn texture (& self) -> Option < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = MultiMeshInstance2DMethodTable :: get (get_api ()) . get_texture ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "The [MultiMesh] that will be drawn by the [MultiMeshInstance2D]."] # [doc = ""] # [inline] pub fn set_multimesh (& self , multimesh : impl AsArg < crate :: generated :: multi_mesh :: MultiMesh >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = MultiMeshInstance2DMethodTable :: get (get_api ()) . set_multimesh ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , multimesh . as_arg_ptr ()) ; } } # [doc = "The normal map that will be used if using the default [CanvasItemMaterial].\n**Note:** Godot expects the normal map to use X+, Y-, and Z+ coordinates. See [url=http://wiki.polycount.com/wiki/Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for a comparison of normal map coordinates expected by popular engines."] # [doc = ""] # [inline] pub fn set_normal_map (& self , normal_map : impl AsArg < crate :: generated :: texture :: Texture >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = MultiMeshInstance2DMethodTable :: get (get_api ()) . set_normal_map ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , normal_map . as_arg_ptr ()) ; } } # [doc = "The [Texture] that will be used if using the default [CanvasItemMaterial]. Can be accessed as `TEXTURE` in CanvasItem shader."] # [doc = ""] # [inline] pub fn set_texture (& self , texture : impl AsArg < crate :: generated :: texture :: Texture >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = MultiMeshInstance2DMethodTable :: get (get_api ()) . set_texture ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , texture . as_arg_ptr ()) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for MultiMeshInstance2D { } unsafe impl GodotObject for MultiMeshInstance2D { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "MultiMeshInstance2D" } } impl QueueFree for MultiMeshInstance2D { # [inline] unsafe fn godot_queue_free (obj : * mut sys :: godot_object) { let method_bind : * mut sys :: godot_method_bind = crate :: generated :: node :: NodeMethodTable :: get (get_api ()) . queue_free ; crate :: icalls :: icallptr_void (method_bind , obj) } } impl std :: ops :: Deref for MultiMeshInstance2D { type Target = crate :: generated :: node_2d :: Node2D ; # [inline] fn deref (& self) -> & crate :: generated :: node_2d :: Node2D { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for MultiMeshInstance2D { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: node_2d :: Node2D { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: node_2d :: Node2D > for MultiMeshInstance2D { } unsafe impl SubClass < crate :: generated :: canvas_item :: CanvasItem > for MultiMeshInstance2D { } unsafe impl SubClass < crate :: generated :: node :: Node > for MultiMeshInstance2D { } unsafe impl SubClass < crate :: generated :: object :: Object > for MultiMeshInstance2D { } impl Instanciable for MultiMeshInstance2D { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { MultiMeshInstance2D :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct MultiMeshInstance2DMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_multimesh : * mut sys :: godot_method_bind , pub get_normal_map : * mut sys :: godot_method_bind , pub get_texture : * mut sys :: godot_method_bind , pub set_multimesh : * mut sys :: godot_method_bind , pub set_normal_map : * mut sys :: godot_method_bind , pub set_texture : * mut sys :: godot_method_bind } impl MultiMeshInstance2DMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : MultiMeshInstance2DMethodTable = MultiMeshInstance2DMethodTable { class_constructor : None , get_multimesh : 0 as * mut sys :: godot_method_bind , get_normal_map : 0 as * mut sys :: godot_method_bind , get_texture : 0 as * mut sys :: godot_method_bind , set_multimesh : 0 as * mut sys :: godot_method_bind , set_normal_map : 0 as * mut sys :: godot_method_bind , set_texture : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { MultiMeshInstance2DMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "MultiMeshInstance2D\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_multimesh = (gd_api . godot_method_bind_get_method) (class_name , "get_multimesh\0" . as_ptr () as * const c_char) ; table . get_normal_map = (gd_api . godot_method_bind_get_method) (class_name , "get_normal_map\0" . as_ptr () as * const c_char) ; table . get_texture = (gd_api . godot_method_bind_get_method) (class_name , "get_texture\0" . as_ptr () as * const c_char) ; table . set_multimesh = (gd_api . godot_method_bind_get_method) (class_name , "set_multimesh\0" . as_ptr () as * const c_char) ; table . set_normal_map = (gd_api . godot_method_bind_get_method) (class_name , "set_normal_map\0" . as_ptr () as * const c_char) ; table . set_texture = (gd_api . godot_method_bind_get_method) (class_name , "set_texture\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:64:4806 [INFO] [stdout] | [INFO] [stdout] 64 | ... 0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 64 | # [doc = "`core class VisualShaderNodeVec3Constant` inherits `VisualShaderNode` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualshadernodevec3constant.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nVisualShaderNodeVec3Constant inherits methods from:\n - [VisualShaderNode](struct.VisualShaderNode.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualShaderNodeVec3Constant { this : RawObject < Self > , } impl VisualShaderNodeVec3Constant { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisualShaderNodeVec3ConstantMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "A [Vector3] constant which represents the state of this node."] # [doc = ""] # [inline] pub fn constant (& self) -> Vector3 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualShaderNodeVec3ConstantMethodTable :: get (get_api ()) . get_constant ; let ret = crate :: icalls :: icallptr_vec3 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "A [Vector3] constant which represents the state of this node."] # [doc = ""] # [inline] pub fn set_constant (& self , value : Vector3) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualShaderNodeVec3ConstantMethodTable :: get (get_api ()) . set_constant ; let ret = crate :: icalls :: icallptr_void_vec3 (method_bind , self . this . sys () . as_ptr () , value) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualShaderNodeVec3Constant { } unsafe impl GodotObject for VisualShaderNodeVec3Constant { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "VisualShaderNodeVec3Constant" } } impl std :: ops :: Deref for VisualShaderNodeVec3Constant { type Target = crate :: generated :: visual_shader_node :: VisualShaderNode ; # [inline] fn deref (& self) -> & crate :: generated :: visual_shader_node :: VisualShaderNode { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualShaderNodeVec3Constant { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: visual_shader_node :: VisualShaderNode { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: visual_shader_node :: VisualShaderNode > for VisualShaderNodeVec3Constant { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for VisualShaderNodeVec3Constant { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for VisualShaderNodeVec3Constant { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualShaderNodeVec3Constant { } impl Instanciable for VisualShaderNodeVec3Constant { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisualShaderNodeVec3Constant :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualShaderNodeVec3ConstantMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_constant : * mut sys :: godot_method_bind , pub set_constant : * mut sys :: godot_method_bind } impl VisualShaderNodeVec3ConstantMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualShaderNodeVec3ConstantMethodTable = VisualShaderNodeVec3ConstantMethodTable { class_constructor : None , get_constant : 0 as * mut sys :: godot_method_bind , set_constant : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualShaderNodeVec3ConstantMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualShaderNodeVec3Constant\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_constant = (gd_api . godot_method_bind_get_method) (class_name , "get_constant\0" . as_ptr () as * const c_char) ; table . set_constant = (gd_api . godot_method_bind_get_method) (class_name , "set_constant\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:70:42840 [INFO] [stdout] | [INFO] [stdout] 70 | ... 0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 70 | # [doc = "`core class TileMap` inherits `Node2D` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_tilemap.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nNon reference counted objects such as the ones of this type are usually owned by the engine.\n\n`TileMap` is a reference-only type. Persistent references can\nonly exist in the unsafe `Ref` form.\n\nIn the cases where Rust code owns an object of this type, for example if the object was just\ncreated on the Rust side and not passed to the engine yet, ownership should be either given\nto the engine or the object must be manually destroyed using `Ref::free`, or `Ref::queue_free`\nif it is a `Node`."] # [doc = "\n## Class hierarchy\n\nTileMap inherits methods from:\n - [Node2D](struct.Node2D.html)\n - [CanvasItem](struct.CanvasItem.html)\n - [Node](struct.Node.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct TileMap { this : RawObject < Self > , } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct HalfOffset (pub i64) ; impl HalfOffset { pub const X : HalfOffset = HalfOffset (0i64) ; pub const Y : HalfOffset = HalfOffset (1i64) ; pub const DISABLED : HalfOffset = HalfOffset (2i64) ; pub const NEGATIVE_X : HalfOffset = HalfOffset (3i64) ; pub const NEGATIVE_Y : HalfOffset = HalfOffset (4i64) ; } impl From < i64 > for HalfOffset { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < HalfOffset > for i64 { # [inline] fn from (v : HalfOffset) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct Mode (pub i64) ; impl Mode { pub const SQUARE : Mode = Mode (0i64) ; pub const ISOMETRIC : Mode = Mode (1i64) ; pub const CUSTOM : Mode = Mode (2i64) ; } impl From < i64 > for Mode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < Mode > for i64 { # [inline] fn from (v : Mode) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct TileOrigin (pub i64) ; impl TileOrigin { pub const TOP_LEFT : TileOrigin = TileOrigin (0i64) ; pub const CENTER : TileOrigin = TileOrigin (1i64) ; pub const BOTTOM_LEFT : TileOrigin = TileOrigin (2i64) ; } impl From < i64 > for TileOrigin { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < TileOrigin > for i64 { # [inline] fn from (v : TileOrigin) -> Self { v . 0 } } # [doc = "Constants"] # [allow (non_upper_case_globals)] impl TileMap { pub const HALF_OFFSET_DISABLED : i64 = 2i64 ; pub const HALF_OFFSET_NEGATIVE_X : i64 = 3i64 ; pub const HALF_OFFSET_NEGATIVE_Y : i64 = 4i64 ; pub const HALF_OFFSET_X : i64 = 0i64 ; pub const HALF_OFFSET_Y : i64 = 1i64 ; pub const INVALID_CELL : i64 = - 1i64 ; pub const MODE_CUSTOM : i64 = 2i64 ; pub const MODE_ISOMETRIC : i64 = 1i64 ; pub const MODE_SQUARE : i64 = 0i64 ; pub const TILE_ORIGIN_BOTTOM_LEFT : i64 = 2i64 ; pub const TILE_ORIGIN_CENTER : i64 = 1i64 ; pub const TILE_ORIGIN_TOP_LEFT : i64 = 0i64 ; } impl TileMap { # [doc = "Creates a new instance of this object.\n\nBecause this type is not reference counted, the lifetime of the returned object\nis *not* automatically managed.\n\nImmediately after creation, the object is owned by the caller, and can be\npassed to the engine (in which case the engine will be responsible for\ndestroying the object) or destroyed manually using `Ref::free`, or preferably\n`Ref::queue_free` if it is a `Node`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = TileMapMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "Clears all cells."] # [doc = ""] # [inline] pub fn clear (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . clear ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = "Clears cells that do not exist in the tileset."] # [doc = ""] # [inline] pub fn fix_invalid_tiles (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . fix_invalid_tiles ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = "Returns the tile index of the given cell. If no tile exists in the cell, returns [constant INVALID_CELL]."] # [doc = ""] # [inline] pub fn get_cell (& self , x : i64 , y : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_cell ; let ret = crate :: icalls :: icallptr_i64_i64_i64 (method_bind , self . this . sys () . as_ptr () , x , y) ; ret as _ } } # [doc = "Returns the coordinate (subtile column and row) of the autotile variation in the tileset. Returns a zero vector if the cell doesn't have autotiling."] # [doc = ""] # [inline] pub fn get_cell_autotile_coord (& self , x : i64 , y : i64) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_cell_autotile_coord ; let ret = crate :: icalls :: icallptr_vec2_i64_i64 (method_bind , self . this . sys () . as_ptr () , x , y) ; mem :: transmute (ret) } } # [doc = "The TileMap's cell size."] # [doc = ""] # [inline] pub fn cell_size (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_cell_size ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "Returns the tile index of the cell given by a Vector2. If no tile exists in the cell, returns [constant INVALID_CELL]."] # [doc = ""] # [inline] pub fn get_cellv (& self , position : Vector2) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_cellv ; let ret = crate :: icalls :: icallptr_i64_vec2 (method_bind , self . this . sys () . as_ptr () , position) ; ret as _ } } # [doc = "If `true`, the cell's UVs will be clipped."] # [doc = ""] # [inline] pub fn clip_uv (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_clip_uv ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Bounce value for static body collisions (see `collision_use_kinematic`)."] # [doc = ""] # [inline] pub fn collision_bounce (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_collision_bounce ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Friction value for static body collisions (see `collision_use_kinematic`)."] # [doc = ""] # [inline] pub fn collision_friction (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_collision_friction ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "The collision layer(s) for all colliders in the TileMap. See [url=https://docs.godotengine.org/en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information."] # [doc = ""] # [inline] pub fn collision_layer (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_collision_layer ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns `true` if the given collision layer bit is set."] # [doc = ""] # [inline] pub fn get_collision_layer_bit (& self , bit : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_collision_layer_bit ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , bit) ; ret as _ } } # [doc = "The collision mask(s) for all colliders in the TileMap. See [url=https://docs.godotengine.org/en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information."] # [doc = ""] # [inline] pub fn collision_mask (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_collision_mask ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns `true` if the given collision mask bit is set."] # [doc = ""] # [inline] pub fn get_collision_mask_bit (& self , bit : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_collision_mask_bit ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , bit) ; ret as _ } } # [doc = "If `true`, TileMap collisions will be handled as a kinematic body. If `false`, collisions will be handled as static body."] # [doc = ""] # [inline] pub fn collision_use_kinematic (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_collision_use_kinematic ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "If `true`, this tilemap's collision shape will be added to the collision shape of the parent. The parent has to be a [CollisionObject2D]."] # [doc = ""] # [inline] pub fn collision_use_parent (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_collision_use_parent ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "The custom [Transform2D] to be applied to the TileMap's cells."] # [doc = ""] # [inline] pub fn custom_transform (& self) -> Transform2D { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_custom_transform ; let ret = crate :: icalls :: icallptr_trans2D (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "Amount to offset alternating tiles. See [enum HalfOffset] for possible values."] # [doc = ""] # [inline] pub fn half_offset (& self) -> crate :: generated :: tile_map :: HalfOffset { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_half_offset ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; crate :: generated :: tile_map :: HalfOffset (ret) } } # [doc = "The TileMap orientation mode. See [enum Mode] for possible values."] # [doc = ""] # [inline] pub fn mode (& self) -> crate :: generated :: tile_map :: Mode { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_mode ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; crate :: generated :: tile_map :: Mode (ret) } } # [doc = "The light mask assigned to all light occluders in the TileMap. The TileSet's light occluders will cast shadows only from Light2D(s) that have the same light mask(s)."] # [doc = ""] # [inline] pub fn occluder_light_mask (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_occluder_light_mask ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "The TileMap's quadrant size. Optimizes drawing by batching, using chunks of this size."] # [doc = ""] # [inline] pub fn quadrant_size (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_quadrant_size ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Position for tile origin. See [enum TileOrigin] for possible values."] # [doc = ""] # [inline] pub fn tile_origin (& self) -> crate :: generated :: tile_map :: TileOrigin { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_tile_origin ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; crate :: generated :: tile_map :: TileOrigin (ret) } } # [doc = "The assigned [TileSet]."] # [doc = ""] # [inline] pub fn tileset (& self) -> Option < Ref < crate :: generated :: tile_set :: TileSet , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_tileset ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: tile_set :: TileSet , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Returns a [Vector2] array with the positions of all cells containing a tile from the tileset (i.e. a tile index different from `-1`)."] # [doc = ""] # [inline] pub fn get_used_cells (& self) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_used_cells ; let ret = crate :: icalls :: icallvar_ (method_bind , self . this . sys () . as_ptr ()) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } # [doc = "Returns an array of all cells with the given tile index specified in `id`."] # [doc = ""] # [inline] pub fn get_used_cells_by_id (& self , id : i64) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_used_cells_by_id ; let ret = crate :: icalls :: icallvar__i64 (method_bind , self . this . sys () . as_ptr () , id) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } # [doc = "Returns a rectangle enclosing the used (non-empty) tiles of the map."] # [doc = ""] # [inline] pub fn get_used_rect (& self) -> Rect2 { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . get_used_rect ; let ret = crate :: icalls :: icallptr_rect2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "Returns `true` if the given cell is transposed, i.e. the X and Y axes are swapped."] # [doc = ""] # [inline] pub fn is_cell_transposed (& self , x : i64 , y : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . is_cell_transposed ; let ret = crate :: icalls :: icallptr_bool_i64_i64 (method_bind , self . this . sys () . as_ptr () , x , y) ; ret as _ } } # [doc = "Returns `true` if the given cell is flipped in the X axis."] # [doc = ""] # [inline] pub fn is_cell_x_flipped (& self , x : i64 , y : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . is_cell_x_flipped ; let ret = crate :: icalls :: icallptr_bool_i64_i64 (method_bind , self . this . sys () . as_ptr () , x , y) ; ret as _ } } # [doc = "Returns `true` if the given cell is flipped in the Y axis."] # [doc = ""] # [inline] pub fn is_cell_y_flipped (& self , x : i64 , y : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . is_cell_y_flipped ; let ret = crate :: icalls :: icallptr_bool_i64_i64 (method_bind , self . this . sys () . as_ptr () , x , y) ; ret as _ } } # [doc = "If `true`, the textures will be centered in the middle of each tile. This is useful for certain isometric or top-down modes when textures are made larger or smaller than the tiles (e.g. to avoid flickering on tile edges). The offset is still applied, but from the center of the tile. If used, [member compatibility_mode] is ignored.\nIf `false`, the texture position start in the top-left corner unless [member compatibility_mode] is enabled."] # [doc = ""] # [inline] pub fn is_centered_textures_enabled (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . is_centered_textures_enabled ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "If `true`, the compatibility with the tilemaps made in Godot 3.1 or earlier is maintained (textures move when the tile origin changes and rotate if the texture size is not homogeneous). This mode presents problems when doing `flip_h`, `flip_v` and `transpose` tile operations on non-homogeneous isometric tiles (e.g. 2:1), in which the texture could not coincide with the collision, thus it is not recommended for isometric or non-square tiles.\nIf `false`, the textures do not move when doing `flip_h`, `flip_v` operations if no offset is used, nor when changing the tile origin.\nThe compatibility mode doesn't work with the [member centered_textures] option, because displacing textures with the [member cell_tile_origin] option or in irregular tiles is not relevant when centering those textures."] # [doc = ""] # [inline] pub fn is_compatibility_mode_enabled (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . is_compatibility_mode_enabled ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn is_show_collision_enabled (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . is_show_collision_enabled ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "If `true`, the TileMap's children will be drawn in order of their Y coordinate."] # [doc = ""] # [inline] pub fn is_y_sort_mode_enabled (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . is_y_sort_mode_enabled ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns the global position corresponding to the given tilemap (grid-based) coordinates.\nOptionally, the tilemap's half offset can be ignored.\n# Default Arguments\n* `ignore_half_ofs` - `false`"] # [doc = ""] # [inline] pub fn map_to_world (& self , map_position : Vector2 , ignore_half_ofs : bool) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . map_to_world ; let ret = crate :: icalls :: icallptr_vec2_vec2_bool (method_bind , self . this . sys () . as_ptr () , map_position , ignore_half_ofs) ; mem :: transmute (ret) } } # [doc = "_Sample code is GDScript unless otherwise noted._\n\nSets the tile index for the cell given by a Vector2.\nAn index of `-1` clears the cell.\nOptionally, the tile can also be flipped, transposed, or given autotile coordinates. The autotile coordinate refers to the column and row of the subtile.\n**Note:** Data such as navigation polygons and collision shapes are not immediately updated for performance reasons.\nIf you need these to be immediately updated, you can call [method update_dirty_quadrants].\nOverriding this method also overrides it internally, allowing custom logic to be implemented when tiles are placed/removed:\n```gdscript\nfunc set_cell(x, y, tile, flip_x=false, flip_y=false, transpose=false, autotile_coord=Vector2())\n # Write your custom logic here.\n # To call the default method:\n .set_cell(x, y, tile, flip_x, flip_y, transpose, autotile_coord)\n```\n# Default Arguments\n* `flip_x` - `false`\n* `flip_y` - `false`\n* `transpose` - `false`\n* `autotile_coord` - `Vector2( 0, 0 )`"] # [doc = ""] # [inline] pub fn set_cell (& self , x : i64 , y : i64 , tile : i64 , flip_x : bool , flip_y : bool , transpose : bool , autotile_coord : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_cell ; let ret = crate :: icalls :: icallptr_void_i64_i64_i64_bool_bool_bool_vec2 (method_bind , self . this . sys () . as_ptr () , x , y , tile , flip_x , flip_y , transpose , autotile_coord) ; } } # [doc = "The TileMap's cell size."] # [doc = ""] # [inline] pub fn set_cell_size (& self , size : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_cell_size ; let ret = crate :: icalls :: icallptr_void_vec2 (method_bind , self . this . sys () . as_ptr () , size) ; } } # [doc = "Sets the tile index for the given cell.\nAn index of `-1` clears the cell.\nOptionally, the tile can also be flipped or transposed.\n**Note:** Data such as navigation polygons and collision shapes are not immediately updated for performance reasons.\nIf you need these to be immediately updated, you can call [method update_dirty_quadrants].\n# Default Arguments\n* `flip_x` - `false`\n* `flip_y` - `false`\n* `transpose` - `false`"] # [doc = ""] # [inline] pub fn set_cellv (& self , position : Vector2 , tile : i64 , flip_x : bool , flip_y : bool , transpose : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_cellv ; let ret = crate :: icalls :: icallptr_void_vec2_i64_bool_bool_bool (method_bind , self . this . sys () . as_ptr () , position , tile , flip_x , flip_y , transpose) ; } } # [doc = "If `true`, the textures will be centered in the middle of each tile. This is useful for certain isometric or top-down modes when textures are made larger or smaller than the tiles (e.g. to avoid flickering on tile edges). The offset is still applied, but from the center of the tile. If used, [member compatibility_mode] is ignored.\nIf `false`, the texture position start in the top-left corner unless [member compatibility_mode] is enabled."] # [doc = ""] # [inline] pub fn set_centered_textures (& self , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_centered_textures ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , enable) ; } } # [doc = "If `true`, the cell's UVs will be clipped."] # [doc = ""] # [inline] pub fn set_clip_uv (& self , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_clip_uv ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , enable) ; } } # [doc = "Bounce value for static body collisions (see `collision_use_kinematic`)."] # [doc = ""] # [inline] pub fn set_collision_bounce (& self , value : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_collision_bounce ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , value) ; } } # [doc = "Friction value for static body collisions (see `collision_use_kinematic`)."] # [doc = ""] # [inline] pub fn set_collision_friction (& self , value : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_collision_friction ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , value) ; } } # [doc = "The collision layer(s) for all colliders in the TileMap. See [url=https://docs.godotengine.org/en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information."] # [doc = ""] # [inline] pub fn set_collision_layer (& self , layer : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_collision_layer ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , layer) ; } } # [doc = "Sets the given collision layer bit."] # [doc = ""] # [inline] pub fn set_collision_layer_bit (& self , bit : i64 , value : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_collision_layer_bit ; let ret = crate :: icalls :: icallptr_void_i64_bool (method_bind , self . this . sys () . as_ptr () , bit , value) ; } } # [doc = "The collision mask(s) for all colliders in the TileMap. See [url=https://docs.godotengine.org/en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information."] # [doc = ""] # [inline] pub fn set_collision_mask (& self , mask : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_collision_mask ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , mask) ; } } # [doc = "Sets the given collision mask bit."] # [doc = ""] # [inline] pub fn set_collision_mask_bit (& self , bit : i64 , value : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_collision_mask_bit ; let ret = crate :: icalls :: icallptr_void_i64_bool (method_bind , self . this . sys () . as_ptr () , bit , value) ; } } # [doc = "If `true`, TileMap collisions will be handled as a kinematic body. If `false`, collisions will be handled as static body."] # [doc = ""] # [inline] pub fn set_collision_use_kinematic (& self , use_kinematic : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_collision_use_kinematic ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , use_kinematic) ; } } # [doc = "If `true`, this tilemap's collision shape will be added to the collision shape of the parent. The parent has to be a [CollisionObject2D]."] # [doc = ""] # [inline] pub fn set_collision_use_parent (& self , use_parent : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_collision_use_parent ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , use_parent) ; } } # [doc = "If `true`, the compatibility with the tilemaps made in Godot 3.1 or earlier is maintained (textures move when the tile origin changes and rotate if the texture size is not homogeneous). This mode presents problems when doing `flip_h`, `flip_v` and `transpose` tile operations on non-homogeneous isometric tiles (e.g. 2:1), in which the texture could not coincide with the collision, thus it is not recommended for isometric or non-square tiles.\nIf `false`, the textures do not move when doing `flip_h`, `flip_v` operations if no offset is used, nor when changing the tile origin.\nThe compatibility mode doesn't work with the [member centered_textures] option, because displacing textures with the [member cell_tile_origin] option or in irregular tiles is not relevant when centering those textures."] # [doc = ""] # [inline] pub fn set_compatibility_mode (& self , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_compatibility_mode ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , enable) ; } } # [doc = "The custom [Transform2D] to be applied to the TileMap's cells."] # [doc = ""] # [inline] pub fn set_custom_transform (& self , custom_transform : Transform2D) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_custom_transform ; let ret = crate :: icalls :: icallptr_void_trans2D (method_bind , self . this . sys () . as_ptr () , custom_transform) ; } } # [doc = "Amount to offset alternating tiles. See [enum HalfOffset] for possible values."] # [doc = ""] # [inline] pub fn set_half_offset (& self , half_offset : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_half_offset ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , half_offset) ; } } # [doc = "The TileMap orientation mode. See [enum Mode] for possible values."] # [doc = ""] # [inline] pub fn set_mode (& self , mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_mode ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , mode) ; } } # [doc = "The light mask assigned to all light occluders in the TileMap. The TileSet's light occluders will cast shadows only from Light2D(s) that have the same light mask(s)."] # [doc = ""] # [inline] pub fn set_occluder_light_mask (& self , mask : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_occluder_light_mask ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , mask) ; } } # [doc = "The TileMap's quadrant size. Optimizes drawing by batching, using chunks of this size."] # [doc = ""] # [inline] pub fn set_quadrant_size (& self , size : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_quadrant_size ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , size) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_show_collision (& self , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_show_collision ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , enable) ; } } # [doc = "Position for tile origin. See [enum TileOrigin] for possible values."] # [doc = ""] # [inline] pub fn set_tile_origin (& self , origin : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_tile_origin ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , origin) ; } } # [doc = "The assigned [TileSet]."] # [doc = ""] # [inline] pub fn set_tileset (& self , tileset : impl AsArg < crate :: generated :: tile_set :: TileSet >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_tileset ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , tileset . as_arg_ptr ()) ; } } # [doc = "If `true`, the TileMap's children will be drawn in order of their Y coordinate."] # [doc = ""] # [inline] pub fn set_y_sort_mode (& self , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . set_y_sort_mode ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , enable) ; } } # [doc = "Applies autotiling rules to the cell (and its adjacent cells) referenced by its grid-based X and Y coordinates."] # [doc = ""] # [inline] pub fn update_bitmask_area (& self , position : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . update_bitmask_area ; let ret = crate :: icalls :: icallptr_void_vec2 (method_bind , self . this . sys () . as_ptr () , position) ; } } # [doc = "Applies autotiling rules to the cells in the given region (specified by grid-based X and Y coordinates).\nCalling with invalid (or missing) parameters applies autotiling rules for the entire tilemap.\n# Default Arguments\n* `start` - `Vector2( 0, 0 )`\n* `end` - `Vector2( 0, 0 )`"] # [doc = ""] # [inline] pub fn update_bitmask_region (& self , start : Vector2 , end : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . update_bitmask_region ; let ret = crate :: icalls :: icallptr_void_vec2_vec2 (method_bind , self . this . sys () . as_ptr () , start , end) ; } } # [doc = "Updates the tile map's quadrants, allowing things such as navigation and collision shapes to be immediately used if modified."] # [doc = ""] # [inline] pub fn update_dirty_quadrants (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . update_dirty_quadrants ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = "Returns the tilemap (grid-based) coordinates corresponding to the given local position."] # [doc = ""] # [inline] pub fn world_to_map (& self , world_position : Vector2) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = TileMapMethodTable :: get (get_api ()) . world_to_map ; let ret = crate :: icalls :: icallptr_vec2_vec2 (method_bind , self . this . sys () . as_ptr () , world_position) ; mem :: transmute (ret) } } } impl gdnative_core :: private :: godot_object :: Sealed for TileMap { } unsafe impl GodotObject for TileMap { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "TileMap" } } impl QueueFree for TileMap { # [inline] unsafe fn godot_queue_free (obj : * mut sys :: godot_object) { let method_bind : * mut sys :: godot_method_bind = crate :: generated :: node :: NodeMethodTable :: get (get_api ()) . queue_free ; crate :: icalls :: icallptr_void (method_bind , obj) } } impl std :: ops :: Deref for TileMap { type Target = crate :: generated :: node_2d :: Node2D ; # [inline] fn deref (& self) -> & crate :: generated :: node_2d :: Node2D { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for TileMap { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: node_2d :: Node2D { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: node_2d :: Node2D > for TileMap { } unsafe impl SubClass < crate :: generated :: canvas_item :: CanvasItem > for TileMap { } unsafe impl SubClass < crate :: generated :: node :: Node > for TileMap { } unsafe impl SubClass < crate :: generated :: object :: Object > for TileMap { } impl Instanciable for TileMap { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { TileMap :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct TileMapMethodTable { pub class_constructor : sys :: godot_class_constructor , pub clear : * mut sys :: godot_method_bind , pub fix_invalid_tiles : * mut sys :: godot_method_bind , pub get_cell : * mut sys :: godot_method_bind , pub get_cell_autotile_coord : * mut sys :: godot_method_bind , pub get_cell_size : * mut sys :: godot_method_bind , pub get_cellv : * mut sys :: godot_method_bind , pub get_clip_uv : * mut sys :: godot_method_bind , pub get_collision_bounce : * mut sys :: godot_method_bind , pub get_collision_friction : * mut sys :: godot_method_bind , pub get_collision_layer : * mut sys :: godot_method_bind , pub get_collision_layer_bit : * mut sys :: godot_method_bind , pub get_collision_mask : * mut sys :: godot_method_bind , pub get_collision_mask_bit : * mut sys :: godot_method_bind , pub get_collision_use_kinematic : * mut sys :: godot_method_bind , pub get_collision_use_parent : * mut sys :: godot_method_bind , pub get_custom_transform : * mut sys :: godot_method_bind , pub get_half_offset : * mut sys :: godot_method_bind , pub get_mode : * mut sys :: godot_method_bind , pub get_occluder_light_mask : * mut sys :: godot_method_bind , pub get_quadrant_size : * mut sys :: godot_method_bind , pub get_tile_origin : * mut sys :: godot_method_bind , pub get_tileset : * mut sys :: godot_method_bind , pub get_used_cells : * mut sys :: godot_method_bind , pub get_used_cells_by_id : * mut sys :: godot_method_bind , pub get_used_rect : * mut sys :: godot_method_bind , pub is_cell_transposed : * mut sys :: godot_method_bind , pub is_cell_x_flipped : * mut sys :: godot_method_bind , pub is_cell_y_flipped : * mut sys :: godot_method_bind , pub is_centered_textures_enabled : * mut sys :: godot_method_bind , pub is_compatibility_mode_enabled : * mut sys :: godot_method_bind , pub is_show_collision_enabled : * mut sys :: godot_method_bind , pub is_y_sort_mode_enabled : * mut sys :: godot_method_bind , pub map_to_world : * mut sys :: godot_method_bind , pub set_cell : * mut sys :: godot_method_bind , pub set_cell_size : * mut sys :: godot_method_bind , pub set_cellv : * mut sys :: godot_method_bind , pub set_centered_textures : * mut sys :: godot_method_bind , pub set_clip_uv : * mut sys :: godot_method_bind , pub set_collision_bounce : * mut sys :: godot_method_bind , pub set_collision_friction : * mut sys :: godot_method_bind , pub set_collision_layer : * mut sys :: godot_method_bind , pub set_collision_layer_bit : * mut sys :: godot_method_bind , pub set_collision_mask : * mut sys :: godot_method_bind , pub set_collision_mask_bit : * mut sys :: godot_method_bind , pub set_collision_use_kinematic : * mut sys :: godot_method_bind , pub set_collision_use_parent : * mut sys :: godot_method_bind , pub set_compatibility_mode : * mut sys :: godot_method_bind , pub set_custom_transform : * mut sys :: godot_method_bind , pub set_half_offset : * mut sys :: godot_method_bind , pub set_mode : * mut sys :: godot_method_bind , pub set_occluder_light_mask : * mut sys :: godot_method_bind , pub set_quadrant_size : * mut sys :: godot_method_bind , pub set_show_collision : * mut sys :: godot_method_bind , pub set_tile_origin : * mut sys :: godot_method_bind , pub set_tileset : * mut sys :: godot_method_bind , pub set_y_sort_mode : * mut sys :: godot_method_bind , pub update_bitmask_area : * mut sys :: godot_method_bind , pub update_bitmask_region : * mut sys :: godot_method_bind , pub update_dirty_quadrants : * mut sys :: godot_method_bind , pub world_to_map : * mut sys :: godot_method_bind } impl TileMapMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : TileMapMethodTable = TileMapMethodTable { class_constructor : None , clear : 0 as * mut sys :: godot_method_bind , fix_invalid_tiles : 0 as * mut sys :: godot_method_bind , get_cell : 0 as * mut sys :: godot_method_bind , get_cell_autotile_coord : 0 as * mut sys :: godot_method_bind , get_cell_size : 0 as * mut sys :: godot_method_bind , get_cellv : 0 as * mut sys :: godot_method_bind , get_clip_uv : 0 as * mut sys :: godot_method_bind , get_collision_bounce : 0 as * mut sys :: godot_method_bind , get_collision_friction : 0 as * mut sys :: godot_method_bind , get_collision_layer : 0 as * mut sys :: godot_method_bind , get_collision_layer_bit : 0 as * mut sys :: godot_method_bind , get_collision_mask : 0 as * mut sys :: godot_method_bind , get_collision_mask_bit : 0 as * mut sys :: godot_method_bind , get_collision_use_kinematic : 0 as * mut sys :: godot_method_bind , get_collision_use_parent : 0 as * mut sys :: godot_method_bind , get_custom_transform : 0 as * mut sys :: godot_method_bind , get_half_offset : 0 as * mut sys :: godot_method_bind , get_mode : 0 as * mut sys :: godot_method_bind , get_occluder_light_mask : 0 as * mut sys :: godot_method_bind , get_quadrant_size : 0 as * mut sys :: godot_method_bind , get_tile_origin : 0 as * mut sys :: godot_method_bind , get_tileset : 0 as * mut sys :: godot_method_bind , get_used_cells : 0 as * mut sys :: godot_method_bind , get_used_cells_by_id : 0 as * mut sys :: godot_method_bind , get_used_rect : 0 as * mut sys :: godot_method_bind , is_cell_transposed : 0 as * mut sys :: godot_method_bind , is_cell_x_flipped : 0 as * mut sys :: godot_method_bind , is_cell_y_flipped : 0 as * mut sys :: godot_method_bind , is_centered_textures_enabled : 0 as * mut sys :: godot_method_bind , is_compatibility_mode_enabled : 0 as * mut sys :: godot_method_bind , is_show_collision_enabled : 0 as * mut sys :: godot_method_bind , is_y_sort_mode_enabled : 0 as * mut sys :: godot_method_bind , map_to_world : 0 as * mut sys :: godot_method_bind , set_cell : 0 as * mut sys :: godot_method_bind , set_cell_size : 0 as * mut sys :: godot_method_bind , set_cellv : 0 as * mut sys :: godot_method_bind , set_centered_textures : 0 as * mut sys :: godot_method_bind , set_clip_uv : 0 as * mut sys :: godot_method_bind , set_collision_bounce : 0 as * mut sys :: godot_method_bind , set_collision_friction : 0 as * mut sys :: godot_method_bind , set_collision_layer : 0 as * mut sys :: godot_method_bind , set_collision_layer_bit : 0 as * mut sys :: godot_method_bind , set_collision_mask : 0 as * mut sys :: godot_method_bind , set_collision_mask_bit : 0 as * mut sys :: godot_method_bind , set_collision_use_kinematic : 0 as * mut sys :: godot_method_bind , set_collision_use_parent : 0 as * mut sys :: godot_method_bind , set_compatibility_mode : 0 as * mut sys :: godot_method_bind , set_custom_transform : 0 as * mut sys :: godot_method_bind , set_half_offset : 0 as * mut sys :: godot_method_bind , set_mode : 0 as * mut sys :: godot_method_bind , set_occluder_light_mask : 0 as * mut sys :: godot_method_bind , set_quadrant_size : 0 as * mut sys :: godot_method_bind , set_show_collision : 0 as * mut sys :: godot_method_bind , set_tile_origin : 0 as * mut sys :: godot_method_bind , set_tileset : 0 as * mut sys :: godot_method_bind , set_y_sort_mode : 0 as * mut sys :: godot_method_bind , update_bitmask_area : 0 as * mut sys :: godot_method_bind , update_bitmask_region : 0 as * mut sys :: godot_method_bind , update_dirty_quadrants : 0 as * mut sys :: godot_method_bind , world_to_map : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { TileMapMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "TileMap\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . clear = (gd_api . godot_method_bind_get_method) (class_name , "clear\0" . as_ptr () as * const c_char) ; table . fix_invalid_tiles = (gd_api . godot_method_bind_get_method) (class_name , "fix_invalid_tiles\0" . as_ptr () as * const c_char) ; table . get_cell = (gd_api . godot_method_bind_get_method) (class_name , "get_cell\0" . as_ptr () as * const c_char) ; table . get_cell_autotile_coord = (gd_api . godot_method_bind_get_method) (class_name , "get_cell_autotile_coord\0" . as_ptr () as * const c_char) ; table . get_cell_size = (gd_api . godot_method_bind_get_method) (class_name , "get_cell_size\0" . as_ptr () as * const c_char) ; table . get_cellv = (gd_api . godot_method_bind_get_method) (class_name , "get_cellv\0" . as_ptr () as * const c_char) ; table . get_clip_uv = (gd_api . godot_method_bind_get_method) (class_name , "get_clip_uv\0" . as_ptr () as * const c_char) ; table . get_collision_bounce = (gd_api . godot_method_bind_get_method) (class_name , "get_collision_bounce\0" . as_ptr () as * const c_char) ; table . get_collision_friction = (gd_api . godot_method_bind_get_method) (class_name , "get_collision_friction\0" . as_ptr () as * const c_char) ; table . get_collision_layer = (gd_api . godot_method_bind_get_method) (class_name , "get_collision_layer\0" . as_ptr () as * const c_char) ; table . get_collision_layer_bit = (gd_api . godot_method_bind_get_method) (class_name , "get_collision_layer_bit\0" . as_ptr () as * const c_char) ; table . get_collision_mask = (gd_api . godot_method_bind_get_method) (class_name , "get_collision_mask\0" . as_ptr () as * const c_char) ; table . get_collision_mask_bit = (gd_api . godot_method_bind_get_method) (class_name , "get_collision_mask_bit\0" . as_ptr () as * const c_char) ; table . get_collision_use_kinematic = (gd_api . godot_method_bind_get_method) (class_name , "get_collision_use_kinematic\0" . as_ptr () as * const c_char) ; table . get_collision_use_parent = (gd_api . godot_method_bind_get_method) (class_name , "get_collision_use_parent\0" . as_ptr () as * const c_char) ; table . get_custom_transform = (gd_api . godot_method_bind_get_method) (class_name , "get_custom_transform\0" . as_ptr () as * const c_char) ; table . get_half_offset = (gd_api . godot_method_bind_get_method) (class_name , "get_half_offset\0" . as_ptr () as * const c_char) ; table . get_mode = (gd_api . godot_method_bind_get_method) (class_name , "get_mode\0" . as_ptr () as * const c_char) ; table . get_occluder_light_mask = (gd_api . godot_method_bind_get_method) (class_name , "get_occluder_light_mask\0" . as_ptr () as * const c_char) ; table . get_quadrant_size = (gd_api . godot_method_bind_get_method) (class_name , "get_quadrant_size\0" . as_ptr () as * const c_char) ; table . get_tile_origin = (gd_api . godot_method_bind_get_method) (class_name , "get_tile_origin\0" . as_ptr () as * const c_char) ; table . get_tileset = (gd_api . godot_method_bind_get_method) (class_name , "get_tileset\0" . as_ptr () as * const c_char) ; table . get_used_cells = (gd_api . godot_method_bind_get_method) (class_name , "get_used_cells\0" . as_ptr () as * const c_char) ; table . get_used_cells_by_id = (gd_api . godot_method_bind_get_method) (class_name , "get_used_cells_by_id\0" . as_ptr () as * const c_char) ; table . get_used_rect = (gd_api . godot_method_bind_get_method) (class_name , "get_used_rect\0" . as_ptr () as * const c_char) ; table . is_cell_transposed = (gd_api . godot_method_bind_get_method) (class_name , "is_cell_transposed\0" . as_ptr () as * const c_char) ; table . is_cell_x_flipped = (gd_api . godot_method_bind_get_method) (class_name , "is_cell_x_flipped\0" . as_ptr () as * const c_char) ; table . is_cell_y_flipped = (gd_api . godot_method_bind_get_method) (class_name , "is_cell_y_flipped\0" . as_ptr () as * const c_char) ; table . is_centered_textures_enabled = (gd_api . godot_method_bind_get_method) (class_name , "is_centered_textures_enabled\0" . as_ptr () as * const c_char) ; table . is_compatibility_mode_enabled = (gd_api . godot_method_bind_get_method) (class_name , "is_compatibility_mode_enabled\0" . as_ptr () as * const c_char) ; table . is_show_collision_enabled = (gd_api . godot_method_bind_get_method) (class_name , "is_show_collision_enabled\0" . as_ptr () as * const c_char) ; table . is_y_sort_mode_enabled = (gd_api . godot_method_bind_get_method) (class_name , "is_y_sort_mode_enabled\0" . as_ptr () as * const c_char) ; table . map_to_world = (gd_api . godot_method_bind_get_method) (class_name , "map_to_world\0" . as_ptr () as * const c_char) ; table . set_cell = (gd_api . godot_method_bind_get_method) (class_name , "set_cell\0" . as_ptr () as * const c_char) ; table . set_cell_size = (gd_api . godot_method_bind_get_method) (class_name , "set_cell_size\0" . as_ptr () as * const c_char) ; table . set_cellv = (gd_api . godot_method_bind_get_method) (class_name , "set_cellv\0" . as_ptr () as * const c_char) ; table . set_centered_textures = (gd_api . godot_method_bind_get_method) (class_name , "set_centered_textures\0" . as_ptr () as * const c_char) ; table . set_clip_uv = (gd_api . godot_method_bind_get_method) (class_name , "set_clip_uv\0" . as_ptr () as * const c_char) ; table . set_collision_bounce = (gd_api . godot_method_bind_get_method) (class_name , "set_collision_bounce\0" . as_ptr () as * const c_char) ; table . set_collision_friction = (gd_api . godot_method_bind_get_method) (class_name , "set_collision_friction\0" . as_ptr () as * const c_char) ; table . set_collision_layer = (gd_api . godot_method_bind_get_method) (class_name , "set_collision_layer\0" . as_ptr () as * const c_char) ; table . set_collision_layer_bit = (gd_api . godot_method_bind_get_method) (class_name , "set_collision_layer_bit\0" . as_ptr () as * const c_char) ; table . set_collision_mask = (gd_api . godot_method_bind_get_method) (class_name , "set_collision_mask\0" . as_ptr () as * const c_char) ; table . set_collision_mask_bit = (gd_api . godot_method_bind_get_method) (class_name , "set_collision_mask_bit\0" . as_ptr () as * const c_char) ; table . set_collision_use_kinematic = (gd_api . godot_method_bind_get_method) (class_name , "set_collision_use_kinematic\0" . as_ptr () as * const c_char) ; table . set_collision_use_parent = (gd_api . godot_method_bind_get_method) (class_name , "set_collision_use_parent\0" . as_ptr () as * const c_char) ; table . set_compatibility_mode = (gd_api . godot_method_bind_get_method) (class_name , "set_compatibility_mode\0" . as_ptr () as * const c_char) ; table . set_custom_transform = (gd_api . godot_method_bind_get_method) (class_name , "set_custom_transform\0" . as_ptr () as * const c_char) ; table . set_half_offset = (gd_api . godot_method_bind_get_method) (class_name , "set_half_offset\0" . as_ptr () as * const c_char) ; table . set_mode = (gd_api . godot_method_bind_get_method) (class_name , "set_mode\0" . as_ptr () as * const c_char) ; table . set_occluder_light_mask = (gd_api . godot_method_bind_get_method) (class_name , "set_occluder_light_mask\0" . as_ptr () as * const c_char) ; table . set_quadrant_size = (gd_api . godot_method_bind_get_method) (class_name , "set_quadrant_size\0" . as_ptr () as * const c_char) ; table . set_show_collision = (gd_api . godot_method_bind_get_method) (class_name , "set_show_collision\0" . as_ptr () as * const c_char) ; table . set_tile_origin = (gd_api . godot_method_bind_get_method) (class_name , "set_tile_origin\0" . as_ptr () as * const c_char) ; table . set_tileset = (gd_api . godot_method_bind_get_method) (class_name , "set_tileset\0" . as_ptr () as * const c_char) ; table . set_y_sort_mode = (gd_api . godot_method_bind_get_method) (class_name , "set_y_sort_mode\0" . as_ptr () as * const c_char) ; table . update_bitmask_area = (gd_api . godot_method_bind_get_method) (class_name , "update_bitmask_area\0" . as_ptr () as * const c_char) ; table . update_bitmask_region = (gd_api . godot_method_bind_get_method) (class_name , "update_bitmask_region\0" . as_ptr () as * const c_char) ; table . update_dirty_quadrants = (gd_api . godot_method_bind_get_method) (class_name , "update_dirty_quadrants\0" . as_ptr () as * const c_char) ; table . world_to_map = (gd_api . godot_method_bind_get_method) (class_name , "world_to_map\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:76:28818 [INFO] [stdout] | [INFO] [stdout] 76 | ... 0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 76 | # [doc = "`core singleton class AudioServer` inherits `Object` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_audioserver.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = ""] # [doc = "\n## Class hierarchy\n\nAudioServer inherits methods from:\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct AudioServer { this : RawObject < Self > , } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct SpeakerMode (pub i64) ; impl SpeakerMode { pub const MODE_STEREO : SpeakerMode = SpeakerMode (0i64) ; pub const SURROUND_31 : SpeakerMode = SpeakerMode (1i64) ; pub const SURROUND_51 : SpeakerMode = SpeakerMode (2i64) ; pub const SURROUND_71 : SpeakerMode = SpeakerMode (3i64) ; } impl From < i64 > for SpeakerMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < SpeakerMode > for i64 { # [inline] fn from (v : SpeakerMode) -> Self { v . 0 } } # [doc = "Constants"] # [allow (non_upper_case_globals)] impl AudioServer { pub const SPEAKER_MODE_STEREO : i64 = 0i64 ; pub const SPEAKER_SURROUND_31 : i64 = 1i64 ; pub const SPEAKER_SURROUND_51 : i64 = 2i64 ; pub const SPEAKER_SURROUND_71 : i64 = 3i64 ; } impl AudioServer { # [doc = "Returns a reference to the singleton instance."] # [inline] pub fn godot_singleton () -> & 'static Self { unsafe { let this = (get_api () . godot_global_get_singleton) ("AudioServer\0" . as_ptr () as * mut _) ; let this = ptr :: NonNull :: new (this) . expect ("singleton should not be null") ; let this = RawObject :: from_sys_ref_unchecked :: < 'static > (this) ; Self :: cast_ref (this) } } # [doc = "Adds a bus at `at_position`.\n# Default Arguments\n* `at_position` - `-1`"] # [doc = ""] # [inline] pub fn add_bus (& self , at_position : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . add_bus ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , at_position) ; } } # [doc = "Adds an [AudioEffect] effect to the bus `bus_idx` at `at_position`.\n# Default Arguments\n* `at_position` - `-1`"] # [doc = ""] # [inline] pub fn add_bus_effect (& self , bus_idx : i64 , effect : impl AsArg < crate :: generated :: audio_effect :: AudioEffect > , at_position : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . add_bus_effect ; let ret = crate :: icalls :: icallptr_void_i64_obj_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx , effect . as_arg_ptr () , at_position) ; } } # [doc = "Name of the current device for audio input (see [method capture_get_device_list])."] # [doc = ""] # [inline] pub fn capture_get_device (& self) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . capture_get_device ; let ret = crate :: icalls :: icallptr_str (method_bind , self . this . sys () . as_ptr ()) ; GodotString :: from_sys (ret) } } # [doc = "Returns the names of all audio input devices detected on the system."] # [doc = ""] # [inline] pub fn capture_get_device_list (& self) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . capture_get_device_list ; let ret = crate :: icalls :: icallvar_ (method_bind , self . this . sys () . as_ptr ()) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } # [doc = "Sets which audio input device is used for audio capture."] # [doc = ""] # [inline] pub fn capture_set_device (& self , name : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . capture_set_device ; let ret = crate :: icalls :: icallptr_void_str (method_bind , self . this . sys () . as_ptr () , name . into ()) ; } } # [doc = "Generates an [AudioBusLayout] using the available buses and effects."] # [doc = ""] # [inline] pub fn generate_bus_layout (& self) -> Option < Ref < crate :: generated :: audio_bus_layout :: AudioBusLayout , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . generate_bus_layout ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: audio_bus_layout :: AudioBusLayout , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Returns the amount of channels of the bus at index `bus_idx`."] # [doc = ""] # [inline] pub fn get_bus_channels (& self , bus_idx : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_bus_channels ; let ret = crate :: icalls :: icallptr_i64_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx) ; ret as _ } } # [doc = "Number of available audio buses."] # [doc = ""] # [inline] pub fn bus_count (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_bus_count ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns the [AudioEffect] at position `effect_idx` in bus `bus_idx`."] # [doc = ""] # [inline] pub fn get_bus_effect (& self , bus_idx : i64 , effect_idx : i64) -> Option < Ref < crate :: generated :: audio_effect :: AudioEffect , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_bus_effect ; let ret = crate :: icalls :: icallptr_obj_i64_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx , effect_idx) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: audio_effect :: AudioEffect , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Returns the number of effects on the bus at `bus_idx`."] # [doc = ""] # [inline] pub fn get_bus_effect_count (& self , bus_idx : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_bus_effect_count ; let ret = crate :: icalls :: icallptr_i64_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx) ; ret as _ } } # [doc = "Returns the [AudioEffectInstance] assigned to the given bus and effect indices (and optionally channel).\n# Default Arguments\n* `channel` - `0`"] # [doc = ""] # [inline] pub fn get_bus_effect_instance (& self , bus_idx : i64 , effect_idx : i64 , channel : i64) -> Option < Ref < crate :: generated :: audio_effect_instance :: AudioEffectInstance , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_bus_effect_instance ; let ret = crate :: icalls :: icallptr_obj_i64_i64_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx , effect_idx , channel) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: audio_effect_instance :: AudioEffectInstance , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Returns the index of the bus with the name `bus_name`."] # [doc = ""] # [inline] pub fn get_bus_index (& self , bus_name : impl Into < GodotString >) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_bus_index ; let ret = crate :: icalls :: icallptr_i64_str (method_bind , self . this . sys () . as_ptr () , bus_name . into ()) ; ret as _ } } # [doc = "Returns the name of the bus with the index `bus_idx`."] # [doc = ""] # [inline] pub fn get_bus_name (& self , bus_idx : i64) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_bus_name ; let ret = crate :: icalls :: icallptr_str_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx) ; GodotString :: from_sys (ret) } } # [doc = "Returns the peak volume of the left speaker at bus index `bus_idx` and channel index `channel`."] # [doc = ""] # [inline] pub fn get_bus_peak_volume_left_db (& self , bus_idx : i64 , channel : i64) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_bus_peak_volume_left_db ; let ret = crate :: icalls :: icallptr_f64_i64_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx , channel) ; ret as _ } } # [doc = "Returns the peak volume of the right speaker at bus index `bus_idx` and channel index `channel`."] # [doc = ""] # [inline] pub fn get_bus_peak_volume_right_db (& self , bus_idx : i64 , channel : i64) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_bus_peak_volume_right_db ; let ret = crate :: icalls :: icallptr_f64_i64_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx , channel) ; ret as _ } } # [doc = "Returns the name of the bus that the bus at index `bus_idx` sends to."] # [doc = ""] # [inline] pub fn get_bus_send (& self , bus_idx : i64) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_bus_send ; let ret = crate :: icalls :: icallptr_str_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx) ; GodotString :: from_sys (ret) } } # [doc = "Returns the volume of the bus at index `bus_idx` in dB."] # [doc = ""] # [inline] pub fn get_bus_volume_db (& self , bus_idx : i64) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_bus_volume_db ; let ret = crate :: icalls :: icallptr_f64_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx) ; ret as _ } } # [doc = "Name of the current device for audio output (see [method get_device_list])."] # [doc = ""] # [inline] pub fn device (& self) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_device ; let ret = crate :: icalls :: icallptr_str (method_bind , self . this . sys () . as_ptr ()) ; GodotString :: from_sys (ret) } } # [doc = "Returns the names of all audio devices detected on the system."] # [doc = ""] # [inline] pub fn get_device_list (& self) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_device_list ; let ret = crate :: icalls :: icallvar_ (method_bind , self . this . sys () . as_ptr ()) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } # [doc = "Scales the rate at which audio is played (i.e. setting it to `0.5` will make the audio be played twice as fast)."] # [doc = ""] # [inline] pub fn global_rate_scale (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_global_rate_scale ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns the sample rate at the output of the [AudioServer]."] # [doc = ""] # [inline] pub fn get_mix_rate (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_mix_rate ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns the audio driver's output latency."] # [doc = ""] # [inline] pub fn get_output_latency (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_output_latency ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns the speaker configuration."] # [doc = ""] # [inline] pub fn get_speaker_mode (& self) -> crate :: generated :: audio_server :: SpeakerMode { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_speaker_mode ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; crate :: generated :: audio_server :: SpeakerMode (ret) } } # [doc = "Returns the relative time since the last mix occurred."] # [doc = ""] # [inline] pub fn get_time_since_last_mix (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_time_since_last_mix ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns the relative time until the next mix occurs."] # [doc = ""] # [inline] pub fn get_time_to_next_mix (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . get_time_to_next_mix ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "If `true`, the bus at index `bus_idx` is bypassing effects."] # [doc = ""] # [inline] pub fn is_bus_bypassing_effects (& self , bus_idx : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . is_bus_bypassing_effects ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx) ; ret as _ } } # [doc = "If `true`, the effect at index `effect_idx` on the bus at index `bus_idx` is enabled."] # [doc = ""] # [inline] pub fn is_bus_effect_enabled (& self , bus_idx : i64 , effect_idx : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . is_bus_effect_enabled ; let ret = crate :: icalls :: icallptr_bool_i64_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx , effect_idx) ; ret as _ } } # [doc = "If `true`, the bus at index `bus_idx` is muted."] # [doc = ""] # [inline] pub fn is_bus_mute (& self , bus_idx : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . is_bus_mute ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx) ; ret as _ } } # [doc = "If `true`, the bus at index `bus_idx` is in solo mode."] # [doc = ""] # [inline] pub fn is_bus_solo (& self , bus_idx : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . is_bus_solo ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx) ; ret as _ } } # [doc = "Locks the audio driver's main loop.\n**Note:** Remember to unlock it afterwards."] # [doc = ""] # [inline] pub fn lock (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . lock ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = "Moves the bus from index `index` to index `to_index`."] # [doc = ""] # [inline] pub fn move_bus (& self , index : i64 , to_index : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . move_bus ; let ret = crate :: icalls :: icallptr_void_i64_i64 (method_bind , self . this . sys () . as_ptr () , index , to_index) ; } } # [doc = "Removes the bus at index `index`."] # [doc = ""] # [inline] pub fn remove_bus (& self , index : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . remove_bus ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , index) ; } } # [doc = "Removes the effect at index `effect_idx` from the bus at index `bus_idx`."] # [doc = ""] # [inline] pub fn remove_bus_effect (& self , bus_idx : i64 , effect_idx : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . remove_bus_effect ; let ret = crate :: icalls :: icallptr_void_i64_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx , effect_idx) ; } } # [doc = "If `true`, the bus at index `bus_idx` is bypassing effects."] # [doc = ""] # [inline] pub fn set_bus_bypass_effects (& self , bus_idx : i64 , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . set_bus_bypass_effects ; let ret = crate :: icalls :: icallptr_void_i64_bool (method_bind , self . this . sys () . as_ptr () , bus_idx , enable) ; } } # [doc = "Number of available audio buses."] # [doc = ""] # [inline] pub fn set_bus_count (& self , amount : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . set_bus_count ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , amount) ; } } # [doc = "If `true`, the effect at index `effect_idx` on the bus at index `bus_idx` is enabled."] # [doc = ""] # [inline] pub fn set_bus_effect_enabled (& self , bus_idx : i64 , effect_idx : i64 , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . set_bus_effect_enabled ; let ret = crate :: icalls :: icallptr_void_i64_i64_bool (method_bind , self . this . sys () . as_ptr () , bus_idx , effect_idx , enabled) ; } } # [doc = "Overwrites the currently used [AudioBusLayout]."] # [doc = ""] # [inline] pub fn set_bus_layout (& self , bus_layout : impl AsArg < crate :: generated :: audio_bus_layout :: AudioBusLayout >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . set_bus_layout ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , bus_layout . as_arg_ptr ()) ; } } # [doc = "If `true`, the bus at index `bus_idx` is muted."] # [doc = ""] # [inline] pub fn set_bus_mute (& self , bus_idx : i64 , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . set_bus_mute ; let ret = crate :: icalls :: icallptr_void_i64_bool (method_bind , self . this . sys () . as_ptr () , bus_idx , enable) ; } } # [doc = "Sets the name of the bus at index `bus_idx` to `name`."] # [doc = ""] # [inline] pub fn set_bus_name (& self , bus_idx : i64 , name : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . set_bus_name ; let ret = crate :: icalls :: icallptr_void_i64_str (method_bind , self . this . sys () . as_ptr () , bus_idx , name . into ()) ; } } # [doc = "Connects the output of the bus at `bus_idx` to the bus named `send`."] # [doc = ""] # [inline] pub fn set_bus_send (& self , bus_idx : i64 , send : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . set_bus_send ; let ret = crate :: icalls :: icallptr_void_i64_str (method_bind , self . this . sys () . as_ptr () , bus_idx , send . into ()) ; } } # [doc = "If `true`, the bus at index `bus_idx` is in solo mode."] # [doc = ""] # [inline] pub fn set_bus_solo (& self , bus_idx : i64 , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . set_bus_solo ; let ret = crate :: icalls :: icallptr_void_i64_bool (method_bind , self . this . sys () . as_ptr () , bus_idx , enable) ; } } # [doc = "Sets the volume of the bus at index `bus_idx` to `volume_db`."] # [doc = ""] # [inline] pub fn set_bus_volume_db (& self , bus_idx : i64 , volume_db : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . set_bus_volume_db ; let ret = crate :: icalls :: icallptr_void_i64_f64 (method_bind , self . this . sys () . as_ptr () , bus_idx , volume_db) ; } } # [doc = "Name of the current device for audio output (see [method get_device_list])."] # [doc = ""] # [inline] pub fn set_device (& self , device : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . set_device ; let ret = crate :: icalls :: icallptr_void_str (method_bind , self . this . sys () . as_ptr () , device . into ()) ; } } # [doc = "Scales the rate at which audio is played (i.e. setting it to `0.5` will make the audio be played twice as fast)."] # [doc = ""] # [inline] pub fn set_global_rate_scale (& self , scale : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . set_global_rate_scale ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , scale) ; } } # [doc = "Swaps the position of two effects in bus `bus_idx`."] # [doc = ""] # [inline] pub fn swap_bus_effects (& self , bus_idx : i64 , effect_idx : i64 , by_effect_idx : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . swap_bus_effects ; let ret = crate :: icalls :: icallptr_void_i64_i64_i64 (method_bind , self . this . sys () . as_ptr () , bus_idx , effect_idx , by_effect_idx) ; } } # [doc = "Unlocks the audio driver's main loop. (After locking it, you should always unlock it.)"] # [doc = ""] # [inline] pub fn unlock (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = AudioServerMethodTable :: get (get_api ()) . unlock ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for AudioServer { } unsafe impl GodotObject for AudioServer { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "AudioServer" } } impl std :: ops :: Deref for AudioServer { type Target = crate :: generated :: object :: Object ; # [inline] fn deref (& self) -> & crate :: generated :: object :: Object { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for AudioServer { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: object :: Object { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: object :: Object > for AudioServer { } unsafe impl Send for AudioServer { } unsafe impl Sync for AudioServer { } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct AudioServerMethodTable { pub class_constructor : sys :: godot_class_constructor , pub add_bus : * mut sys :: godot_method_bind , pub add_bus_effect : * mut sys :: godot_method_bind , pub capture_get_device : * mut sys :: godot_method_bind , pub capture_get_device_list : * mut sys :: godot_method_bind , pub capture_set_device : * mut sys :: godot_method_bind , pub generate_bus_layout : * mut sys :: godot_method_bind , pub get_bus_channels : * mut sys :: godot_method_bind , pub get_bus_count : * mut sys :: godot_method_bind , pub get_bus_effect : * mut sys :: godot_method_bind , pub get_bus_effect_count : * mut sys :: godot_method_bind , pub get_bus_effect_instance : * mut sys :: godot_method_bind , pub get_bus_index : * mut sys :: godot_method_bind , pub get_bus_name : * mut sys :: godot_method_bind , pub get_bus_peak_volume_left_db : * mut sys :: godot_method_bind , pub get_bus_peak_volume_right_db : * mut sys :: godot_method_bind , pub get_bus_send : * mut sys :: godot_method_bind , pub get_bus_volume_db : * mut sys :: godot_method_bind , pub get_device : * mut sys :: godot_method_bind , pub get_device_list : * mut sys :: godot_method_bind , pub get_global_rate_scale : * mut sys :: godot_method_bind , pub get_mix_rate : * mut sys :: godot_method_bind , pub get_output_latency : * mut sys :: godot_method_bind , pub get_speaker_mode : * mut sys :: godot_method_bind , pub get_time_since_last_mix : * mut sys :: godot_method_bind , pub get_time_to_next_mix : * mut sys :: godot_method_bind , pub is_bus_bypassing_effects : * mut sys :: godot_method_bind , pub is_bus_effect_enabled : * mut sys :: godot_method_bind , pub is_bus_mute : * mut sys :: godot_method_bind , pub is_bus_solo : * mut sys :: godot_method_bind , pub lock : * mut sys :: godot_method_bind , pub move_bus : * mut sys :: godot_method_bind , pub remove_bus : * mut sys :: godot_method_bind , pub remove_bus_effect : * mut sys :: godot_method_bind , pub set_bus_bypass_effects : * mut sys :: godot_method_bind , pub set_bus_count : * mut sys :: godot_method_bind , pub set_bus_effect_enabled : * mut sys :: godot_method_bind , pub set_bus_layout : * mut sys :: godot_method_bind , pub set_bus_mute : * mut sys :: godot_method_bind , pub set_bus_name : * mut sys :: godot_method_bind , pub set_bus_send : * mut sys :: godot_method_bind , pub set_bus_solo : * mut sys :: godot_method_bind , pub set_bus_volume_db : * mut sys :: godot_method_bind , pub set_device : * mut sys :: godot_method_bind , pub set_global_rate_scale : * mut sys :: godot_method_bind , pub swap_bus_effects : * mut sys :: godot_method_bind , pub unlock : * mut sys :: godot_method_bind } impl AudioServerMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : AudioServerMethodTable = AudioServerMethodTable { class_constructor : None , add_bus : 0 as * mut sys :: godot_method_bind , add_bus_effect : 0 as * mut sys :: godot_method_bind , capture_get_device : 0 as * mut sys :: godot_method_bind , capture_get_device_list : 0 as * mut sys :: godot_method_bind , capture_set_device : 0 as * mut sys :: godot_method_bind , generate_bus_layout : 0 as * mut sys :: godot_method_bind , get_bus_channels : 0 as * mut sys :: godot_method_bind , get_bus_count : 0 as * mut sys :: godot_method_bind , get_bus_effect : 0 as * mut sys :: godot_method_bind , get_bus_effect_count : 0 as * mut sys :: godot_method_bind , get_bus_effect_instance : 0 as * mut sys :: godot_method_bind , get_bus_index : 0 as * mut sys :: godot_method_bind , get_bus_name : 0 as * mut sys :: godot_method_bind , get_bus_peak_volume_left_db : 0 as * mut sys :: godot_method_bind , get_bus_peak_volume_right_db : 0 as * mut sys :: godot_method_bind , get_bus_send : 0 as * mut sys :: godot_method_bind , get_bus_volume_db : 0 as * mut sys :: godot_method_bind , get_device : 0 as * mut sys :: godot_method_bind , get_device_list : 0 as * mut sys :: godot_method_bind , get_global_rate_scale : 0 as * mut sys :: godot_method_bind , get_mix_rate : 0 as * mut sys :: godot_method_bind , get_output_latency : 0 as * mut sys :: godot_method_bind , get_speaker_mode : 0 as * mut sys :: godot_method_bind , get_time_since_last_mix : 0 as * mut sys :: godot_method_bind , get_time_to_next_mix : 0 as * mut sys :: godot_method_bind , is_bus_bypassing_effects : 0 as * mut sys :: godot_method_bind , is_bus_effect_enabled : 0 as * mut sys :: godot_method_bind , is_bus_mute : 0 as * mut sys :: godot_method_bind , is_bus_solo : 0 as * mut sys :: godot_method_bind , lock : 0 as * mut sys :: godot_method_bind , move_bus : 0 as * mut sys :: godot_method_bind , remove_bus : 0 as * mut sys :: godot_method_bind , remove_bus_effect : 0 as * mut sys :: godot_method_bind , set_bus_bypass_effects : 0 as * mut sys :: godot_method_bind , set_bus_count : 0 as * mut sys :: godot_method_bind , set_bus_effect_enabled : 0 as * mut sys :: godot_method_bind , set_bus_layout : 0 as * mut sys :: godot_method_bind , set_bus_mute : 0 as * mut sys :: godot_method_bind , set_bus_name : 0 as * mut sys :: godot_method_bind , set_bus_send : 0 as * mut sys :: godot_method_bind , set_bus_solo : 0 as * mut sys :: godot_method_bind , set_bus_volume_db : 0 as * mut sys :: godot_method_bind , set_device : 0 as * mut sys :: godot_method_bind , set_global_rate_scale : 0 as * mut sys :: godot_method_bind , swap_bus_effects : 0 as * mut sys :: godot_method_bind , unlock : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { AudioServerMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "AudioServer\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . add_bus = (gd_api . godot_method_bind_get_method) (class_name , "add_bus\0" . as_ptr () as * const c_char) ; table . add_bus_effect = (gd_api . godot_method_bind_get_method) (class_name , "add_bus_effect\0" . as_ptr () as * const c_char) ; table . capture_get_device = (gd_api . godot_method_bind_get_method) (class_name , "capture_get_device\0" . as_ptr () as * const c_char) ; table . capture_get_device_list = (gd_api . godot_method_bind_get_method) (class_name , "capture_get_device_list\0" . as_ptr () as * const c_char) ; table . capture_set_device = (gd_api . godot_method_bind_get_method) (class_name , "capture_set_device\0" . as_ptr () as * const c_char) ; table . generate_bus_layout = (gd_api . godot_method_bind_get_method) (class_name , "generate_bus_layout\0" . as_ptr () as * const c_char) ; table . get_bus_channels = (gd_api . godot_method_bind_get_method) (class_name , "get_bus_channels\0" . as_ptr () as * const c_char) ; table . get_bus_count = (gd_api . godot_method_bind_get_method) (class_name , "get_bus_count\0" . as_ptr () as * const c_char) ; table . get_bus_effect = (gd_api . godot_method_bind_get_method) (class_name , "get_bus_effect\0" . as_ptr () as * const c_char) ; table . get_bus_effect_count = (gd_api . godot_method_bind_get_method) (class_name , "get_bus_effect_count\0" . as_ptr () as * const c_char) ; table . get_bus_effect_instance = (gd_api . godot_method_bind_get_method) (class_name , "get_bus_effect_instance\0" . as_ptr () as * const c_char) ; table . get_bus_index = (gd_api . godot_method_bind_get_method) (class_name , "get_bus_index\0" . as_ptr () as * const c_char) ; table . get_bus_name = (gd_api . godot_method_bind_get_method) (class_name , "get_bus_name\0" . as_ptr () as * const c_char) ; table . get_bus_peak_volume_left_db = (gd_api . godot_method_bind_get_method) (class_name , "get_bus_peak_volume_left_db\0" . as_ptr () as * const c_char) ; table . get_bus_peak_volume_right_db = (gd_api . godot_method_bind_get_method) (class_name , "get_bus_peak_volume_right_db\0" . as_ptr () as * const c_char) ; table . get_bus_send = (gd_api . godot_method_bind_get_method) (class_name , "get_bus_send\0" . as_ptr () as * const c_char) ; table . get_bus_volume_db = (gd_api . godot_method_bind_get_method) (class_name , "get_bus_volume_db\0" . as_ptr () as * const c_char) ; table . get_device = (gd_api . godot_method_bind_get_method) (class_name , "get_device\0" . as_ptr () as * const c_char) ; table . get_device_list = (gd_api . godot_method_bind_get_method) (class_name , "get_device_list\0" . as_ptr () as * const c_char) ; table . get_global_rate_scale = (gd_api . godot_method_bind_get_method) (class_name , "get_global_rate_scale\0" . as_ptr () as * const c_char) ; table . get_mix_rate = (gd_api . godot_method_bind_get_method) (class_name , "get_mix_rate\0" . as_ptr () as * const c_char) ; table . get_output_latency = (gd_api . godot_method_bind_get_method) (class_name , "get_output_latency\0" . as_ptr () as * const c_char) ; table . get_speaker_mode = (gd_api . godot_method_bind_get_method) (class_name , "get_speaker_mode\0" . as_ptr () as * const c_char) ; table . get_time_since_last_mix = (gd_api . godot_method_bind_get_method) (class_name , "get_time_since_last_mix\0" . as_ptr () as * const c_char) ; table . get_time_to_next_mix = (gd_api . godot_method_bind_get_method) (class_name , "get_time_to_next_mix\0" . as_ptr () as * const c_char) ; table . is_bus_bypassing_effects = (gd_api . godot_method_bind_get_method) (class_name , "is_bus_bypassing_effects\0" . as_ptr () as * const c_char) ; table . is_bus_effect_enabled = (gd_api . godot_method_bind_get_method) (class_name , "is_bus_effect_enabled\0" . as_ptr () as * const c_char) ; table . is_bus_mute = (gd_api . godot_method_bind_get_method) (class_name , "is_bus_mute\0" . as_ptr () as * const c_char) ; table . is_bus_solo = (gd_api . godot_method_bind_get_method) (class_name , "is_bus_solo\0" . as_ptr () as * const c_char) ; table . lock = (gd_api . godot_method_bind_get_method) (class_name , "lock\0" . as_ptr () as * const c_char) ; table . move_bus = (gd_api . godot_method_bind_get_method) (class_name , "move_bus\0" . as_ptr () as * const c_char) ; table . remove_bus = (gd_api . godot_method_bind_get_method) (class_name , "remove_bus\0" . as_ptr () as * const c_char) ; table . remove_bus_effect = (gd_api . godot_method_bind_get_method) (class_name , "remove_bus_effect\0" . as_ptr () as * const c_char) ; table . set_bus_bypass_effects = (gd_api . godot_method_bind_get_method) (class_name , "set_bus_bypass_effects\0" . as_ptr () as * const c_char) ; table . set_bus_count = (gd_api . godot_method_bind_get_method) (class_name , "set_bus_count\0" . as_ptr () as * const c_char) ; table . set_bus_effect_enabled = (gd_api . godot_method_bind_get_method) (class_name , "set_bus_effect_enabled\0" . as_ptr () as * const c_char) ; table . set_bus_layout = (gd_api . godot_method_bind_get_method) (class_name , "set_bus_layout\0" . as_ptr () as * const c_char) ; table . set_bus_mute = (gd_api . godot_method_bind_get_method) (class_name , "set_bus_mute\0" . as_ptr () as * const c_char) ; table . set_bus_name = (gd_api . godot_method_bind_get_method) (class_name , "set_bus_name\0" . as_ptr () as * const c_char) ; table . set_bus_send = (gd_api . godot_method_bind_get_method) (class_name , "set_bus_send\0" . as_ptr () as * const c_char) ; table . set_bus_solo = (gd_api . godot_method_bind_get_method) (class_name , "set_bus_solo\0" . as_ptr () as * const c_char) ; table . set_bus_volume_db = (gd_api . godot_method_bind_get_method) (class_name , "set_bus_volume_db\0" . as_ptr () as * const c_char) ; table . set_device = (gd_api . godot_method_bind_get_method) (class_name , "set_device\0" . as_ptr () as * const c_char) ; table . set_global_rate_scale = (gd_api . godot_method_bind_get_method) (class_name , "set_global_rate_scale\0" . as_ptr () as * const c_char) ; table . swap_bus_effects = (gd_api . godot_method_bind_get_method) (class_name , "swap_bus_effects\0" . as_ptr () as * const c_char) ; table . unlock = (gd_api . godot_method_bind_get_method) (class_name , "unlock\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:82:4238 [INFO] [stdout] | [INFO] [stdout] 82 | ... 0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 82 | # [doc = "`core class CircleShape2D` inherits `Shape2D` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_circleshape2d.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nCircleShape2D inherits methods from:\n - [Shape2D](struct.Shape2D.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct CircleShape2D { this : RawObject < Self > , } impl CircleShape2D { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = CircleShape2DMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "The circle's radius."] # [doc = ""] # [inline] pub fn radius (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = CircleShape2DMethodTable :: get (get_api ()) . get_radius ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "The circle's radius."] # [doc = ""] # [inline] pub fn set_radius (& self , radius : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = CircleShape2DMethodTable :: get (get_api ()) . set_radius ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , radius) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for CircleShape2D { } unsafe impl GodotObject for CircleShape2D { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "CircleShape2D" } } impl std :: ops :: Deref for CircleShape2D { type Target = crate :: generated :: shape_2d :: Shape2D ; # [inline] fn deref (& self) -> & crate :: generated :: shape_2d :: Shape2D { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for CircleShape2D { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: shape_2d :: Shape2D { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: shape_2d :: Shape2D > for CircleShape2D { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for CircleShape2D { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for CircleShape2D { } unsafe impl SubClass < crate :: generated :: object :: Object > for CircleShape2D { } impl Instanciable for CircleShape2D { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { CircleShape2D :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct CircleShape2DMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_radius : * mut sys :: godot_method_bind , pub set_radius : * mut sys :: godot_method_bind } impl CircleShape2DMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : CircleShape2DMethodTable = CircleShape2DMethodTable { class_constructor : None , get_radius : 0 as * mut sys :: godot_method_bind , set_radius : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { CircleShape2DMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "CircleShape2D\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_radius = (gd_api . godot_method_bind_get_method) (class_name , "get_radius\0" . as_ptr () as * const c_char) ; table . set_radius = (gd_api . godot_method_bind_get_method) (class_name , "set_radius\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:88:4464 [INFO] [stdout] | [INFO] [stdout] 88 | ...odTable { class_constructor : None , } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 88 | # [doc = "`core class VSeparator` inherits `Separator` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_vseparator.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nNon reference counted objects such as the ones of this type are usually owned by the engine.\n\n`VSeparator` is a reference-only type. Persistent references can\nonly exist in the unsafe `Ref` form.\n\nIn the cases where Rust code owns an object of this type, for example if the object was just\ncreated on the Rust side and not passed to the engine yet, ownership should be either given\nto the engine or the object must be manually destroyed using `Ref::free`, or `Ref::queue_free`\nif it is a `Node`."] # [doc = "\n## Class hierarchy\n\nVSeparator inherits methods from:\n - [Separator](struct.Separator.html)\n - [Control](struct.Control.html)\n - [CanvasItem](struct.CanvasItem.html)\n - [Node](struct.Node.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VSeparator { this : RawObject < Self > , } impl VSeparator { # [doc = "Creates a new instance of this object.\n\nBecause this type is not reference counted, the lifetime of the returned object\nis *not* automatically managed.\n\nImmediately after creation, the object is owned by the caller, and can be\npassed to the engine (in which case the engine will be responsible for\ndestroying the object) or destroyed manually using `Ref::free`, or preferably\n`Ref::queue_free` if it is a `Node`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VSeparatorMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } } impl gdnative_core :: private :: godot_object :: Sealed for VSeparator { } unsafe impl GodotObject for VSeparator { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "VSeparator" } } impl QueueFree for VSeparator { # [inline] unsafe fn godot_queue_free (obj : * mut sys :: godot_object) { let method_bind : * mut sys :: godot_method_bind = crate :: generated :: node :: NodeMethodTable :: get (get_api ()) . queue_free ; crate :: icalls :: icallptr_void (method_bind , obj) } } impl std :: ops :: Deref for VSeparator { type Target = crate :: generated :: separator :: Separator ; # [inline] fn deref (& self) -> & crate :: generated :: separator :: Separator { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VSeparator { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: separator :: Separator { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: separator :: Separator > for VSeparator { } unsafe impl SubClass < crate :: generated :: control :: Control > for VSeparator { } unsafe impl SubClass < crate :: generated :: canvas_item :: CanvasItem > for VSeparator { } unsafe impl SubClass < crate :: generated :: node :: Node > for VSeparator { } unsafe impl SubClass < crate :: generated :: object :: Object > for VSeparator { } impl Instanciable for VSeparator { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VSeparator :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VSeparatorMethodTable { pub class_constructor : sys :: godot_class_constructor , } impl VSeparatorMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VSeparatorMethodTable = VSeparatorMethodTable { class_constructor : None , } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VSeparatorMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VSeparator\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:94:7609 [INFO] [stdout] | [INFO] [stdout] 94 | ... 0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 94 | # [doc = "`core class Physics2DTestMotionResult` inherits `Reference` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_physics2dtestmotionresult.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nPhysics2DTestMotionResult inherits methods from:\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct Physics2DTestMotionResult { this : RawObject < Self > , } impl Physics2DTestMotionResult { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = Physics2DTestMotionResultMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = ""] # [doc = ""] # [inline] pub fn collider (& self) -> Option < Ref < crate :: generated :: object :: Object , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = Physics2DTestMotionResultMethodTable :: get (get_api ()) . get_collider ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: object :: Object , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = ""] # [doc = ""] # [inline] pub fn collider_id (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = Physics2DTestMotionResultMethodTable :: get (get_api ()) . get_collider_id ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn collider_rid (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = Physics2DTestMotionResultMethodTable :: get (get_api ()) . get_collider_rid ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn collider_shape (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = Physics2DTestMotionResultMethodTable :: get (get_api ()) . get_collider_shape ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn collider_velocity (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = Physics2DTestMotionResultMethodTable :: get (get_api ()) . get_collider_velocity ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn collision_normal (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = Physics2DTestMotionResultMethodTable :: get (get_api ()) . get_collision_normal ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn collision_point (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = Physics2DTestMotionResultMethodTable :: get (get_api ()) . get_collision_point ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn motion (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = Physics2DTestMotionResultMethodTable :: get (get_api ()) . get_motion ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn motion_remainder (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = Physics2DTestMotionResultMethodTable :: get (get_api ()) . get_motion_remainder ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } } impl gdnative_core :: private :: godot_object :: Sealed for Physics2DTestMotionResult { } unsafe impl GodotObject for Physics2DTestMotionResult { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "Physics2DTestMotionResult" } } impl std :: ops :: Deref for Physics2DTestMotionResult { type Target = crate :: generated :: reference :: Reference ; # [inline] fn deref (& self) -> & crate :: generated :: reference :: Reference { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for Physics2DTestMotionResult { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: reference :: Reference { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: reference :: Reference > for Physics2DTestMotionResult { } unsafe impl SubClass < crate :: generated :: object :: Object > for Physics2DTestMotionResult { } impl Instanciable for Physics2DTestMotionResult { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { Physics2DTestMotionResult :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct Physics2DTestMotionResultMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_collider : * mut sys :: godot_method_bind , pub get_collider_id : * mut sys :: godot_method_bind , pub get_collider_rid : * mut sys :: godot_method_bind , pub get_collider_shape : * mut sys :: godot_method_bind , pub get_collider_velocity : * mut sys :: godot_method_bind , pub get_collision_normal : * mut sys :: godot_method_bind , pub get_collision_point : * mut sys :: godot_method_bind , pub get_motion : * mut sys :: godot_method_bind , pub get_motion_remainder : * mut sys :: godot_method_bind } impl Physics2DTestMotionResultMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : Physics2DTestMotionResultMethodTable = Physics2DTestMotionResultMethodTable { class_constructor : None , get_collider : 0 as * mut sys :: godot_method_bind , get_collider_id : 0 as * mut sys :: godot_method_bind , get_collider_rid : 0 as * mut sys :: godot_method_bind , get_collider_shape : 0 as * mut sys :: godot_method_bind , get_collider_velocity : 0 as * mut sys :: godot_method_bind , get_collision_normal : 0 as * mut sys :: godot_method_bind , get_collision_point : 0 as * mut sys :: godot_method_bind , get_motion : 0 as * mut sys :: godot_method_bind , get_motion_remainder : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { Physics2DTestMotionResultMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "Physics2DTestMotionResult\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_collider = (gd_api . godot_method_bind_get_method) (class_name , "get_collider\0" . as_ptr () as * const c_char) ; table . get_collider_id = (gd_api . godot_method_bind_get_method) (class_name , "get_collider_id\0" . as_ptr () as * const c_char) ; table . get_collider_rid = (gd_api . godot_method_bind_get_method) (class_name , "get_collider_rid\0" . as_ptr () as * const c_char) ; table . get_collider_shape = (gd_api . godot_method_bind_get_method) (class_name , "get_collider_shape\0" . as_ptr () as * const c_char) ; table . get_collider_velocity = (gd_api . godot_method_bind_get_method) (class_name , "get_collider_velocity\0" . as_ptr () as * const c_char) ; table . get_collision_normal = (gd_api . godot_method_bind_get_method) (class_name , "get_collision_normal\0" . as_ptr () as * const c_char) ; table . get_collision_point = (gd_api . godot_method_bind_get_method) (class_name , "get_collision_point\0" . as_ptr () as * const c_char) ; table . get_motion = (gd_api . godot_method_bind_get_method) (class_name , "get_motion\0" . as_ptr () as * const c_char) ; table . get_motion_remainder = (gd_api . godot_method_bind_get_method) (class_name , "get_motion_remainder\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:100:4604 [INFO] [stdout] | [INFO] [stdout] 100 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 100 | # [doc = "`core class VisualScriptVariableSet` inherits `VisualScriptNode` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualscriptvariableset.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nVisualScriptVariableSet inherits methods from:\n - [VisualScriptNode](struct.VisualScriptNode.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualScriptVariableSet { this : RawObject < Self > , } impl VisualScriptVariableSet { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisualScriptVariableSetMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = ""] # [doc = ""] # [inline] pub fn variable (& self) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualScriptVariableSetMethodTable :: get (get_api ()) . get_variable ; let ret = crate :: icalls :: icallptr_str (method_bind , self . this . sys () . as_ptr ()) ; GodotString :: from_sys (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn set_variable (& self , name : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualScriptVariableSetMethodTable :: get (get_api ()) . set_variable ; let ret = crate :: icalls :: icallptr_void_str (method_bind , self . this . sys () . as_ptr () , name . into ()) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualScriptVariableSet { } unsafe impl GodotObject for VisualScriptVariableSet { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "VisualScriptVariableSet" } } impl std :: ops :: Deref for VisualScriptVariableSet { type Target = crate :: generated :: visual_script_node :: VisualScriptNode ; # [inline] fn deref (& self) -> & crate :: generated :: visual_script_node :: VisualScriptNode { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualScriptVariableSet { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: visual_script_node :: VisualScriptNode { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: visual_script_node :: VisualScriptNode > for VisualScriptVariableSet { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for VisualScriptVariableSet { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for VisualScriptVariableSet { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualScriptVariableSet { } impl Instanciable for VisualScriptVariableSet { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisualScriptVariableSet :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualScriptVariableSetMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_variable : * mut sys :: godot_method_bind , pub set_variable : * mut sys :: godot_method_bind } impl VisualScriptVariableSetMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualScriptVariableSetMethodTable = VisualScriptVariableSetMethodTable { class_constructor : None , get_variable : 0 as * mut sys :: godot_method_bind , set_variable : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualScriptVariableSetMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualScriptVariableSet\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_variable = (gd_api . godot_method_bind_get_method) (class_name , "get_variable\0" . as_ptr () as * const c_char) ; table . set_variable = (gd_api . godot_method_bind_get_method) (class_name , "set_variable\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:106:9289 [INFO] [stdout] | [INFO] [stdout] 106 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 106 | # [doc = "`core class MobileVRInterface` inherits `ARVRInterface` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_mobilevrinterface.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nMobileVRInterface inherits methods from:\n - [ARVRInterface](struct.ARVRInterface.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct MobileVRInterface { this : RawObject < Self > , } impl MobileVRInterface { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = MobileVRInterfaceMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = ""] # [doc = ""] # [inline] pub fn display_to_lens (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = MobileVRInterfaceMethodTable :: get (get_api ()) . get_display_to_lens ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn display_width (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = MobileVRInterfaceMethodTable :: get (get_api ()) . get_display_width ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn eye_height (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = MobileVRInterfaceMethodTable :: get (get_api ()) . get_eye_height ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn iod (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = MobileVRInterfaceMethodTable :: get (get_api ()) . get_iod ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn k1 (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = MobileVRInterfaceMethodTable :: get (get_api ()) . get_k1 ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn k2 (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = MobileVRInterfaceMethodTable :: get (get_api ()) . get_k2 ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn oversample (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = MobileVRInterfaceMethodTable :: get (get_api ()) . get_oversample ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn set_display_to_lens (& self , display_to_lens : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = MobileVRInterfaceMethodTable :: get (get_api ()) . set_display_to_lens ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , display_to_lens) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_display_width (& self , display_width : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = MobileVRInterfaceMethodTable :: get (get_api ()) . set_display_width ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , display_width) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_eye_height (& self , eye_height : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = MobileVRInterfaceMethodTable :: get (get_api ()) . set_eye_height ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , eye_height) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_iod (& self , iod : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = MobileVRInterfaceMethodTable :: get (get_api ()) . set_iod ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , iod) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_k1 (& self , k : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = MobileVRInterfaceMethodTable :: get (get_api ()) . set_k1 ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , k) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_k2 (& self , k : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = MobileVRInterfaceMethodTable :: get (get_api ()) . set_k2 ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , k) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_oversample (& self , oversample : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = MobileVRInterfaceMethodTable :: get (get_api ()) . set_oversample ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , oversample) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for MobileVRInterface { } unsafe impl GodotObject for MobileVRInterface { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "MobileVRInterface" } } impl std :: ops :: Deref for MobileVRInterface { type Target = crate :: generated :: arvr_interface :: ARVRInterface ; # [inline] fn deref (& self) -> & crate :: generated :: arvr_interface :: ARVRInterface { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for MobileVRInterface { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: arvr_interface :: ARVRInterface { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: arvr_interface :: ARVRInterface > for MobileVRInterface { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for MobileVRInterface { } unsafe impl SubClass < crate :: generated :: object :: Object > for MobileVRInterface { } impl Instanciable for MobileVRInterface { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { MobileVRInterface :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct MobileVRInterfaceMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_display_to_lens : * mut sys :: godot_method_bind , pub get_display_width : * mut sys :: godot_method_bind , pub get_eye_height : * mut sys :: godot_method_bind , pub get_iod : * mut sys :: godot_method_bind , pub get_k1 : * mut sys :: godot_method_bind , pub get_k2 : * mut sys :: godot_method_bind , pub get_oversample : * mut sys :: godot_method_bind , pub set_display_to_lens : * mut sys :: godot_method_bind , pub set_display_width : * mut sys :: godot_method_bind , pub set_eye_height : * mut sys :: godot_method_bind , pub set_iod : * mut sys :: godot_method_bind , pub set_k1 : * mut sys :: godot_method_bind , pub set_k2 : * mut sys :: godot_method_bind , pub set_oversample : * mut sys :: godot_method_bind } impl MobileVRInterfaceMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : MobileVRInterfaceMethodTable = MobileVRInterfaceMethodTable { class_constructor : None , get_display_to_lens : 0 as * mut sys :: godot_method_bind , get_display_width : 0 as * mut sys :: godot_method_bind , get_eye_height : 0 as * mut sys :: godot_method_bind , get_iod : 0 as * mut sys :: godot_method_bind , get_k1 : 0 as * mut sys :: godot_method_bind , get_k2 : 0 as * mut sys :: godot_method_bind , get_oversample : 0 as * mut sys :: godot_method_bind , set_display_to_lens : 0 as * mut sys :: godot_method_bind , set_display_width : 0 as * mut sys :: godot_method_bind , set_eye_height : 0 as * mut sys :: godot_method_bind , set_iod : 0 as * mut sys :: godot_method_bind , set_k1 : 0 as * mut sys :: godot_method_bind , set_k2 : 0 as * mut sys :: godot_method_bind , set_oversample : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { MobileVRInterfaceMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "MobileVRInterface\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_display_to_lens = (gd_api . godot_method_bind_get_method) (class_name , "get_display_to_lens\0" . as_ptr () as * const c_char) ; table . get_display_width = (gd_api . godot_method_bind_get_method) (class_name , "get_display_width\0" . as_ptr () as * const c_char) ; table . get_eye_height = (gd_api . godot_method_bind_get_method) (class_name , "get_eye_height\0" . as_ptr () as * const c_char) ; table . get_iod = (gd_api . godot_method_bind_get_method) (class_name , "get_iod\0" . as_ptr () as * const c_char) ; table . get_k1 = (gd_api . godot_method_bind_get_method) (class_name , "get_k1\0" . as_ptr () as * const c_char) ; table . get_k2 = (gd_api . godot_method_bind_get_method) (class_name , "get_k2\0" . as_ptr () as * const c_char) ; table . get_oversample = (gd_api . godot_method_bind_get_method) (class_name , "get_oversample\0" . as_ptr () as * const c_char) ; table . set_display_to_lens = (gd_api . godot_method_bind_get_method) (class_name , "set_display_to_lens\0" . as_ptr () as * const c_char) ; table . set_display_width = (gd_api . godot_method_bind_get_method) (class_name , "set_display_width\0" . as_ptr () as * const c_char) ; table . set_eye_height = (gd_api . godot_method_bind_get_method) (class_name , "set_eye_height\0" . as_ptr () as * const c_char) ; table . set_iod = (gd_api . godot_method_bind_get_method) (class_name , "set_iod\0" . as_ptr () as * const c_char) ; table . set_k1 = (gd_api . godot_method_bind_get_method) (class_name , "set_k1\0" . as_ptr () as * const c_char) ; table . set_k2 = (gd_api . godot_method_bind_get_method) (class_name , "set_k2\0" . as_ptr () as * const c_char) ; table . set_oversample = (gd_api . godot_method_bind_get_method) (class_name , "set_oversample\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:112:4315 [INFO] [stdout] | [INFO] [stdout] 112 | ...dTable { class_constructor : None , } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 112 | # [doc = "`core class Position2D` inherits `Node2D` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_position2d.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nNon reference counted objects such as the ones of this type are usually owned by the engine.\n\n`Position2D` is a reference-only type. Persistent references can\nonly exist in the unsafe `Ref` form.\n\nIn the cases where Rust code owns an object of this type, for example if the object was just\ncreated on the Rust side and not passed to the engine yet, ownership should be either given\nto the engine or the object must be manually destroyed using `Ref::free`, or `Ref::queue_free`\nif it is a `Node`."] # [doc = "\n## Class hierarchy\n\nPosition2D inherits methods from:\n - [Node2D](struct.Node2D.html)\n - [CanvasItem](struct.CanvasItem.html)\n - [Node](struct.Node.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct Position2D { this : RawObject < Self > , } impl Position2D { # [doc = "Creates a new instance of this object.\n\nBecause this type is not reference counted, the lifetime of the returned object\nis *not* automatically managed.\n\nImmediately after creation, the object is owned by the caller, and can be\npassed to the engine (in which case the engine will be responsible for\ndestroying the object) or destroyed manually using `Ref::free`, or preferably\n`Ref::queue_free` if it is a `Node`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = Position2DMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } } impl gdnative_core :: private :: godot_object :: Sealed for Position2D { } unsafe impl GodotObject for Position2D { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "Position2D" } } impl QueueFree for Position2D { # [inline] unsafe fn godot_queue_free (obj : * mut sys :: godot_object) { let method_bind : * mut sys :: godot_method_bind = crate :: generated :: node :: NodeMethodTable :: get (get_api ()) . queue_free ; crate :: icalls :: icallptr_void (method_bind , obj) } } impl std :: ops :: Deref for Position2D { type Target = crate :: generated :: node_2d :: Node2D ; # [inline] fn deref (& self) -> & crate :: generated :: node_2d :: Node2D { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for Position2D { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: node_2d :: Node2D { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: node_2d :: Node2D > for Position2D { } unsafe impl SubClass < crate :: generated :: canvas_item :: CanvasItem > for Position2D { } unsafe impl SubClass < crate :: generated :: node :: Node > for Position2D { } unsafe impl SubClass < crate :: generated :: object :: Object > for Position2D { } impl Instanciable for Position2D { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { Position2D :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct Position2DMethodTable { pub class_constructor : sys :: godot_class_constructor , } impl Position2DMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : Position2DMethodTable = Position2DMethodTable { class_constructor : None , } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { Position2DMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "Position2D\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:118:6315 [INFO] [stdout] | [INFO] [stdout] 118 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 118 | # [doc = "`core class VisualScriptInputAction` inherits `VisualScriptNode` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualscriptinputaction.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nVisualScriptInputAction inherits methods from:\n - [VisualScriptNode](struct.VisualScriptNode.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualScriptInputAction { this : RawObject < Self > , } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct Mode (pub i64) ; impl Mode { pub const PRESSED : Mode = Mode (0i64) ; pub const RELEASED : Mode = Mode (1i64) ; pub const JUST_PRESSED : Mode = Mode (2i64) ; pub const JUST_RELEASED : Mode = Mode (3i64) ; } impl From < i64 > for Mode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < Mode > for i64 { # [inline] fn from (v : Mode) -> Self { v . 0 } } # [doc = "Constants"] # [allow (non_upper_case_globals)] impl VisualScriptInputAction { pub const MODE_JUST_PRESSED : i64 = 2i64 ; pub const MODE_JUST_RELEASED : i64 = 3i64 ; pub const MODE_PRESSED : i64 = 0i64 ; pub const MODE_RELEASED : i64 = 1i64 ; } impl VisualScriptInputAction { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisualScriptInputActionMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = ""] # [doc = ""] # [inline] pub fn action_mode (& self) -> crate :: generated :: visual_script_input_action :: Mode { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualScriptInputActionMethodTable :: get (get_api ()) . get_action_mode ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; crate :: generated :: visual_script_input_action :: Mode (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn action_name (& self) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualScriptInputActionMethodTable :: get (get_api ()) . get_action_name ; let ret = crate :: icalls :: icallptr_str (method_bind , self . this . sys () . as_ptr ()) ; GodotString :: from_sys (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn set_action_mode (& self , mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualScriptInputActionMethodTable :: get (get_api ()) . set_action_mode ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , mode) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_action_name (& self , name : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualScriptInputActionMethodTable :: get (get_api ()) . set_action_name ; let ret = crate :: icalls :: icallptr_void_str (method_bind , self . this . sys () . as_ptr () , name . into ()) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualScriptInputAction { } unsafe impl GodotObject for VisualScriptInputAction { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "VisualScriptInputAction" } } impl std :: ops :: Deref for VisualScriptInputAction { type Target = crate :: generated :: visual_script_node :: VisualScriptNode ; # [inline] fn deref (& self) -> & crate :: generated :: visual_script_node :: VisualScriptNode { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualScriptInputAction { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: visual_script_node :: VisualScriptNode { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: visual_script_node :: VisualScriptNode > for VisualScriptInputAction { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for VisualScriptInputAction { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for VisualScriptInputAction { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualScriptInputAction { } impl Instanciable for VisualScriptInputAction { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisualScriptInputAction :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualScriptInputActionMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_action_mode : * mut sys :: godot_method_bind , pub get_action_name : * mut sys :: godot_method_bind , pub set_action_mode : * mut sys :: godot_method_bind , pub set_action_name : * mut sys :: godot_method_bind } impl VisualScriptInputActionMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualScriptInputActionMethodTable = VisualScriptInputActionMethodTable { class_constructor : None , get_action_mode : 0 as * mut sys :: godot_method_bind , get_action_name : 0 as * mut sys :: godot_method_bind , set_action_mode : 0 as * mut sys :: godot_method_bind , set_action_name : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualScriptInputActionMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualScriptInputAction\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_action_mode = (gd_api . godot_method_bind_get_method) (class_name , "get_action_mode\0" . as_ptr () as * const c_char) ; table . get_action_name = (gd_api . godot_method_bind_get_method) (class_name , "get_action_name\0" . as_ptr () as * const c_char) ; table . set_action_mode = (gd_api . godot_method_bind_get_method) (class_name , "set_action_mode\0" . as_ptr () as * const c_char) ; table . set_action_name = (gd_api . godot_method_bind_get_method) (class_name , "set_action_name\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:124:4452 [INFO] [stdout] | [INFO] [stdout] 124 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 124 | # [doc = "`core class VisualScriptSequence` inherits `VisualScriptNode` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualscriptsequence.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nVisualScriptSequence inherits methods from:\n - [VisualScriptNode](struct.VisualScriptNode.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualScriptSequence { this : RawObject < Self > , } impl VisualScriptSequence { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisualScriptSequenceMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = ""] # [doc = ""] # [inline] pub fn steps (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualScriptSequenceMethodTable :: get (get_api ()) . get_steps ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn set_steps (& self , steps : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualScriptSequenceMethodTable :: get (get_api ()) . set_steps ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , steps) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualScriptSequence { } unsafe impl GodotObject for VisualScriptSequence { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "VisualScriptSequence" } } impl std :: ops :: Deref for VisualScriptSequence { type Target = crate :: generated :: visual_script_node :: VisualScriptNode ; # [inline] fn deref (& self) -> & crate :: generated :: visual_script_node :: VisualScriptNode { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualScriptSequence { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: visual_script_node :: VisualScriptNode { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: visual_script_node :: VisualScriptNode > for VisualScriptSequence { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for VisualScriptSequence { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for VisualScriptSequence { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualScriptSequence { } impl Instanciable for VisualScriptSequence { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisualScriptSequence :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualScriptSequenceMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_steps : * mut sys :: godot_method_bind , pub set_steps : * mut sys :: godot_method_bind } impl VisualScriptSequenceMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualScriptSequenceMethodTable = VisualScriptSequenceMethodTable { class_constructor : None , get_steps : 0 as * mut sys :: godot_method_bind , set_steps : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualScriptSequenceMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualScriptSequence\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_steps = (gd_api . godot_method_bind_get_method) (class_name , "get_steps\0" . as_ptr () as * const c_char) ; table . set_steps = (gd_api . godot_method_bind_get_method) (class_name , "set_steps\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:130:3616 [INFO] [stdout] | [INFO] [stdout] 130 | ...dTable { class_constructor : None , } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 130 | # [doc = "`core class VisualScriptSubCall` inherits `VisualScriptNode` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualscriptsubcall.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nVisualScriptSubCall inherits methods from:\n - [VisualScriptNode](struct.VisualScriptNode.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualScriptSubCall { this : RawObject < Self > , } impl VisualScriptSubCall { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisualScriptSubCallMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualScriptSubCall { } unsafe impl GodotObject for VisualScriptSubCall { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "VisualScriptSubCall" } } impl std :: ops :: Deref for VisualScriptSubCall { type Target = crate :: generated :: visual_script_node :: VisualScriptNode ; # [inline] fn deref (& self) -> & crate :: generated :: visual_script_node :: VisualScriptNode { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualScriptSubCall { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: visual_script_node :: VisualScriptNode { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: visual_script_node :: VisualScriptNode > for VisualScriptSubCall { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for VisualScriptSubCall { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for VisualScriptSubCall { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualScriptSubCall { } impl Instanciable for VisualScriptSubCall { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisualScriptSubCall :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualScriptSubCallMethodTable { pub class_constructor : sys :: godot_class_constructor , } impl VisualScriptSubCallMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualScriptSubCallMethodTable = VisualScriptSubCallMethodTable { class_constructor : None , } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualScriptSubCallMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualScriptSubCall\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:136:4589 [INFO] [stdout] | [INFO] [stdout] 136 | ...dTable { class_constructor : None , } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 136 | # [doc = "`core class MarginContainer` inherits `Container` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_margincontainer.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nNon reference counted objects such as the ones of this type are usually owned by the engine.\n\n`MarginContainer` is a reference-only type. Persistent references can\nonly exist in the unsafe `Ref` form.\n\nIn the cases where Rust code owns an object of this type, for example if the object was just\ncreated on the Rust side and not passed to the engine yet, ownership should be either given\nto the engine or the object must be manually destroyed using `Ref::free`, or `Ref::queue_free`\nif it is a `Node`."] # [doc = "\n## Class hierarchy\n\nMarginContainer inherits methods from:\n - [Container](struct.Container.html)\n - [Control](struct.Control.html)\n - [CanvasItem](struct.CanvasItem.html)\n - [Node](struct.Node.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct MarginContainer { this : RawObject < Self > , } impl MarginContainer { # [doc = "Creates a new instance of this object.\n\nBecause this type is not reference counted, the lifetime of the returned object\nis *not* automatically managed.\n\nImmediately after creation, the object is owned by the caller, and can be\npassed to the engine (in which case the engine will be responsible for\ndestroying the object) or destroyed manually using `Ref::free`, or preferably\n`Ref::queue_free` if it is a `Node`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = MarginContainerMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } } impl gdnative_core :: private :: godot_object :: Sealed for MarginContainer { } unsafe impl GodotObject for MarginContainer { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "MarginContainer" } } impl QueueFree for MarginContainer { # [inline] unsafe fn godot_queue_free (obj : * mut sys :: godot_object) { let method_bind : * mut sys :: godot_method_bind = crate :: generated :: node :: NodeMethodTable :: get (get_api ()) . queue_free ; crate :: icalls :: icallptr_void (method_bind , obj) } } impl std :: ops :: Deref for MarginContainer { type Target = crate :: generated :: container :: Container ; # [inline] fn deref (& self) -> & crate :: generated :: container :: Container { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for MarginContainer { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: container :: Container { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: container :: Container > for MarginContainer { } unsafe impl SubClass < crate :: generated :: control :: Control > for MarginContainer { } unsafe impl SubClass < crate :: generated :: canvas_item :: CanvasItem > for MarginContainer { } unsafe impl SubClass < crate :: generated :: node :: Node > for MarginContainer { } unsafe impl SubClass < crate :: generated :: object :: Object > for MarginContainer { } impl Instanciable for MarginContainer { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { MarginContainer :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct MarginContainerMethodTable { pub class_constructor : sys :: godot_class_constructor , } impl MarginContainerMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : MarginContainerMethodTable = MarginContainerMethodTable { class_constructor : None , } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { MarginContainerMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "MarginContainer\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:142:13550 [INFO] [stdout] | [INFO] [stdout] 142 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 142 | # [doc = "`tools class EditorSettings` inherits `Resource` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_editorsettings.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nEditorSettings inherits methods from:\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = "\n## Tool\n\nThis class is used to interact with Godot's editor."] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct EditorSettings { this : RawObject < Self > , } # [doc = "Constants"] # [allow (non_upper_case_globals)] impl EditorSettings { pub const NOTIFICATION_EDITOR_SETTINGS_CHANGED : i64 = 10000i64 ; } impl EditorSettings { # [doc = "_Sample code is GDScript unless otherwise noted._\n\nAdds a custom property info to a property. The dictionary must contain:\n- `name`: [String] (the name of the property)\n- `type`: [int] (see [enum Variant.Type])\n- optionally `hint`: [int] (see [enum PropertyHint]) and `hint_string`: [String]\n**Example:**\n```gdscript\neditor_settings.set(\"category/property_name\", 0)\n\nvar property_info = {\n \"name\": \"category/property_name\",\n \"type\": TYPE_INT,\n \"hint\": PROPERTY_HINT_ENUM,\n \"hint_string\": \"one,two,three\"\n}\n\neditor_settings.add_property_info(property_info)\n```"] # [doc = ""] # [inline] pub fn add_property_info (& self , info : Dictionary) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . add_property_info ; let ret = crate :: icalls :: icallptr_void_dict (method_bind , self . this . sys () . as_ptr () , info) ; } } # [doc = "Erases the setting whose name is specified by `property`."] # [doc = ""] # [inline] pub fn erase (& self , property : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . erase ; let ret = crate :: icalls :: icallptr_void_str (method_bind , self . this . sys () . as_ptr () , property . into ()) ; } } # [doc = "Returns the list of favorite files and directories for this project."] # [doc = ""] # [inline] pub fn get_favorites (& self) -> StringArray { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . get_favorites ; let ret = crate :: icalls :: icallptr_strarr (method_bind , self . this . sys () . as_ptr ()) ; StringArray :: from_sys (ret) } } # [doc = "Returns project-specific metadata for the `section` and `key` specified. If the metadata doesn't exist, `default` will be returned instead. See also [method set_project_metadata].\n# Default Arguments\n* `default` - `null`"] # [doc = ""] # [inline] pub fn get_project_metadata (& self , section : impl Into < GodotString > , key : impl Into < GodotString > , default : impl OwnedToVariant) -> Variant { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . get_project_metadata ; let ret = crate :: icalls :: icallptr_var_str_str_var (method_bind , self . this . sys () . as_ptr () , section . into () , key . into () , default . owned_to_variant ()) ; Variant :: from_sys (ret) } } # [doc = "Returns the project-specific settings path. Projects all have a unique subdirectory inside the settings path where project-specific settings are saved."] # [doc = ""] # [inline] pub fn get_project_settings_dir (& self) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . get_project_settings_dir ; let ret = crate :: icalls :: icallptr_str (method_bind , self . this . sys () . as_ptr ()) ; GodotString :: from_sys (ret) } } # [doc = "Returns the list of recently visited folders in the file dialog for this project."] # [doc = ""] # [inline] pub fn get_recent_dirs (& self) -> StringArray { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . get_recent_dirs ; let ret = crate :: icalls :: icallptr_strarr (method_bind , self . this . sys () . as_ptr ()) ; StringArray :: from_sys (ret) } } # [doc = "Returns the value of the setting specified by `name`. This is equivalent to using [method Object.get] on the EditorSettings instance."] # [doc = ""] # [inline] pub fn get_setting (& self , name : impl Into < GodotString >) -> Variant { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . get_setting ; let ret = crate :: icalls :: icallptr_var_str (method_bind , self . this . sys () . as_ptr () , name . into ()) ; Variant :: from_sys (ret) } } # [doc = "Gets the global settings path for the engine. Inside this path, you can find some standard paths such as:\n`settings/tmp` - Used for temporary storage of files\n`settings/templates` - Where export templates are located"] # [doc = ""] # [inline] pub fn get_settings_dir (& self) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . get_settings_dir ; let ret = crate :: icalls :: icallptr_str (method_bind , self . this . sys () . as_ptr ()) ; GodotString :: from_sys (ret) } } # [doc = "Returns `true` if the setting specified by `name` exists, `false` otherwise."] # [doc = ""] # [inline] pub fn has_setting (& self , name : impl Into < GodotString >) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . has_setting ; let ret = crate :: icalls :: icallptr_bool_str (method_bind , self . this . sys () . as_ptr () , name . into ()) ; ret as _ } } # [doc = "Returns `true` if the setting specified by `name` can have its value reverted to the default value, `false` otherwise. When this method returns `true`, a Revert button will display next to the setting in the Editor Settings."] # [doc = ""] # [inline] pub fn property_can_revert (& self , name : impl Into < GodotString >) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . property_can_revert ; let ret = crate :: icalls :: icallptr_bool_str (method_bind , self . this . sys () . as_ptr () , name . into ()) ; ret as _ } } # [doc = "Returns the default value of the setting specified by `name`. This is the value that would be applied when clicking the Revert button in the Editor Settings."] # [doc = ""] # [inline] pub fn property_get_revert (& self , name : impl Into < GodotString >) -> Variant { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . property_get_revert ; let ret = crate :: icalls :: icallptr_var_str (method_bind , self . this . sys () . as_ptr () , name . into ()) ; Variant :: from_sys (ret) } } # [doc = "Sets the list of favorite files and directories for this project."] # [doc = ""] # [inline] pub fn set_favorites (& self , dirs : StringArray) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . set_favorites ; let ret = crate :: icalls :: icallptr_void_strarr (method_bind , self . this . sys () . as_ptr () , dirs) ; } } # [doc = "Sets the initial value of the setting specified by `name` to `value`. This is used to provide a value for the Revert button in the Editor Settings. If `update_current` is true, the current value of the setting will be set to `value` as well."] # [doc = ""] # [inline] pub fn set_initial_value (& self , name : impl Into < GodotString > , value : impl OwnedToVariant , update_current : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . set_initial_value ; let ret = crate :: icalls :: icallptr_void_str_var_bool (method_bind , self . this . sys () . as_ptr () , name . into () , value . owned_to_variant () , update_current) ; } } # [doc = "Sets project-specific metadata with the `section`, `key` and `data` specified. This metadata is stored outside the project folder and therefore won't be checked into version control. See also [method get_project_metadata]."] # [doc = ""] # [inline] pub fn set_project_metadata (& self , section : impl Into < GodotString > , key : impl Into < GodotString > , data : impl OwnedToVariant) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . set_project_metadata ; let ret = crate :: icalls :: icallptr_void_str_str_var (method_bind , self . this . sys () . as_ptr () , section . into () , key . into () , data . owned_to_variant ()) ; } } # [doc = "Sets the list of recently visited folders in the file dialog for this project."] # [doc = ""] # [inline] pub fn set_recent_dirs (& self , dirs : StringArray) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . set_recent_dirs ; let ret = crate :: icalls :: icallptr_void_strarr (method_bind , self . this . sys () . as_ptr () , dirs) ; } } # [doc = "Sets the `value` of the setting specified by `name`. This is equivalent to using [method Object.set] on the EditorSettings instance."] # [doc = ""] # [inline] pub fn set_setting (& self , name : impl Into < GodotString > , value : impl OwnedToVariant) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = EditorSettingsMethodTable :: get (get_api ()) . set_setting ; let ret = crate :: icalls :: icallptr_void_str_var (method_bind , self . this . sys () . as_ptr () , name . into () , value . owned_to_variant ()) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for EditorSettings { } unsafe impl GodotObject for EditorSettings { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "EditorSettings" } } impl std :: ops :: Deref for EditorSettings { type Target = crate :: generated :: resource :: Resource ; # [inline] fn deref (& self) -> & crate :: generated :: resource :: Resource { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for EditorSettings { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: resource :: Resource { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: resource :: Resource > for EditorSettings { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for EditorSettings { } unsafe impl SubClass < crate :: generated :: object :: Object > for EditorSettings { } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct EditorSettingsMethodTable { pub class_constructor : sys :: godot_class_constructor , pub add_property_info : * mut sys :: godot_method_bind , pub erase : * mut sys :: godot_method_bind , pub get_favorites : * mut sys :: godot_method_bind , pub get_project_metadata : * mut sys :: godot_method_bind , pub get_project_settings_dir : * mut sys :: godot_method_bind , pub get_recent_dirs : * mut sys :: godot_method_bind , pub get_setting : * mut sys :: godot_method_bind , pub get_settings_dir : * mut sys :: godot_method_bind , pub has_setting : * mut sys :: godot_method_bind , pub property_can_revert : * mut sys :: godot_method_bind , pub property_get_revert : * mut sys :: godot_method_bind , pub set_favorites : * mut sys :: godot_method_bind , pub set_initial_value : * mut sys :: godot_method_bind , pub set_project_metadata : * mut sys :: godot_method_bind , pub set_recent_dirs : * mut sys :: godot_method_bind , pub set_setting : * mut sys :: godot_method_bind } impl EditorSettingsMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : EditorSettingsMethodTable = EditorSettingsMethodTable { class_constructor : None , add_property_info : 0 as * mut sys :: godot_method_bind , erase : 0 as * mut sys :: godot_method_bind , get_favorites : 0 as * mut sys :: godot_method_bind , get_project_metadata : 0 as * mut sys :: godot_method_bind , get_project_settings_dir : 0 as * mut sys :: godot_method_bind , get_recent_dirs : 0 as * mut sys :: godot_method_bind , get_setting : 0 as * mut sys :: godot_method_bind , get_settings_dir : 0 as * mut sys :: godot_method_bind , has_setting : 0 as * mut sys :: godot_method_bind , property_can_revert : 0 as * mut sys :: godot_method_bind , property_get_revert : 0 as * mut sys :: godot_method_bind , set_favorites : 0 as * mut sys :: godot_method_bind , set_initial_value : 0 as * mut sys :: godot_method_bind , set_project_metadata : 0 as * mut sys :: godot_method_bind , set_recent_dirs : 0 as * mut sys :: godot_method_bind , set_setting : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { EditorSettingsMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "EditorSettings\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . add_property_info = (gd_api . godot_method_bind_get_method) (class_name , "add_property_info\0" . as_ptr () as * const c_char) ; table . erase = (gd_api . godot_method_bind_get_method) (class_name , "erase\0" . as_ptr () as * const c_char) ; table . get_favorites = (gd_api . godot_method_bind_get_method) (class_name , "get_favorites\0" . as_ptr () as * const c_char) ; table . get_project_metadata = (gd_api . godot_method_bind_get_method) (class_name , "get_project_metadata\0" . as_ptr () as * const c_char) ; table . get_project_settings_dir = (gd_api . godot_method_bind_get_method) (class_name , "get_project_settings_dir\0" . as_ptr () as * const c_char) ; table . get_recent_dirs = (gd_api . godot_method_bind_get_method) (class_name , "get_recent_dirs\0" . as_ptr () as * const c_char) ; table . get_setting = (gd_api . godot_method_bind_get_method) (class_name , "get_setting\0" . as_ptr () as * const c_char) ; table . get_settings_dir = (gd_api . godot_method_bind_get_method) (class_name , "get_settings_dir\0" . as_ptr () as * const c_char) ; table . has_setting = (gd_api . godot_method_bind_get_method) (class_name , "has_setting\0" . as_ptr () as * const c_char) ; table . property_can_revert = (gd_api . godot_method_bind_get_method) (class_name , "property_can_revert\0" . as_ptr () as * const c_char) ; table . property_get_revert = (gd_api . godot_method_bind_get_method) (class_name , "property_get_revert\0" . as_ptr () as * const c_char) ; table . set_favorites = (gd_api . godot_method_bind_get_method) (class_name , "set_favorites\0" . as_ptr () as * const c_char) ; table . set_initial_value = (gd_api . godot_method_bind_get_method) (class_name , "set_initial_value\0" . as_ptr () as * const c_char) ; table . set_project_metadata = (gd_api . godot_method_bind_get_method) (class_name , "set_project_metadata\0" . as_ptr () as * const c_char) ; table . set_recent_dirs = (gd_api . godot_method_bind_get_method) (class_name , "set_recent_dirs\0" . as_ptr () as * const c_char) ; table . set_setting = (gd_api . godot_method_bind_get_method) (class_name , "set_setting\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:148:7950 [INFO] [stdout] | [INFO] [stdout] 148 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 148 | # [doc = "`core class InputEventMouseButton` inherits `InputEventMouse` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_inputeventmousebutton.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nInputEventMouseButton inherits methods from:\n - [InputEventMouse](struct.InputEventMouse.html)\n - [InputEventWithModifiers](struct.InputEventWithModifiers.html)\n - [InputEvent](struct.InputEvent.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct InputEventMouseButton { this : RawObject < Self > , } impl InputEventMouseButton { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = InputEventMouseButtonMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "The mouse button identifier, one of the [enum ButtonList] button or button wheel constants."] # [doc = ""] # [inline] pub fn button_index (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventMouseButtonMethodTable :: get (get_api ()) . get_button_index ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "The amount (or delta) of the event. When used for high-precision scroll events, this indicates the scroll amount (vertical or horizontal). This is only supported on some platforms; the reported sensitivity varies depending on the platform. May be `0` if not supported."] # [doc = ""] # [inline] pub fn factor (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventMouseButtonMethodTable :: get (get_api ()) . get_factor ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "If `true`, the mouse button's state is a double-click."] # [doc = ""] # [inline] pub fn is_doubleclick (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventMouseButtonMethodTable :: get (get_api ()) . is_doubleclick ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "The mouse button identifier, one of the [enum ButtonList] button or button wheel constants."] # [doc = ""] # [inline] pub fn set_button_index (& self , button_index : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventMouseButtonMethodTable :: get (get_api ()) . set_button_index ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , button_index) ; } } # [doc = "If `true`, the mouse button's state is a double-click."] # [doc = ""] # [inline] pub fn set_doubleclick (& self , doubleclick : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventMouseButtonMethodTable :: get (get_api ()) . set_doubleclick ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , doubleclick) ; } } # [doc = "The amount (or delta) of the event. When used for high-precision scroll events, this indicates the scroll amount (vertical or horizontal). This is only supported on some platforms; the reported sensitivity varies depending on the platform. May be `0` if not supported."] # [doc = ""] # [inline] pub fn set_factor (& self , factor : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventMouseButtonMethodTable :: get (get_api ()) . set_factor ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , factor) ; } } # [doc = "If `true`, the mouse button's state is pressed. If `false`, the mouse button's state is released."] # [doc = ""] # [inline] pub fn set_pressed (& self , pressed : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventMouseButtonMethodTable :: get (get_api ()) . set_pressed ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , pressed) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for InputEventMouseButton { } unsafe impl GodotObject for InputEventMouseButton { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "InputEventMouseButton" } } impl std :: ops :: Deref for InputEventMouseButton { type Target = crate :: generated :: input_event_mouse :: InputEventMouse ; # [inline] fn deref (& self) -> & crate :: generated :: input_event_mouse :: InputEventMouse { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for InputEventMouseButton { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: input_event_mouse :: InputEventMouse { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: input_event_mouse :: InputEventMouse > for InputEventMouseButton { } unsafe impl SubClass < crate :: generated :: input_event_with_modifiers :: InputEventWithModifiers > for InputEventMouseButton { } unsafe impl SubClass < crate :: generated :: input_event :: InputEvent > for InputEventMouseButton { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for InputEventMouseButton { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for InputEventMouseButton { } unsafe impl SubClass < crate :: generated :: object :: Object > for InputEventMouseButton { } impl Instanciable for InputEventMouseButton { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { InputEventMouseButton :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct InputEventMouseButtonMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_button_index : * mut sys :: godot_method_bind , pub get_factor : * mut sys :: godot_method_bind , pub is_doubleclick : * mut sys :: godot_method_bind , pub set_button_index : * mut sys :: godot_method_bind , pub set_doubleclick : * mut sys :: godot_method_bind , pub set_factor : * mut sys :: godot_method_bind , pub set_pressed : * mut sys :: godot_method_bind } impl InputEventMouseButtonMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : InputEventMouseButtonMethodTable = InputEventMouseButtonMethodTable { class_constructor : None , get_button_index : 0 as * mut sys :: godot_method_bind , get_factor : 0 as * mut sys :: godot_method_bind , is_doubleclick : 0 as * mut sys :: godot_method_bind , set_button_index : 0 as * mut sys :: godot_method_bind , set_doubleclick : 0 as * mut sys :: godot_method_bind , set_factor : 0 as * mut sys :: godot_method_bind , set_pressed : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { InputEventMouseButtonMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "InputEventMouseButton\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_button_index = (gd_api . godot_method_bind_get_method) (class_name , "get_button_index\0" . as_ptr () as * const c_char) ; table . get_factor = (gd_api . godot_method_bind_get_method) (class_name , "get_factor\0" . as_ptr () as * const c_char) ; table . is_doubleclick = (gd_api . godot_method_bind_get_method) (class_name , "is_doubleclick\0" . as_ptr () as * const c_char) ; table . set_button_index = (gd_api . godot_method_bind_get_method) (class_name , "set_button_index\0" . as_ptr () as * const c_char) ; table . set_doubleclick = (gd_api . godot_method_bind_get_method) (class_name , "set_doubleclick\0" . as_ptr () as * const c_char) ; table . set_factor = (gd_api . godot_method_bind_get_method) (class_name , "set_factor\0" . as_ptr () as * const c_char) ; table . set_pressed = (gd_api . godot_method_bind_get_method) (class_name , "set_pressed\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:154:7107 [INFO] [stdout] | [INFO] [stdout] 154 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 154 | # [doc = "`core class PolygonPathFinder` inherits `Resource` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_polygonpathfinder.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nPolygonPathFinder inherits methods from:\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct PolygonPathFinder { this : RawObject < Self > , } impl PolygonPathFinder { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = PolygonPathFinderMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = ""] # [doc = ""] # [inline] pub fn find_path (& self , from : Vector2 , to : Vector2) -> Vector2Array { unsafe { let method_bind : * mut sys :: godot_method_bind = PolygonPathFinderMethodTable :: get (get_api ()) . find_path ; let ret = crate :: icalls :: icallptr_vec2arr_vec2_vec2 (method_bind , self . this . sys () . as_ptr () , from , to) ; Vector2Array :: from_sys (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn get_bounds (& self) -> Rect2 { unsafe { let method_bind : * mut sys :: godot_method_bind = PolygonPathFinderMethodTable :: get (get_api ()) . get_bounds ; let ret = crate :: icalls :: icallptr_rect2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn get_closest_point (& self , point : Vector2) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = PolygonPathFinderMethodTable :: get (get_api ()) . get_closest_point ; let ret = crate :: icalls :: icallptr_vec2_vec2 (method_bind , self . this . sys () . as_ptr () , point) ; mem :: transmute (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn get_intersections (& self , from : Vector2 , to : Vector2) -> Vector2Array { unsafe { let method_bind : * mut sys :: godot_method_bind = PolygonPathFinderMethodTable :: get (get_api ()) . get_intersections ; let ret = crate :: icalls :: icallptr_vec2arr_vec2_vec2 (method_bind , self . this . sys () . as_ptr () , from , to) ; Vector2Array :: from_sys (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn get_point_penalty (& self , idx : i64) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = PolygonPathFinderMethodTable :: get (get_api ()) . get_point_penalty ; let ret = crate :: icalls :: icallptr_f64_i64 (method_bind , self . this . sys () . as_ptr () , idx) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn is_point_inside (& self , point : Vector2) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = PolygonPathFinderMethodTable :: get (get_api ()) . is_point_inside ; let ret = crate :: icalls :: icallptr_bool_vec2 (method_bind , self . this . sys () . as_ptr () , point) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn set_point_penalty (& self , idx : i64 , penalty : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = PolygonPathFinderMethodTable :: get (get_api ()) . set_point_penalty ; let ret = crate :: icalls :: icallptr_void_i64_f64 (method_bind , self . this . sys () . as_ptr () , idx , penalty) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn setup (& self , points : Vector2Array , connections : Int32Array) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = PolygonPathFinderMethodTable :: get (get_api ()) . setup ; let ret = crate :: icalls :: icallptr_void_vec2arr_i32arr (method_bind , self . this . sys () . as_ptr () , points , connections) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for PolygonPathFinder { } unsafe impl GodotObject for PolygonPathFinder { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "PolygonPathFinder" } } impl std :: ops :: Deref for PolygonPathFinder { type Target = crate :: generated :: resource :: Resource ; # [inline] fn deref (& self) -> & crate :: generated :: resource :: Resource { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for PolygonPathFinder { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: resource :: Resource { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: resource :: Resource > for PolygonPathFinder { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for PolygonPathFinder { } unsafe impl SubClass < crate :: generated :: object :: Object > for PolygonPathFinder { } impl Instanciable for PolygonPathFinder { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { PolygonPathFinder :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct PolygonPathFinderMethodTable { pub class_constructor : sys :: godot_class_constructor , pub find_path : * mut sys :: godot_method_bind , pub get_bounds : * mut sys :: godot_method_bind , pub get_closest_point : * mut sys :: godot_method_bind , pub get_intersections : * mut sys :: godot_method_bind , pub get_point_penalty : * mut sys :: godot_method_bind , pub is_point_inside : * mut sys :: godot_method_bind , pub set_point_penalty : * mut sys :: godot_method_bind , pub setup : * mut sys :: godot_method_bind } impl PolygonPathFinderMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : PolygonPathFinderMethodTable = PolygonPathFinderMethodTable { class_constructor : None , find_path : 0 as * mut sys :: godot_method_bind , get_bounds : 0 as * mut sys :: godot_method_bind , get_closest_point : 0 as * mut sys :: godot_method_bind , get_intersections : 0 as * mut sys :: godot_method_bind , get_point_penalty : 0 as * mut sys :: godot_method_bind , is_point_inside : 0 as * mut sys :: godot_method_bind , set_point_penalty : 0 as * mut sys :: godot_method_bind , setup : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { PolygonPathFinderMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "PolygonPathFinder\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . find_path = (gd_api . godot_method_bind_get_method) (class_name , "find_path\0" . as_ptr () as * const c_char) ; table . get_bounds = (gd_api . godot_method_bind_get_method) (class_name , "get_bounds\0" . as_ptr () as * const c_char) ; table . get_closest_point = (gd_api . godot_method_bind_get_method) (class_name , "get_closest_point\0" . as_ptr () as * const c_char) ; table . get_intersections = (gd_api . godot_method_bind_get_method) (class_name , "get_intersections\0" . as_ptr () as * const c_char) ; table . get_point_penalty = (gd_api . godot_method_bind_get_method) (class_name , "get_point_penalty\0" . as_ptr () as * const c_char) ; table . is_point_inside = (gd_api . godot_method_bind_get_method) (class_name , "is_point_inside\0" . as_ptr () as * const c_char) ; table . set_point_penalty = (gd_api . godot_method_bind_get_method) (class_name , "set_point_penalty\0" . as_ptr () as * const c_char) ; table . setup = (gd_api . godot_method_bind_get_method) (class_name , "setup\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:160:6602 [INFO] [stdout] | [INFO] [stdout] 160 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 160 | # [doc = "`core class InputEventMouse` inherits `InputEventWithModifiers` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_inputeventmouse.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nInputEventMouse inherits methods from:\n - [InputEventWithModifiers](struct.InputEventWithModifiers.html)\n - [InputEvent](struct.InputEvent.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct InputEventMouse { this : RawObject < Self > , } impl InputEventMouse { # [doc = "The mouse button mask identifier, one of or a bitwise combination of the [enum ButtonList] button masks."] # [doc = ""] # [inline] pub fn button_mask (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventMouseMethodTable :: get (get_api ()) . get_button_mask ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "The global mouse position relative to the current [Viewport] when used in [method Control._gui_input], otherwise is at 0,0."] # [doc = ""] # [inline] pub fn global_position (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventMouseMethodTable :: get (get_api ()) . get_global_position ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "The local mouse position relative to the [Viewport]. If used in [method Control._gui_input], the position is relative to the current [Control] which is under the mouse."] # [doc = ""] # [inline] pub fn position (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventMouseMethodTable :: get (get_api ()) . get_position ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "The mouse button mask identifier, one of or a bitwise combination of the [enum ButtonList] button masks."] # [doc = ""] # [inline] pub fn set_button_mask (& self , button_mask : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventMouseMethodTable :: get (get_api ()) . set_button_mask ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , button_mask) ; } } # [doc = "The global mouse position relative to the current [Viewport] when used in [method Control._gui_input], otherwise is at 0,0."] # [doc = ""] # [inline] pub fn set_global_position (& self , global_position : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventMouseMethodTable :: get (get_api ()) . set_global_position ; let ret = crate :: icalls :: icallptr_void_vec2 (method_bind , self . this . sys () . as_ptr () , global_position) ; } } # [doc = "The local mouse position relative to the [Viewport]. If used in [method Control._gui_input], the position is relative to the current [Control] which is under the mouse."] # [doc = ""] # [inline] pub fn set_position (& self , position : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = InputEventMouseMethodTable :: get (get_api ()) . set_position ; let ret = crate :: icalls :: icallptr_void_vec2 (method_bind , self . this . sys () . as_ptr () , position) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for InputEventMouse { } unsafe impl GodotObject for InputEventMouse { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "InputEventMouse" } } impl std :: ops :: Deref for InputEventMouse { type Target = crate :: generated :: input_event_with_modifiers :: InputEventWithModifiers ; # [inline] fn deref (& self) -> & crate :: generated :: input_event_with_modifiers :: InputEventWithModifiers { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for InputEventMouse { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: input_event_with_modifiers :: InputEventWithModifiers { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: input_event_with_modifiers :: InputEventWithModifiers > for InputEventMouse { } unsafe impl SubClass < crate :: generated :: input_event :: InputEvent > for InputEventMouse { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for InputEventMouse { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for InputEventMouse { } unsafe impl SubClass < crate :: generated :: object :: Object > for InputEventMouse { } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct InputEventMouseMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_button_mask : * mut sys :: godot_method_bind , pub get_global_position : * mut sys :: godot_method_bind , pub get_position : * mut sys :: godot_method_bind , pub set_button_mask : * mut sys :: godot_method_bind , pub set_global_position : * mut sys :: godot_method_bind , pub set_position : * mut sys :: godot_method_bind } impl InputEventMouseMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : InputEventMouseMethodTable = InputEventMouseMethodTable { class_constructor : None , get_button_mask : 0 as * mut sys :: godot_method_bind , get_global_position : 0 as * mut sys :: godot_method_bind , get_position : 0 as * mut sys :: godot_method_bind , set_button_mask : 0 as * mut sys :: godot_method_bind , set_global_position : 0 as * mut sys :: godot_method_bind , set_position : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { InputEventMouseMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "InputEventMouse\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_button_mask = (gd_api . godot_method_bind_get_method) (class_name , "get_button_mask\0" . as_ptr () as * const c_char) ; table . get_global_position = (gd_api . godot_method_bind_get_method) (class_name , "get_global_position\0" . as_ptr () as * const c_char) ; table . get_position = (gd_api . godot_method_bind_get_method) (class_name , "get_position\0" . as_ptr () as * const c_char) ; table . set_button_mask = (gd_api . godot_method_bind_get_method) (class_name , "set_button_mask\0" . as_ptr () as * const c_char) ; table . set_global_position = (gd_api . godot_method_bind_get_method) (class_name , "set_global_position\0" . as_ptr () as * const c_char) ; table . set_position = (gd_api . godot_method_bind_get_method) (class_name , "set_position\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:166:8153 [INFO] [stdout] | [INFO] [stdout] 166 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 166 | # [doc = "`core class VisualInstance` inherits `Spatial` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualinstance.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = ""] # [doc = "\n## Class hierarchy\n\nVisualInstance inherits methods from:\n - [Spatial](struct.Spatial.html)\n - [Node](struct.Node.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualInstance { this : RawObject < Self > , } impl VisualInstance { # [doc = "Returns the [AABB] (also known as the bounding box) for this [VisualInstance]. See also [method get_transformed_aabb]."] # [doc = ""] # [inline] pub fn get_aabb (& self) -> Aabb { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualInstanceMethodTable :: get (get_api ()) . get_aabb ; let ret = crate :: icalls :: icallptr_aabb (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "Returns the RID of the resource associated with this [VisualInstance]. For example, if the Node is a [MeshInstance], this will return the RID of the associated [Mesh]."] # [doc = ""] # [inline] pub fn get_base (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualInstanceMethodTable :: get (get_api ()) . get_base ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "Returns the RID of this instance. This RID is the same as the RID returned by [method VisualServer.instance_create]. This RID is needed if you want to call [VisualServer] functions directly on this [VisualInstance]."] # [doc = ""] # [inline] pub fn get_instance (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualInstanceMethodTable :: get (get_api ()) . get_instance ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "The render layer(s) this [VisualInstance] is drawn on.\nThis object will only be visible for [Camera]s whose cull mask includes the render object this [VisualInstance] is set to."] # [doc = ""] # [inline] pub fn layer_mask (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualInstanceMethodTable :: get (get_api ()) . get_layer_mask ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns `true` when the specified layer is enabled in [member layers] and `false` otherwise."] # [doc = ""] # [inline] pub fn get_layer_mask_bit (& self , layer : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualInstanceMethodTable :: get (get_api ()) . get_layer_mask_bit ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , layer) ; ret as _ } } # [doc = "Returns the transformed [AABB] (also known as the bounding box) for this [VisualInstance].\nTransformed in this case means the [AABB] plus the position, rotation, and scale of the [Spatial]'s [Transform]. See also [method get_aabb]."] # [doc = ""] # [inline] pub fn get_transformed_aabb (& self) -> Aabb { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualInstanceMethodTable :: get (get_api ()) . get_transformed_aabb ; let ret = crate :: icalls :: icallptr_aabb (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "Sets the resource that is instantiated by this [VisualInstance], which changes how the engine handles the [VisualInstance] under the hood. Equivalent to [method VisualServer.instance_set_base]."] # [doc = ""] # [inline] pub fn set_base (& self , base : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualInstanceMethodTable :: get (get_api ()) . set_base ; let ret = crate :: icalls :: icallptr_void_rid (method_bind , self . this . sys () . as_ptr () , base) ; } } # [doc = "The render layer(s) this [VisualInstance] is drawn on.\nThis object will only be visible for [Camera]s whose cull mask includes the render object this [VisualInstance] is set to."] # [doc = ""] # [inline] pub fn set_layer_mask (& self , mask : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualInstanceMethodTable :: get (get_api ()) . set_layer_mask ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , mask) ; } } # [doc = "Enables a particular layer in [member layers]."] # [doc = ""] # [inline] pub fn set_layer_mask_bit (& self , layer : i64 , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualInstanceMethodTable :: get (get_api ()) . set_layer_mask_bit ; let ret = crate :: icalls :: icallptr_void_i64_bool (method_bind , self . this . sys () . as_ptr () , layer , enabled) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualInstance { } unsafe impl GodotObject for VisualInstance { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "VisualInstance" } } impl QueueFree for VisualInstance { # [inline] unsafe fn godot_queue_free (obj : * mut sys :: godot_object) { let method_bind : * mut sys :: godot_method_bind = crate :: generated :: node :: NodeMethodTable :: get (get_api ()) . queue_free ; crate :: icalls :: icallptr_void (method_bind , obj) } } impl std :: ops :: Deref for VisualInstance { type Target = crate :: generated :: spatial :: Spatial ; # [inline] fn deref (& self) -> & crate :: generated :: spatial :: Spatial { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualInstance { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: spatial :: Spatial { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: spatial :: Spatial > for VisualInstance { } unsafe impl SubClass < crate :: generated :: node :: Node > for VisualInstance { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualInstance { } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualInstanceMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_aabb : * mut sys :: godot_method_bind , pub get_base : * mut sys :: godot_method_bind , pub get_instance : * mut sys :: godot_method_bind , pub get_layer_mask : * mut sys :: godot_method_bind , pub get_layer_mask_bit : * mut sys :: godot_method_bind , pub get_transformed_aabb : * mut sys :: godot_method_bind , pub set_base : * mut sys :: godot_method_bind , pub set_layer_mask : * mut sys :: godot_method_bind , pub set_layer_mask_bit : * mut sys :: godot_method_bind } impl VisualInstanceMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualInstanceMethodTable = VisualInstanceMethodTable { class_constructor : None , get_aabb : 0 as * mut sys :: godot_method_bind , get_base : 0 as * mut sys :: godot_method_bind , get_instance : 0 as * mut sys :: godot_method_bind , get_layer_mask : 0 as * mut sys :: godot_method_bind , get_layer_mask_bit : 0 as * mut sys :: godot_method_bind , get_transformed_aabb : 0 as * mut sys :: godot_method_bind , set_base : 0 as * mut sys :: godot_method_bind , set_layer_mask : 0 as * mut sys :: godot_method_bind , set_layer_mask_bit : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualInstanceMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualInstance\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_aabb = (gd_api . godot_method_bind_get_method) (class_name , "get_aabb\0" . as_ptr () as * const c_char) ; table . get_base = (gd_api . godot_method_bind_get_method) (class_name , "get_base\0" . as_ptr () as * const c_char) ; table . get_instance = (gd_api . godot_method_bind_get_method) (class_name , "get_instance\0" . as_ptr () as * const c_char) ; table . get_layer_mask = (gd_api . godot_method_bind_get_method) (class_name , "get_layer_mask\0" . as_ptr () as * const c_char) ; table . get_layer_mask_bit = (gd_api . godot_method_bind_get_method) (class_name , "get_layer_mask_bit\0" . as_ptr () as * const c_char) ; table . get_transformed_aabb = (gd_api . godot_method_bind_get_method) (class_name , "get_transformed_aabb\0" . as_ptr () as * const c_char) ; table . set_base = (gd_api . godot_method_bind_get_method) (class_name , "set_base\0" . as_ptr () as * const c_char) ; table . set_layer_mask = (gd_api . godot_method_bind_get_method) (class_name , "set_layer_mask\0" . as_ptr () as * const c_char) ; table . set_layer_mask_bit = (gd_api . godot_method_bind_get_method) (class_name , "set_layer_mask_bit\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:172:4841 [INFO] [stdout] | [INFO] [stdout] 172 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 172 | # [doc = "`core class VisualScriptFunctionState` inherits `Reference` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualscriptfunctionstate.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nVisualScriptFunctionState inherits methods from:\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualScriptFunctionState { this : RawObject < Self > , } impl VisualScriptFunctionState { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisualScriptFunctionStateMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = ""] # [doc = ""] # [inline] pub fn connect_to_signal (& self , obj : impl AsArg < crate :: generated :: object :: Object > , signals : impl Into < GodotString > , args : VariantArray) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualScriptFunctionStateMethodTable :: get (get_api ()) . connect_to_signal ; let ret = crate :: icalls :: icallptr_void_obj_str_arr (method_bind , self . this . sys () . as_ptr () , obj . as_arg_ptr () , signals . into () , args) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn is_valid (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualScriptFunctionStateMethodTable :: get (get_api ()) . is_valid ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn resume (& self , args : VariantArray) -> Variant { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualScriptFunctionStateMethodTable :: get (get_api ()) . resume ; let ret = crate :: icalls :: icallptr_var_arr (method_bind , self . this . sys () . as_ptr () , args) ; Variant :: from_sys (ret) } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualScriptFunctionState { } unsafe impl GodotObject for VisualScriptFunctionState { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "VisualScriptFunctionState" } } impl std :: ops :: Deref for VisualScriptFunctionState { type Target = crate :: generated :: reference :: Reference ; # [inline] fn deref (& self) -> & crate :: generated :: reference :: Reference { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualScriptFunctionState { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: reference :: Reference { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: reference :: Reference > for VisualScriptFunctionState { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualScriptFunctionState { } impl Instanciable for VisualScriptFunctionState { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisualScriptFunctionState :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualScriptFunctionStateMethodTable { pub class_constructor : sys :: godot_class_constructor , pub connect_to_signal : * mut sys :: godot_method_bind , pub is_valid : * mut sys :: godot_method_bind , pub resume : * mut sys :: godot_method_bind } impl VisualScriptFunctionStateMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualScriptFunctionStateMethodTable = VisualScriptFunctionStateMethodTable { class_constructor : None , connect_to_signal : 0 as * mut sys :: godot_method_bind , is_valid : 0 as * mut sys :: godot_method_bind , resume : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualScriptFunctionStateMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualScriptFunctionState\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . connect_to_signal = (gd_api . godot_method_bind_get_method) (class_name , "connect_to_signal\0" . as_ptr () as * const c_char) ; table . is_valid = (gd_api . godot_method_bind_get_method) (class_name , "is_valid\0" . as_ptr () as * const c_char) ; table . resume = (gd_api . godot_method_bind_get_method) (class_name , "resume\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:178:3637 [INFO] [stdout] | [INFO] [stdout] 178 | ...dTable { class_constructor : None , } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 178 | # [doc = "`core class VisualScriptIndexGet` inherits `VisualScriptNode` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualscriptindexget.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nVisualScriptIndexGet inherits methods from:\n - [VisualScriptNode](struct.VisualScriptNode.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualScriptIndexGet { this : RawObject < Self > , } impl VisualScriptIndexGet { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisualScriptIndexGetMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualScriptIndexGet { } unsafe impl GodotObject for VisualScriptIndexGet { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "VisualScriptIndexGet" } } impl std :: ops :: Deref for VisualScriptIndexGet { type Target = crate :: generated :: visual_script_node :: VisualScriptNode ; # [inline] fn deref (& self) -> & crate :: generated :: visual_script_node :: VisualScriptNode { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualScriptIndexGet { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: visual_script_node :: VisualScriptNode { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: visual_script_node :: VisualScriptNode > for VisualScriptIndexGet { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for VisualScriptIndexGet { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for VisualScriptIndexGet { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualScriptIndexGet { } impl Instanciable for VisualScriptIndexGet { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisualScriptIndexGet :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualScriptIndexGetMethodTable { pub class_constructor : sys :: godot_class_constructor , } impl VisualScriptIndexGetMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualScriptIndexGetMethodTable = VisualScriptIndexGetMethodTable { class_constructor : None , } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualScriptIndexGetMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualScriptIndexGet\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:184:7510 [INFO] [stdout] | [INFO] [stdout] 184 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 184 | # [doc = "`core class Skin` inherits `Resource` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_skin.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nSkin inherits methods from:\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct Skin { this : RawObject < Self > , } impl Skin { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = SkinMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = ""] # [doc = ""] # [inline] pub fn add_bind (& self , bone : i64 , pose : Transform) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = SkinMethodTable :: get (get_api ()) . add_bind ; let ret = crate :: icalls :: icallptr_void_i64_trans (method_bind , self . this . sys () . as_ptr () , bone , pose) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn clear_binds (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = SkinMethodTable :: get (get_api ()) . clear_binds ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn get_bind_bone (& self , bind_index : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = SkinMethodTable :: get (get_api ()) . get_bind_bone ; let ret = crate :: icalls :: icallptr_i64_i64 (method_bind , self . this . sys () . as_ptr () , bind_index) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn get_bind_count (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = SkinMethodTable :: get (get_api ()) . get_bind_count ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn get_bind_name (& self , bind_index : i64) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = SkinMethodTable :: get (get_api ()) . get_bind_name ; let ret = crate :: icalls :: icallptr_str_i64 (method_bind , self . this . sys () . as_ptr () , bind_index) ; GodotString :: from_sys (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn get_bind_pose (& self , bind_index : i64) -> Transform { unsafe { let method_bind : * mut sys :: godot_method_bind = SkinMethodTable :: get (get_api ()) . get_bind_pose ; let ret = crate :: icalls :: icallptr_trans_i64 (method_bind , self . this . sys () . as_ptr () , bind_index) ; mem :: transmute (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn set_bind_bone (& self , bind_index : i64 , bone : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = SkinMethodTable :: get (get_api ()) . set_bind_bone ; let ret = crate :: icalls :: icallptr_void_i64_i64 (method_bind , self . this . sys () . as_ptr () , bind_index , bone) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_bind_count (& self , bind_count : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = SkinMethodTable :: get (get_api ()) . set_bind_count ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , bind_count) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_bind_name (& self , bind_index : i64 , name : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = SkinMethodTable :: get (get_api ()) . set_bind_name ; let ret = crate :: icalls :: icallptr_void_i64_str (method_bind , self . this . sys () . as_ptr () , bind_index , name . into ()) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_bind_pose (& self , bind_index : i64 , pose : Transform) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = SkinMethodTable :: get (get_api ()) . set_bind_pose ; let ret = crate :: icalls :: icallptr_void_i64_trans (method_bind , self . this . sys () . as_ptr () , bind_index , pose) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for Skin { } unsafe impl GodotObject for Skin { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "Skin" } } impl std :: ops :: Deref for Skin { type Target = crate :: generated :: resource :: Resource ; # [inline] fn deref (& self) -> & crate :: generated :: resource :: Resource { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for Skin { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: resource :: Resource { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: resource :: Resource > for Skin { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for Skin { } unsafe impl SubClass < crate :: generated :: object :: Object > for Skin { } impl Instanciable for Skin { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { Skin :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct SkinMethodTable { pub class_constructor : sys :: godot_class_constructor , pub add_bind : * mut sys :: godot_method_bind , pub clear_binds : * mut sys :: godot_method_bind , pub get_bind_bone : * mut sys :: godot_method_bind , pub get_bind_count : * mut sys :: godot_method_bind , pub get_bind_name : * mut sys :: godot_method_bind , pub get_bind_pose : * mut sys :: godot_method_bind , pub set_bind_bone : * mut sys :: godot_method_bind , pub set_bind_count : * mut sys :: godot_method_bind , pub set_bind_name : * mut sys :: godot_method_bind , pub set_bind_pose : * mut sys :: godot_method_bind } impl SkinMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : SkinMethodTable = SkinMethodTable { class_constructor : None , add_bind : 0 as * mut sys :: godot_method_bind , clear_binds : 0 as * mut sys :: godot_method_bind , get_bind_bone : 0 as * mut sys :: godot_method_bind , get_bind_count : 0 as * mut sys :: godot_method_bind , get_bind_name : 0 as * mut sys :: godot_method_bind , get_bind_pose : 0 as * mut sys :: godot_method_bind , set_bind_bone : 0 as * mut sys :: godot_method_bind , set_bind_count : 0 as * mut sys :: godot_method_bind , set_bind_name : 0 as * mut sys :: godot_method_bind , set_bind_pose : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { SkinMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "Skin\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . add_bind = (gd_api . godot_method_bind_get_method) (class_name , "add_bind\0" . as_ptr () as * const c_char) ; table . clear_binds = (gd_api . godot_method_bind_get_method) (class_name , "clear_binds\0" . as_ptr () as * const c_char) ; table . get_bind_bone = (gd_api . godot_method_bind_get_method) (class_name , "get_bind_bone\0" . as_ptr () as * const c_char) ; table . get_bind_count = (gd_api . godot_method_bind_get_method) (class_name , "get_bind_count\0" . as_ptr () as * const c_char) ; table . get_bind_name = (gd_api . godot_method_bind_get_method) (class_name , "get_bind_name\0" . as_ptr () as * const c_char) ; table . get_bind_pose = (gd_api . godot_method_bind_get_method) (class_name , "get_bind_pose\0" . as_ptr () as * const c_char) ; table . set_bind_bone = (gd_api . godot_method_bind_get_method) (class_name , "set_bind_bone\0" . as_ptr () as * const c_char) ; table . set_bind_count = (gd_api . godot_method_bind_get_method) (class_name , "set_bind_count\0" . as_ptr () as * const c_char) ; table . set_bind_name = (gd_api . godot_method_bind_get_method) (class_name , "set_bind_name\0" . as_ptr () as * const c_char) ; table . set_bind_pose = (gd_api . godot_method_bind_get_method) (class_name , "set_bind_pose\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:190:7922 [INFO] [stdout] | [INFO] [stdout] 190 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 190 | # [doc = "`core class NoiseTexture` inherits `Texture` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_noisetexture.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nNoiseTexture inherits methods from:\n - [Texture](struct.Texture.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct NoiseTexture { this : RawObject < Self > , } impl NoiseTexture { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = NoiseTextureMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = ""] # [doc = ""] # [inline] pub fn bump_strength (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = NoiseTextureMethodTable :: get (get_api ()) . get_bump_strength ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn noise (& self) -> Option < Ref < crate :: generated :: open_simplex_noise :: OpenSimplexNoise , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = NoiseTextureMethodTable :: get (get_api ()) . get_noise ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: open_simplex_noise :: OpenSimplexNoise , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = ""] # [doc = ""] # [inline] pub fn seamless (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = NoiseTextureMethodTable :: get (get_api ()) . get_seamless ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn is_normalmap (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = NoiseTextureMethodTable :: get (get_api ()) . is_normalmap ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn set_as_normalmap (& self , as_normalmap : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = NoiseTextureMethodTable :: get (get_api ()) . set_as_normalmap ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , as_normalmap) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_bump_strength (& self , bump_strength : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = NoiseTextureMethodTable :: get (get_api ()) . set_bump_strength ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , bump_strength) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_height (& self , height : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = NoiseTextureMethodTable :: get (get_api ()) . set_height ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , height) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_noise (& self , noise : impl AsArg < crate :: generated :: open_simplex_noise :: OpenSimplexNoise >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = NoiseTextureMethodTable :: get (get_api ()) . set_noise ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , noise . as_arg_ptr ()) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_seamless (& self , seamless : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = NoiseTextureMethodTable :: get (get_api ()) . set_seamless ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , seamless) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_width (& self , width : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = NoiseTextureMethodTable :: get (get_api ()) . set_width ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , width) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for NoiseTexture { } unsafe impl GodotObject for NoiseTexture { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "NoiseTexture" } } impl std :: ops :: Deref for NoiseTexture { type Target = crate :: generated :: texture :: Texture ; # [inline] fn deref (& self) -> & crate :: generated :: texture :: Texture { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for NoiseTexture { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: texture :: Texture { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: texture :: Texture > for NoiseTexture { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for NoiseTexture { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for NoiseTexture { } unsafe impl SubClass < crate :: generated :: object :: Object > for NoiseTexture { } impl Instanciable for NoiseTexture { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { NoiseTexture :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct NoiseTextureMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_bump_strength : * mut sys :: godot_method_bind , pub get_noise : * mut sys :: godot_method_bind , pub get_seamless : * mut sys :: godot_method_bind , pub is_normalmap : * mut sys :: godot_method_bind , pub set_as_normalmap : * mut sys :: godot_method_bind , pub set_bump_strength : * mut sys :: godot_method_bind , pub set_height : * mut sys :: godot_method_bind , pub set_noise : * mut sys :: godot_method_bind , pub set_seamless : * mut sys :: godot_method_bind , pub set_width : * mut sys :: godot_method_bind } impl NoiseTextureMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : NoiseTextureMethodTable = NoiseTextureMethodTable { class_constructor : None , get_bump_strength : 0 as * mut sys :: godot_method_bind , get_noise : 0 as * mut sys :: godot_method_bind , get_seamless : 0 as * mut sys :: godot_method_bind , is_normalmap : 0 as * mut sys :: godot_method_bind , set_as_normalmap : 0 as * mut sys :: godot_method_bind , set_bump_strength : 0 as * mut sys :: godot_method_bind , set_height : 0 as * mut sys :: godot_method_bind , set_noise : 0 as * mut sys :: godot_method_bind , set_seamless : 0 as * mut sys :: godot_method_bind , set_width : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { NoiseTextureMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "NoiseTexture\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_bump_strength = (gd_api . godot_method_bind_get_method) (class_name , "get_bump_strength\0" . as_ptr () as * const c_char) ; table . get_noise = (gd_api . godot_method_bind_get_method) (class_name , "get_noise\0" . as_ptr () as * const c_char) ; table . get_seamless = (gd_api . godot_method_bind_get_method) (class_name , "get_seamless\0" . as_ptr () as * const c_char) ; table . is_normalmap = (gd_api . godot_method_bind_get_method) (class_name , "is_normalmap\0" . as_ptr () as * const c_char) ; table . set_as_normalmap = (gd_api . godot_method_bind_get_method) (class_name , "set_as_normalmap\0" . as_ptr () as * const c_char) ; table . set_bump_strength = (gd_api . godot_method_bind_get_method) (class_name , "set_bump_strength\0" . as_ptr () as * const c_char) ; table . set_height = (gd_api . godot_method_bind_get_method) (class_name , "set_height\0" . as_ptr () as * const c_char) ; table . set_noise = (gd_api . godot_method_bind_get_method) (class_name , "set_noise\0" . as_ptr () as * const c_char) ; table . set_seamless = (gd_api . godot_method_bind_get_method) (class_name , "set_seamless\0" . as_ptr () as * const c_char) ; table . set_width = (gd_api . godot_method_bind_get_method) (class_name , "set_width\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:196:18262 [INFO] [stdout] | [INFO] [stdout] 196 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 196 | # [doc = "`core class RayCast2D` inherits `Node2D` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_raycast2d.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nNon reference counted objects such as the ones of this type are usually owned by the engine.\n\n`RayCast2D` is a reference-only type. Persistent references can\nonly exist in the unsafe `Ref` form.\n\nIn the cases where Rust code owns an object of this type, for example if the object was just\ncreated on the Rust side and not passed to the engine yet, ownership should be either given\nto the engine or the object must be manually destroyed using `Ref::free`, or `Ref::queue_free`\nif it is a `Node`."] # [doc = "\n## Class hierarchy\n\nRayCast2D inherits methods from:\n - [Node2D](struct.Node2D.html)\n - [CanvasItem](struct.CanvasItem.html)\n - [Node](struct.Node.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct RayCast2D { this : RawObject < Self > , } impl RayCast2D { # [doc = "Creates a new instance of this object.\n\nBecause this type is not reference counted, the lifetime of the returned object\nis *not* automatically managed.\n\nImmediately after creation, the object is owned by the caller, and can be\npassed to the engine (in which case the engine will be responsible for\ndestroying the object) or destroyed manually using `Ref::free`, or preferably\n`Ref::queue_free` if it is a `Node`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = RayCast2DMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "Adds a collision exception so the ray does not report collisions with the specified node."] # [doc = ""] # [inline] pub fn add_exception (& self , node : impl AsArg < crate :: generated :: object :: Object >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . add_exception ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , node . as_arg_ptr ()) ; } } # [doc = "Adds a collision exception so the ray does not report collisions with the specified [RID]."] # [doc = ""] # [inline] pub fn add_exception_rid (& self , rid : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . add_exception_rid ; let ret = crate :: icalls :: icallptr_void_rid (method_bind , self . this . sys () . as_ptr () , rid) ; } } # [doc = "Removes all collision exceptions for this ray."] # [doc = ""] # [inline] pub fn clear_exceptions (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . clear_exceptions ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = "Updates the collision information for the ray. Use this method to update the collision information immediately instead of waiting for the next `_physics_process` call, for example if the ray or its parent has changed state.\n**Note:** `enabled` is not required for this to work."] # [doc = ""] # [inline] pub fn force_raycast_update (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . force_raycast_update ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = "The ray's destination point, relative to the RayCast's `position`."] # [doc = ""] # [inline] pub fn cast_to (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . get_cast_to ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "Returns the first object that the ray intersects, or `null` if no object is intersecting the ray (i.e. [method is_colliding] returns `false`)."] # [doc = ""] # [inline] pub fn get_collider (& self) -> Option < Ref < crate :: generated :: object :: Object , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . get_collider ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: object :: Object , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Returns the shape ID of the first object that the ray intersects, or `0` if no object is intersecting the ray (i.e. [method is_colliding] returns `false`)."] # [doc = ""] # [inline] pub fn get_collider_shape (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . get_collider_shape ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "The ray's collision mask. Only objects in at least one collision layer enabled in the mask will be detected. See [url=https://docs.godotengine.org/en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information."] # [doc = ""] # [inline] pub fn collision_mask (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . get_collision_mask ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns an individual bit on the collision mask."] # [doc = ""] # [inline] pub fn get_collision_mask_bit (& self , bit : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . get_collision_mask_bit ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , bit) ; ret as _ } } # [doc = "Returns the normal of the intersecting object's shape at the collision point."] # [doc = ""] # [inline] pub fn get_collision_normal (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . get_collision_normal ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "Returns the collision point at which the ray intersects the closest object.\n**Note:** this point is in the **global** coordinate system."] # [doc = ""] # [inline] pub fn get_collision_point (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . get_collision_point ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "If `true`, the parent node will be excluded from collision detection."] # [doc = ""] # [inline] pub fn exclude_parent_body (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . get_exclude_parent_body ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "If `true`, collision with [Area2D]s will be reported."] # [doc = ""] # [inline] pub fn is_collide_with_areas_enabled (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . is_collide_with_areas_enabled ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "If `true`, collision with [PhysicsBody2D]s will be reported."] # [doc = ""] # [inline] pub fn is_collide_with_bodies_enabled (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . is_collide_with_bodies_enabled ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns whether any object is intersecting with the ray's vector (considering the vector length)."] # [doc = ""] # [inline] pub fn is_colliding (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . is_colliding ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "If `true`, collisions will be reported."] # [doc = ""] # [inline] pub fn is_enabled (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . is_enabled ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Removes a collision exception so the ray does report collisions with the specified node."] # [doc = ""] # [inline] pub fn remove_exception (& self , node : impl AsArg < crate :: generated :: object :: Object >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . remove_exception ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , node . as_arg_ptr ()) ; } } # [doc = "Removes a collision exception so the ray does report collisions with the specified [RID]."] # [doc = ""] # [inline] pub fn remove_exception_rid (& self , rid : Rid) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . remove_exception_rid ; let ret = crate :: icalls :: icallptr_void_rid (method_bind , self . this . sys () . as_ptr () , rid) ; } } # [doc = "The ray's destination point, relative to the RayCast's `position`."] # [doc = ""] # [inline] pub fn set_cast_to (& self , local_point : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . set_cast_to ; let ret = crate :: icalls :: icallptr_void_vec2 (method_bind , self . this . sys () . as_ptr () , local_point) ; } } # [doc = "If `true`, collision with [Area2D]s will be reported."] # [doc = ""] # [inline] pub fn set_collide_with_areas (& self , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . set_collide_with_areas ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , enable) ; } } # [doc = "If `true`, collision with [PhysicsBody2D]s will be reported."] # [doc = ""] # [inline] pub fn set_collide_with_bodies (& self , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . set_collide_with_bodies ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , enable) ; } } # [doc = "The ray's collision mask. Only objects in at least one collision layer enabled in the mask will be detected. See [url=https://docs.godotengine.org/en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information."] # [doc = ""] # [inline] pub fn set_collision_mask (& self , mask : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . set_collision_mask ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , mask) ; } } # [doc = "Sets or clears individual bits on the collision mask. This makes selecting the areas scanned easier."] # [doc = ""] # [inline] pub fn set_collision_mask_bit (& self , bit : i64 , value : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . set_collision_mask_bit ; let ret = crate :: icalls :: icallptr_void_i64_bool (method_bind , self . this . sys () . as_ptr () , bit , value) ; } } # [doc = "If `true`, collisions will be reported."] # [doc = ""] # [inline] pub fn set_enabled (& self , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . set_enabled ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , enabled) ; } } # [doc = "If `true`, the parent node will be excluded from collision detection."] # [doc = ""] # [inline] pub fn set_exclude_parent_body (& self , mask : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayCast2DMethodTable :: get (get_api ()) . set_exclude_parent_body ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , mask) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for RayCast2D { } unsafe impl GodotObject for RayCast2D { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "RayCast2D" } } impl QueueFree for RayCast2D { # [inline] unsafe fn godot_queue_free (obj : * mut sys :: godot_object) { let method_bind : * mut sys :: godot_method_bind = crate :: generated :: node :: NodeMethodTable :: get (get_api ()) . queue_free ; crate :: icalls :: icallptr_void (method_bind , obj) } } impl std :: ops :: Deref for RayCast2D { type Target = crate :: generated :: node_2d :: Node2D ; # [inline] fn deref (& self) -> & crate :: generated :: node_2d :: Node2D { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for RayCast2D { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: node_2d :: Node2D { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: node_2d :: Node2D > for RayCast2D { } unsafe impl SubClass < crate :: generated :: canvas_item :: CanvasItem > for RayCast2D { } unsafe impl SubClass < crate :: generated :: node :: Node > for RayCast2D { } unsafe impl SubClass < crate :: generated :: object :: Object > for RayCast2D { } impl Instanciable for RayCast2D { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { RayCast2D :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct RayCast2DMethodTable { pub class_constructor : sys :: godot_class_constructor , pub add_exception : * mut sys :: godot_method_bind , pub add_exception_rid : * mut sys :: godot_method_bind , pub clear_exceptions : * mut sys :: godot_method_bind , pub force_raycast_update : * mut sys :: godot_method_bind , pub get_cast_to : * mut sys :: godot_method_bind , pub get_collider : * mut sys :: godot_method_bind , pub get_collider_shape : * mut sys :: godot_method_bind , pub get_collision_mask : * mut sys :: godot_method_bind , pub get_collision_mask_bit : * mut sys :: godot_method_bind , pub get_collision_normal : * mut sys :: godot_method_bind , pub get_collision_point : * mut sys :: godot_method_bind , pub get_exclude_parent_body : * mut sys :: godot_method_bind , pub is_collide_with_areas_enabled : * mut sys :: godot_method_bind , pub is_collide_with_bodies_enabled : * mut sys :: godot_method_bind , pub is_colliding : * mut sys :: godot_method_bind , pub is_enabled : * mut sys :: godot_method_bind , pub remove_exception : * mut sys :: godot_method_bind , pub remove_exception_rid : * mut sys :: godot_method_bind , pub set_cast_to : * mut sys :: godot_method_bind , pub set_collide_with_areas : * mut sys :: godot_method_bind , pub set_collide_with_bodies : * mut sys :: godot_method_bind , pub set_collision_mask : * mut sys :: godot_method_bind , pub set_collision_mask_bit : * mut sys :: godot_method_bind , pub set_enabled : * mut sys :: godot_method_bind , pub set_exclude_parent_body : * mut sys :: godot_method_bind } impl RayCast2DMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : RayCast2DMethodTable = RayCast2DMethodTable { class_constructor : None , add_exception : 0 as * mut sys :: godot_method_bind , add_exception_rid : 0 as * mut sys :: godot_method_bind , clear_exceptions : 0 as * mut sys :: godot_method_bind , force_raycast_update : 0 as * mut sys :: godot_method_bind , get_cast_to : 0 as * mut sys :: godot_method_bind , get_collider : 0 as * mut sys :: godot_method_bind , get_collider_shape : 0 as * mut sys :: godot_method_bind , get_collision_mask : 0 as * mut sys :: godot_method_bind , get_collision_mask_bit : 0 as * mut sys :: godot_method_bind , get_collision_normal : 0 as * mut sys :: godot_method_bind , get_collision_point : 0 as * mut sys :: godot_method_bind , get_exclude_parent_body : 0 as * mut sys :: godot_method_bind , is_collide_with_areas_enabled : 0 as * mut sys :: godot_method_bind , is_collide_with_bodies_enabled : 0 as * mut sys :: godot_method_bind , is_colliding : 0 as * mut sys :: godot_method_bind , is_enabled : 0 as * mut sys :: godot_method_bind , remove_exception : 0 as * mut sys :: godot_method_bind , remove_exception_rid : 0 as * mut sys :: godot_method_bind , set_cast_to : 0 as * mut sys :: godot_method_bind , set_collide_with_areas : 0 as * mut sys :: godot_method_bind , set_collide_with_bodies : 0 as * mut sys :: godot_method_bind , set_collision_mask : 0 as * mut sys :: godot_method_bind , set_collision_mask_bit : 0 as * mut sys :: godot_method_bind , set_enabled : 0 as * mut sys :: godot_method_bind , set_exclude_parent_body : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { RayCast2DMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "RayCast2D\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . add_exception = (gd_api . godot_method_bind_get_method) (class_name , "add_exception\0" . as_ptr () as * const c_char) ; table . add_exception_rid = (gd_api . godot_method_bind_get_method) (class_name , "add_exception_rid\0" . as_ptr () as * const c_char) ; table . clear_exceptions = (gd_api . godot_method_bind_get_method) (class_name , "clear_exceptions\0" . as_ptr () as * const c_char) ; table . force_raycast_update = (gd_api . godot_method_bind_get_method) (class_name , "force_raycast_update\0" . as_ptr () as * const c_char) ; table . get_cast_to = (gd_api . godot_method_bind_get_method) (class_name , "get_cast_to\0" . as_ptr () as * const c_char) ; table . get_collider = (gd_api . godot_method_bind_get_method) (class_name , "get_collider\0" . as_ptr () as * const c_char) ; table . get_collider_shape = (gd_api . godot_method_bind_get_method) (class_name , "get_collider_shape\0" . as_ptr () as * const c_char) ; table . get_collision_mask = (gd_api . godot_method_bind_get_method) (class_name , "get_collision_mask\0" . as_ptr () as * const c_char) ; table . get_collision_mask_bit = (gd_api . godot_method_bind_get_method) (class_name , "get_collision_mask_bit\0" . as_ptr () as * const c_char) ; table . get_collision_normal = (gd_api . godot_method_bind_get_method) (class_name , "get_collision_normal\0" . as_ptr () as * const c_char) ; table . get_collision_point = (gd_api . godot_method_bind_get_method) (class_name , "get_collision_point\0" . as_ptr () as * const c_char) ; table . get_exclude_parent_body = (gd_api . godot_method_bind_get_method) (class_name , "get_exclude_parent_body\0" . as_ptr () as * const c_char) ; table . is_collide_with_areas_enabled = (gd_api . godot_method_bind_get_method) (class_name , "is_collide_with_areas_enabled\0" . as_ptr () as * const c_char) ; table . is_collide_with_bodies_enabled = (gd_api . godot_method_bind_get_method) (class_name , "is_collide_with_bodies_enabled\0" . as_ptr () as * const c_char) ; table . is_colliding = (gd_api . godot_method_bind_get_method) (class_name , "is_colliding\0" . as_ptr () as * const c_char) ; table . is_enabled = (gd_api . godot_method_bind_get_method) (class_name , "is_enabled\0" . as_ptr () as * const c_char) ; table . remove_exception = (gd_api . godot_method_bind_get_method) (class_name , "remove_exception\0" . as_ptr () as * const c_char) ; table . remove_exception_rid = (gd_api . godot_method_bind_get_method) (class_name , "remove_exception_rid\0" . as_ptr () as * const c_char) ; table . set_cast_to = (gd_api . godot_method_bind_get_method) (class_name , "set_cast_to\0" . as_ptr () as * const c_char) ; table . set_collide_with_areas = (gd_api . godot_method_bind_get_method) (class_name , "set_collide_with_areas\0" . as_ptr () as * const c_char) ; table . set_collide_with_bodies = (gd_api . godot_method_bind_get_method) (class_name , "set_collide_with_bodies\0" . as_ptr () as * const c_char) ; table . set_collision_mask = (gd_api . godot_method_bind_get_method) (class_name , "set_collision_mask\0" . as_ptr () as * const c_char) ; table . set_collision_mask_bit = (gd_api . godot_method_bind_get_method) (class_name , "set_collision_mask_bit\0" . as_ptr () as * const c_char) ; table . set_enabled = (gd_api . godot_method_bind_get_method) (class_name , "set_enabled\0" . as_ptr () as * const c_char) ; table . set_exclude_parent_body = (gd_api . godot_method_bind_get_method) (class_name , "set_exclude_parent_body\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:202:16462 [INFO] [stdout] | [INFO] [stdout] 202 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 202 | # [doc = "`core class TextureButton` inherits `BaseButton` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_texturebutton.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nNon reference counted objects such as the ones of this type are usually owned by the engine.\n\n`TextureButton` is a reference-only type. Persistent references can\nonly exist in the unsafe `Ref` form.\n\nIn the cases where Rust code owns an object of this type, for example if the object was just\ncreated on the Rust side and not passed to the engine yet, ownership should be either given\nto the engine or the object must be manually destroyed using `Ref::free`, or `Ref::queue_free`\nif it is a `Node`."] # [doc = "\n## Class hierarchy\n\nTextureButton inherits methods from:\n - [BaseButton](struct.BaseButton.html)\n - [Control](struct.Control.html)\n - [CanvasItem](struct.CanvasItem.html)\n - [Node](struct.Node.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct TextureButton { this : RawObject < Self > , } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct StretchMode (pub i64) ; impl StretchMode { pub const SCALE : StretchMode = StretchMode (0i64) ; pub const TILE : StretchMode = StretchMode (1i64) ; pub const KEEP : StretchMode = StretchMode (2i64) ; pub const KEEP_CENTERED : StretchMode = StretchMode (3i64) ; pub const KEEP_ASPECT : StretchMode = StretchMode (4i64) ; pub const KEEP_ASPECT_CENTERED : StretchMode = StretchMode (5i64) ; pub const KEEP_ASPECT_COVERED : StretchMode = StretchMode (6i64) ; } impl From < i64 > for StretchMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < StretchMode > for i64 { # [inline] fn from (v : StretchMode) -> Self { v . 0 } } # [doc = "Constants"] # [allow (non_upper_case_globals)] impl TextureButton { pub const STRETCH_KEEP : i64 = 2i64 ; pub const STRETCH_KEEP_ASPECT : i64 = 4i64 ; pub const STRETCH_KEEP_ASPECT_CENTERED : i64 = 5i64 ; pub const STRETCH_KEEP_ASPECT_COVERED : i64 = 6i64 ; pub const STRETCH_KEEP_CENTERED : i64 = 3i64 ; pub const STRETCH_SCALE : i64 = 0i64 ; pub const STRETCH_TILE : i64 = 1i64 ; } impl TextureButton { # [doc = "Creates a new instance of this object.\n\nBecause this type is not reference counted, the lifetime of the returned object\nis *not* automatically managed.\n\nImmediately after creation, the object is owned by the caller, and can be\npassed to the engine (in which case the engine will be responsible for\ndestroying the object) or destroyed manually using `Ref::free`, or preferably\n`Ref::queue_free` if it is a `Node`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = TextureButtonMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "Pure black and white [BitMap] image to use for click detection. On the mask, white pixels represent the button's clickable area. Use it to create buttons with curved shapes."] # [doc = ""] # [inline] pub fn click_mask (& self) -> Option < Ref < crate :: generated :: bit_map :: BitMap , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . get_click_mask ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: bit_map :: BitMap , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Texture to display when the node is disabled. See [member BaseButton.disabled]."] # [doc = ""] # [inline] pub fn disabled_texture (& self) -> Option < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . get_disabled_texture ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "If `true`, the texture stretches to the edges of the node's bounding rectangle using the [member stretch_mode]. If `false`, the texture will not scale with the node."] # [doc = ""] # [inline] pub fn expand (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . get_expand ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Texture to display when the node has mouse or keyboard focus."] # [doc = ""] # [inline] pub fn focused_texture (& self) -> Option < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . get_focused_texture ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Texture to display when the mouse hovers the node."] # [doc = ""] # [inline] pub fn hover_texture (& self) -> Option < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . get_hover_texture ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Texture to display by default, when the node is **not** in the disabled, focused, hover or pressed state."] # [doc = ""] # [inline] pub fn normal_texture (& self) -> Option < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . get_normal_texture ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Texture to display on mouse down over the node, if the node has keyboard focus and the player presses the Enter key or if the player presses the [member BaseButton.shortcut] key."] # [doc = ""] # [inline] pub fn pressed_texture (& self) -> Option < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . get_pressed_texture ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Controls the texture's behavior when you resize the node's bounding rectangle, **only if** [member expand] is `true`. Set it to one of the [enum StretchMode] constants. See the constants to learn more."] # [doc = ""] # [inline] pub fn stretch_mode (& self) -> crate :: generated :: texture_button :: StretchMode { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . get_stretch_mode ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; crate :: generated :: texture_button :: StretchMode (ret) } } # [doc = "Pure black and white [BitMap] image to use for click detection. On the mask, white pixels represent the button's clickable area. Use it to create buttons with curved shapes."] # [doc = ""] # [inline] pub fn set_click_mask (& self , mask : impl AsArg < crate :: generated :: bit_map :: BitMap >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . set_click_mask ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , mask . as_arg_ptr ()) ; } } # [doc = "Texture to display when the node is disabled. See [member BaseButton.disabled]."] # [doc = ""] # [inline] pub fn set_disabled_texture (& self , texture : impl AsArg < crate :: generated :: texture :: Texture >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . set_disabled_texture ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , texture . as_arg_ptr ()) ; } } # [doc = "If `true`, the texture stretches to the edges of the node's bounding rectangle using the [member stretch_mode]. If `false`, the texture will not scale with the node."] # [doc = ""] # [inline] pub fn set_expand (& self , p_expand : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . set_expand ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , p_expand) ; } } # [doc = "Texture to display when the node has mouse or keyboard focus."] # [doc = ""] # [inline] pub fn set_focused_texture (& self , texture : impl AsArg < crate :: generated :: texture :: Texture >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . set_focused_texture ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , texture . as_arg_ptr ()) ; } } # [doc = "Texture to display when the mouse hovers the node."] # [doc = ""] # [inline] pub fn set_hover_texture (& self , texture : impl AsArg < crate :: generated :: texture :: Texture >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . set_hover_texture ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , texture . as_arg_ptr ()) ; } } # [doc = "Texture to display by default, when the node is **not** in the disabled, focused, hover or pressed state."] # [doc = ""] # [inline] pub fn set_normal_texture (& self , texture : impl AsArg < crate :: generated :: texture :: Texture >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . set_normal_texture ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , texture . as_arg_ptr ()) ; } } # [doc = "Texture to display on mouse down over the node, if the node has keyboard focus and the player presses the Enter key or if the player presses the [member BaseButton.shortcut] key."] # [doc = ""] # [inline] pub fn set_pressed_texture (& self , texture : impl AsArg < crate :: generated :: texture :: Texture >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . set_pressed_texture ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , texture . as_arg_ptr ()) ; } } # [doc = "Controls the texture's behavior when you resize the node's bounding rectangle, **only if** [member expand] is `true`. Set it to one of the [enum StretchMode] constants. See the constants to learn more."] # [doc = ""] # [inline] pub fn set_stretch_mode (& self , p_mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TextureButtonMethodTable :: get (get_api ()) . set_stretch_mode ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , p_mode) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for TextureButton { } unsafe impl GodotObject for TextureButton { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "TextureButton" } } impl QueueFree for TextureButton { # [inline] unsafe fn godot_queue_free (obj : * mut sys :: godot_object) { let method_bind : * mut sys :: godot_method_bind = crate :: generated :: node :: NodeMethodTable :: get (get_api ()) . queue_free ; crate :: icalls :: icallptr_void (method_bind , obj) } } impl std :: ops :: Deref for TextureButton { type Target = crate :: generated :: base_button :: BaseButton ; # [inline] fn deref (& self) -> & crate :: generated :: base_button :: BaseButton { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for TextureButton { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: base_button :: BaseButton { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: base_button :: BaseButton > for TextureButton { } unsafe impl SubClass < crate :: generated :: control :: Control > for TextureButton { } unsafe impl SubClass < crate :: generated :: canvas_item :: CanvasItem > for TextureButton { } unsafe impl SubClass < crate :: generated :: node :: Node > for TextureButton { } unsafe impl SubClass < crate :: generated :: object :: Object > for TextureButton { } impl Instanciable for TextureButton { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { TextureButton :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct TextureButtonMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_click_mask : * mut sys :: godot_method_bind , pub get_disabled_texture : * mut sys :: godot_method_bind , pub get_expand : * mut sys :: godot_method_bind , pub get_focused_texture : * mut sys :: godot_method_bind , pub get_hover_texture : * mut sys :: godot_method_bind , pub get_normal_texture : * mut sys :: godot_method_bind , pub get_pressed_texture : * mut sys :: godot_method_bind , pub get_stretch_mode : * mut sys :: godot_method_bind , pub set_click_mask : * mut sys :: godot_method_bind , pub set_disabled_texture : * mut sys :: godot_method_bind , pub set_expand : * mut sys :: godot_method_bind , pub set_focused_texture : * mut sys :: godot_method_bind , pub set_hover_texture : * mut sys :: godot_method_bind , pub set_normal_texture : * mut sys :: godot_method_bind , pub set_pressed_texture : * mut sys :: godot_method_bind , pub set_stretch_mode : * mut sys :: godot_method_bind } impl TextureButtonMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : TextureButtonMethodTable = TextureButtonMethodTable { class_constructor : None , get_click_mask : 0 as * mut sys :: godot_method_bind , get_disabled_texture : 0 as * mut sys :: godot_method_bind , get_expand : 0 as * mut sys :: godot_method_bind , get_focused_texture : 0 as * mut sys :: godot_method_bind , get_hover_texture : 0 as * mut sys :: godot_method_bind , get_normal_texture : 0 as * mut sys :: godot_method_bind , get_pressed_texture : 0 as * mut sys :: godot_method_bind , get_stretch_mode : 0 as * mut sys :: godot_method_bind , set_click_mask : 0 as * mut sys :: godot_method_bind , set_disabled_texture : 0 as * mut sys :: godot_method_bind , set_expand : 0 as * mut sys :: godot_method_bind , set_focused_texture : 0 as * mut sys :: godot_method_bind , set_hover_texture : 0 as * mut sys :: godot_method_bind , set_normal_texture : 0 as * mut sys :: godot_method_bind , set_pressed_texture : 0 as * mut sys :: godot_method_bind , set_stretch_mode : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { TextureButtonMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "TextureButton\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_click_mask = (gd_api . godot_method_bind_get_method) (class_name , "get_click_mask\0" . as_ptr () as * const c_char) ; table . get_disabled_texture = (gd_api . godot_method_bind_get_method) (class_name , "get_disabled_texture\0" . as_ptr () as * const c_char) ; table . get_expand = (gd_api . godot_method_bind_get_method) (class_name , "get_expand\0" . as_ptr () as * const c_char) ; table . get_focused_texture = (gd_api . godot_method_bind_get_method) (class_name , "get_focused_texture\0" . as_ptr () as * const c_char) ; table . get_hover_texture = (gd_api . godot_method_bind_get_method) (class_name , "get_hover_texture\0" . as_ptr () as * const c_char) ; table . get_normal_texture = (gd_api . godot_method_bind_get_method) (class_name , "get_normal_texture\0" . as_ptr () as * const c_char) ; table . get_pressed_texture = (gd_api . godot_method_bind_get_method) (class_name , "get_pressed_texture\0" . as_ptr () as * const c_char) ; table . get_stretch_mode = (gd_api . godot_method_bind_get_method) (class_name , "get_stretch_mode\0" . as_ptr () as * const c_char) ; table . set_click_mask = (gd_api . godot_method_bind_get_method) (class_name , "set_click_mask\0" . as_ptr () as * const c_char) ; table . set_disabled_texture = (gd_api . godot_method_bind_get_method) (class_name , "set_disabled_texture\0" . as_ptr () as * const c_char) ; table . set_expand = (gd_api . godot_method_bind_get_method) (class_name , "set_expand\0" . as_ptr () as * const c_char) ; table . set_focused_texture = (gd_api . godot_method_bind_get_method) (class_name , "set_focused_texture\0" . as_ptr () as * const c_char) ; table . set_hover_texture = (gd_api . godot_method_bind_get_method) (class_name , "set_hover_texture\0" . as_ptr () as * const c_char) ; table . set_normal_texture = (gd_api . godot_method_bind_get_method) (class_name , "set_normal_texture\0" . as_ptr () as * const c_char) ; table . set_pressed_texture = (gd_api . godot_method_bind_get_method) (class_name , "set_pressed_texture\0" . as_ptr () as * const c_char) ; table . set_stretch_mode = (gd_api . godot_method_bind_get_method) (class_name , "set_stretch_mode\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:208:5711 [INFO] [stdout] | [INFO] [stdout] 208 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 208 | # [doc = "`core class VisualShaderNodeTransformMult` inherits `VisualShaderNode` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualshadernodetransformmult.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nVisualShaderNodeTransformMult inherits methods from:\n - [VisualShaderNode](struct.VisualShaderNode.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualShaderNodeTransformMult { this : RawObject < Self > , } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct Operator (pub i64) ; impl Operator { pub const AXB : Operator = Operator (0i64) ; pub const BXA : Operator = Operator (1i64) ; pub const AXB_COMP : Operator = Operator (2i64) ; pub const BXA_COMP : Operator = Operator (3i64) ; } impl From < i64 > for Operator { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < Operator > for i64 { # [inline] fn from (v : Operator) -> Self { v . 0 } } # [doc = "Constants"] # [allow (non_upper_case_globals)] impl VisualShaderNodeTransformMult { pub const OP_AxB : i64 = 0i64 ; pub const OP_AxB_COMP : i64 = 2i64 ; pub const OP_BxA : i64 = 1i64 ; pub const OP_BxA_COMP : i64 = 3i64 ; } impl VisualShaderNodeTransformMult { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisualShaderNodeTransformMultMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "The multiplication type to be performed on the transforms. See [enum Operator] for options."] # [doc = ""] # [inline] pub fn operator (& self) -> crate :: generated :: visual_shader_node_transform_mult :: Operator { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualShaderNodeTransformMultMethodTable :: get (get_api ()) . get_operator ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; crate :: generated :: visual_shader_node_transform_mult :: Operator (ret) } } # [doc = "The multiplication type to be performed on the transforms. See [enum Operator] for options."] # [doc = ""] # [inline] pub fn set_operator (& self , op : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualShaderNodeTransformMultMethodTable :: get (get_api ()) . set_operator ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , op) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualShaderNodeTransformMult { } unsafe impl GodotObject for VisualShaderNodeTransformMult { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "VisualShaderNodeTransformMult" } } impl std :: ops :: Deref for VisualShaderNodeTransformMult { type Target = crate :: generated :: visual_shader_node :: VisualShaderNode ; # [inline] fn deref (& self) -> & crate :: generated :: visual_shader_node :: VisualShaderNode { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualShaderNodeTransformMult { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: visual_shader_node :: VisualShaderNode { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: visual_shader_node :: VisualShaderNode > for VisualShaderNodeTransformMult { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for VisualShaderNodeTransformMult { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for VisualShaderNodeTransformMult { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualShaderNodeTransformMult { } impl Instanciable for VisualShaderNodeTransformMult { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisualShaderNodeTransformMult :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualShaderNodeTransformMultMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_operator : * mut sys :: godot_method_bind , pub set_operator : * mut sys :: godot_method_bind } impl VisualShaderNodeTransformMultMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualShaderNodeTransformMultMethodTable = VisualShaderNodeTransformMultMethodTable { class_constructor : None , get_operator : 0 as * mut sys :: godot_method_bind , set_operator : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualShaderNodeTransformMultMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualShaderNodeTransformMult\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_operator = (gd_api . godot_method_bind_get_method) (class_name , "get_operator\0" . as_ptr () as * const c_char) ; table . set_operator = (gd_api . godot_method_bind_get_method) (class_name , "set_operator\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:214:3280 [INFO] [stdout] | [INFO] [stdout] 214 | ...dTable { class_constructor : None , } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 214 | # [doc = "`core class ResourceFormatLoader` inherits `Reference` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_resourceformatloader.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nResourceFormatLoader inherits methods from:\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct ResourceFormatLoader { this : RawObject < Self > , } impl ResourceFormatLoader { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = ResourceFormatLoaderMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } } impl gdnative_core :: private :: godot_object :: Sealed for ResourceFormatLoader { } unsafe impl GodotObject for ResourceFormatLoader { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "ResourceFormatLoader" } } impl std :: ops :: Deref for ResourceFormatLoader { type Target = crate :: generated :: reference :: Reference ; # [inline] fn deref (& self) -> & crate :: generated :: reference :: Reference { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for ResourceFormatLoader { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: reference :: Reference { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: reference :: Reference > for ResourceFormatLoader { } unsafe impl SubClass < crate :: generated :: object :: Object > for ResourceFormatLoader { } impl Instanciable for ResourceFormatLoader { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { ResourceFormatLoader :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct ResourceFormatLoaderMethodTable { pub class_constructor : sys :: godot_class_constructor , } impl ResourceFormatLoaderMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : ResourceFormatLoaderMethodTable = ResourceFormatLoaderMethodTable { class_constructor : None , } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { ResourceFormatLoaderMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "ResourceFormatLoader\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:220:7452 [INFO] [stdout] | [INFO] [stdout] 220 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 220 | # [doc = "`core class World` inherits `Resource` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_world.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nWorld inherits methods from:\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct World { this : RawObject < Self > , } impl World { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = WorldMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "Direct access to the world's physics 3D space state. Used for querying current and potential collisions. Must only be accessed from within `_physics_process(delta)`."] # [doc = ""] # [inline] pub fn direct_space_state (& self) -> Option < Ref < crate :: generated :: physics_direct_space_state :: PhysicsDirectSpaceState , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = WorldMethodTable :: get (get_api ()) . get_direct_space_state ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: physics_direct_space_state :: PhysicsDirectSpaceState , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "The World's [Environment]."] # [doc = ""] # [inline] pub fn environment (& self) -> Option < Ref < crate :: generated :: environment :: Environment , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = WorldMethodTable :: get (get_api ()) . get_environment ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: environment :: Environment , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "The World's fallback_environment will be used if the World's [Environment] fails or is missing."] # [doc = ""] # [inline] pub fn fallback_environment (& self) -> Option < Ref < crate :: generated :: environment :: Environment , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = WorldMethodTable :: get (get_api ()) . get_fallback_environment ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: environment :: Environment , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "The World's visual scenario."] # [doc = ""] # [inline] pub fn scenario (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = WorldMethodTable :: get (get_api ()) . get_scenario ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "The World's physics space."] # [doc = ""] # [inline] pub fn space (& self) -> Rid { unsafe { let method_bind : * mut sys :: godot_method_bind = WorldMethodTable :: get (get_api ()) . get_space ; let ret = crate :: icalls :: icallptr_rid (method_bind , self . this . sys () . as_ptr ()) ; Rid :: from_sys (ret) } } # [doc = "The World's [Environment]."] # [doc = ""] # [inline] pub fn set_environment (& self , env : impl AsArg < crate :: generated :: environment :: Environment >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = WorldMethodTable :: get (get_api ()) . set_environment ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , env . as_arg_ptr ()) ; } } # [doc = "The World's fallback_environment will be used if the World's [Environment] fails or is missing."] # [doc = ""] # [inline] pub fn set_fallback_environment (& self , env : impl AsArg < crate :: generated :: environment :: Environment >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = WorldMethodTable :: get (get_api ()) . set_fallback_environment ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , env . as_arg_ptr ()) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for World { } unsafe impl GodotObject for World { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "World" } } impl std :: ops :: Deref for World { type Target = crate :: generated :: resource :: Resource ; # [inline] fn deref (& self) -> & crate :: generated :: resource :: Resource { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for World { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: resource :: Resource { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: resource :: Resource > for World { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for World { } unsafe impl SubClass < crate :: generated :: object :: Object > for World { } impl Instanciable for World { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { World :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct WorldMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_direct_space_state : * mut sys :: godot_method_bind , pub get_environment : * mut sys :: godot_method_bind , pub get_fallback_environment : * mut sys :: godot_method_bind , pub get_scenario : * mut sys :: godot_method_bind , pub get_space : * mut sys :: godot_method_bind , pub set_environment : * mut sys :: godot_method_bind , pub set_fallback_environment : * mut sys :: godot_method_bind } impl WorldMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : WorldMethodTable = WorldMethodTable { class_constructor : None , get_direct_space_state : 0 as * mut sys :: godot_method_bind , get_environment : 0 as * mut sys :: godot_method_bind , get_fallback_environment : 0 as * mut sys :: godot_method_bind , get_scenario : 0 as * mut sys :: godot_method_bind , get_space : 0 as * mut sys :: godot_method_bind , set_environment : 0 as * mut sys :: godot_method_bind , set_fallback_environment : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { WorldMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "World\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_direct_space_state = (gd_api . godot_method_bind_get_method) (class_name , "get_direct_space_state\0" . as_ptr () as * const c_char) ; table . get_environment = (gd_api . godot_method_bind_get_method) (class_name , "get_environment\0" . as_ptr () as * const c_char) ; table . get_fallback_environment = (gd_api . godot_method_bind_get_method) (class_name , "get_fallback_environment\0" . as_ptr () as * const c_char) ; table . get_scenario = (gd_api . godot_method_bind_get_method) (class_name , "get_scenario\0" . as_ptr () as * const c_char) ; table . get_space = (gd_api . godot_method_bind_get_method) (class_name , "get_space\0" . as_ptr () as * const c_char) ; table . set_environment = (gd_api . godot_method_bind_get_method) (class_name , "set_environment\0" . as_ptr () as * const c_char) ; table . set_fallback_environment = (gd_api . godot_method_bind_get_method) (class_name , "set_fallback_environment\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:226:11283 [INFO] [stdout] | [INFO] [stdout] 226 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 226 | # [doc = "`core class ParallaxBackground` inherits `CanvasLayer` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_parallaxbackground.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nNon reference counted objects such as the ones of this type are usually owned by the engine.\n\n`ParallaxBackground` is a reference-only type. Persistent references can\nonly exist in the unsafe `Ref` form.\n\nIn the cases where Rust code owns an object of this type, for example if the object was just\ncreated on the Rust side and not passed to the engine yet, ownership should be either given\nto the engine or the object must be manually destroyed using `Ref::free`, or `Ref::queue_free`\nif it is a `Node`."] # [doc = "\n## Class hierarchy\n\nParallaxBackground inherits methods from:\n - [CanvasLayer](struct.CanvasLayer.html)\n - [Node](struct.Node.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct ParallaxBackground { this : RawObject < Self > , } impl ParallaxBackground { # [doc = "Creates a new instance of this object.\n\nBecause this type is not reference counted, the lifetime of the returned object\nis *not* automatically managed.\n\nImmediately after creation, the object is owned by the caller, and can be\npassed to the engine (in which case the engine will be responsible for\ndestroying the object) or destroyed manually using `Ref::free`, or preferably\n`Ref::queue_free` if it is a `Node`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = ParallaxBackgroundMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "Top-left limits for scrolling to begin. If the camera is outside of this limit, the background will stop scrolling. Must be lower than [member scroll_limit_end] to work."] # [doc = ""] # [inline] pub fn limit_begin (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = ParallaxBackgroundMethodTable :: get (get_api ()) . get_limit_begin ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "Bottom-right limits for scrolling to end. If the camera is outside of this limit, the background will stop scrolling. Must be higher than [member scroll_limit_begin] to work."] # [doc = ""] # [inline] pub fn limit_end (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = ParallaxBackgroundMethodTable :: get (get_api ()) . get_limit_end ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "The base position offset for all [ParallaxLayer] children."] # [doc = ""] # [inline] pub fn scroll_base_offset (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = ParallaxBackgroundMethodTable :: get (get_api ()) . get_scroll_base_offset ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "The base motion scale for all [ParallaxLayer] children."] # [doc = ""] # [inline] pub fn scroll_base_scale (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = ParallaxBackgroundMethodTable :: get (get_api ()) . get_scroll_base_scale ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "The ParallaxBackground's scroll value. Calculated automatically when using a [Camera2D], but can be used to manually manage scrolling when no camera is present."] # [doc = ""] # [inline] pub fn scroll_offset (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = ParallaxBackgroundMethodTable :: get (get_api ()) . get_scroll_offset ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "If `true`, elements in [ParallaxLayer] child aren't affected by the zoom level of the camera."] # [doc = ""] # [inline] pub fn is_ignore_camera_zoom (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = ParallaxBackgroundMethodTable :: get (get_api ()) . is_ignore_camera_zoom ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "If `true`, elements in [ParallaxLayer] child aren't affected by the zoom level of the camera."] # [doc = ""] # [inline] pub fn set_ignore_camera_zoom (& self , ignore : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = ParallaxBackgroundMethodTable :: get (get_api ()) . set_ignore_camera_zoom ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , ignore) ; } } # [doc = "Top-left limits for scrolling to begin. If the camera is outside of this limit, the background will stop scrolling. Must be lower than [member scroll_limit_end] to work."] # [doc = ""] # [inline] pub fn set_limit_begin (& self , ofs : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = ParallaxBackgroundMethodTable :: get (get_api ()) . set_limit_begin ; let ret = crate :: icalls :: icallptr_void_vec2 (method_bind , self . this . sys () . as_ptr () , ofs) ; } } # [doc = "Bottom-right limits for scrolling to end. If the camera is outside of this limit, the background will stop scrolling. Must be higher than [member scroll_limit_begin] to work."] # [doc = ""] # [inline] pub fn set_limit_end (& self , ofs : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = ParallaxBackgroundMethodTable :: get (get_api ()) . set_limit_end ; let ret = crate :: icalls :: icallptr_void_vec2 (method_bind , self . this . sys () . as_ptr () , ofs) ; } } # [doc = "The base position offset for all [ParallaxLayer] children."] # [doc = ""] # [inline] pub fn set_scroll_base_offset (& self , ofs : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = ParallaxBackgroundMethodTable :: get (get_api ()) . set_scroll_base_offset ; let ret = crate :: icalls :: icallptr_void_vec2 (method_bind , self . this . sys () . as_ptr () , ofs) ; } } # [doc = "The base motion scale for all [ParallaxLayer] children."] # [doc = ""] # [inline] pub fn set_scroll_base_scale (& self , scale : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = ParallaxBackgroundMethodTable :: get (get_api ()) . set_scroll_base_scale ; let ret = crate :: icalls :: icallptr_void_vec2 (method_bind , self . this . sys () . as_ptr () , scale) ; } } # [doc = "The ParallaxBackground's scroll value. Calculated automatically when using a [Camera2D], but can be used to manually manage scrolling when no camera is present."] # [doc = ""] # [inline] pub fn set_scroll_offset (& self , ofs : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = ParallaxBackgroundMethodTable :: get (get_api ()) . set_scroll_offset ; let ret = crate :: icalls :: icallptr_void_vec2 (method_bind , self . this . sys () . as_ptr () , ofs) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for ParallaxBackground { } unsafe impl GodotObject for ParallaxBackground { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "ParallaxBackground" } } impl QueueFree for ParallaxBackground { # [inline] unsafe fn godot_queue_free (obj : * mut sys :: godot_object) { let method_bind : * mut sys :: godot_method_bind = crate :: generated :: node :: NodeMethodTable :: get (get_api ()) . queue_free ; crate :: icalls :: icallptr_void (method_bind , obj) } } impl std :: ops :: Deref for ParallaxBackground { type Target = crate :: generated :: canvas_layer :: CanvasLayer ; # [inline] fn deref (& self) -> & crate :: generated :: canvas_layer :: CanvasLayer { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for ParallaxBackground { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: canvas_layer :: CanvasLayer { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: canvas_layer :: CanvasLayer > for ParallaxBackground { } unsafe impl SubClass < crate :: generated :: node :: Node > for ParallaxBackground { } unsafe impl SubClass < crate :: generated :: object :: Object > for ParallaxBackground { } impl Instanciable for ParallaxBackground { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { ParallaxBackground :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct ParallaxBackgroundMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_limit_begin : * mut sys :: godot_method_bind , pub get_limit_end : * mut sys :: godot_method_bind , pub get_scroll_base_offset : * mut sys :: godot_method_bind , pub get_scroll_base_scale : * mut sys :: godot_method_bind , pub get_scroll_offset : * mut sys :: godot_method_bind , pub is_ignore_camera_zoom : * mut sys :: godot_method_bind , pub set_ignore_camera_zoom : * mut sys :: godot_method_bind , pub set_limit_begin : * mut sys :: godot_method_bind , pub set_limit_end : * mut sys :: godot_method_bind , pub set_scroll_base_offset : * mut sys :: godot_method_bind , pub set_scroll_base_scale : * mut sys :: godot_method_bind , pub set_scroll_offset : * mut sys :: godot_method_bind } impl ParallaxBackgroundMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : ParallaxBackgroundMethodTable = ParallaxBackgroundMethodTable { class_constructor : None , get_limit_begin : 0 as * mut sys :: godot_method_bind , get_limit_end : 0 as * mut sys :: godot_method_bind , get_scroll_base_offset : 0 as * mut sys :: godot_method_bind , get_scroll_base_scale : 0 as * mut sys :: godot_method_bind , get_scroll_offset : 0 as * mut sys :: godot_method_bind , is_ignore_camera_zoom : 0 as * mut sys :: godot_method_bind , set_ignore_camera_zoom : 0 as * mut sys :: godot_method_bind , set_limit_begin : 0 as * mut sys :: godot_method_bind , set_limit_end : 0 as * mut sys :: godot_method_bind , set_scroll_base_offset : 0 as * mut sys :: godot_method_bind , set_scroll_base_scale : 0 as * mut sys :: godot_method_bind , set_scroll_offset : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { ParallaxBackgroundMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "ParallaxBackground\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_limit_begin = (gd_api . godot_method_bind_get_method) (class_name , "get_limit_begin\0" . as_ptr () as * const c_char) ; table . get_limit_end = (gd_api . godot_method_bind_get_method) (class_name , "get_limit_end\0" . as_ptr () as * const c_char) ; table . get_scroll_base_offset = (gd_api . godot_method_bind_get_method) (class_name , "get_scroll_base_offset\0" . as_ptr () as * const c_char) ; table . get_scroll_base_scale = (gd_api . godot_method_bind_get_method) (class_name , "get_scroll_base_scale\0" . as_ptr () as * const c_char) ; table . get_scroll_offset = (gd_api . godot_method_bind_get_method) (class_name , "get_scroll_offset\0" . as_ptr () as * const c_char) ; table . is_ignore_camera_zoom = (gd_api . godot_method_bind_get_method) (class_name , "is_ignore_camera_zoom\0" . as_ptr () as * const c_char) ; table . set_ignore_camera_zoom = (gd_api . godot_method_bind_get_method) (class_name , "set_ignore_camera_zoom\0" . as_ptr () as * const c_char) ; table . set_limit_begin = (gd_api . godot_method_bind_get_method) (class_name , "set_limit_begin\0" . as_ptr () as * const c_char) ; table . set_limit_end = (gd_api . godot_method_bind_get_method) (class_name , "set_limit_end\0" . as_ptr () as * const c_char) ; table . set_scroll_base_offset = (gd_api . godot_method_bind_get_method) (class_name , "set_scroll_base_offset\0" . as_ptr () as * const c_char) ; table . set_scroll_base_scale = (gd_api . godot_method_bind_get_method) (class_name , "set_scroll_base_scale\0" . as_ptr () as * const c_char) ; table . set_scroll_offset = (gd_api . godot_method_bind_get_method) (class_name , "set_scroll_offset\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:232:5076 [INFO] [stdout] | [INFO] [stdout] 232 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 232 | # [doc = "`core class RayShape` inherits `Shape` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_rayshape.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nRayShape inherits methods from:\n - [Shape](struct.Shape.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct RayShape { this : RawObject < Self > , } impl RayShape { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = RayShapeMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "The ray's length."] # [doc = ""] # [inline] pub fn length (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = RayShapeMethodTable :: get (get_api ()) . get_length ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "If `true`, allow the shape to return the correct normal."] # [doc = ""] # [inline] pub fn slips_on_slope (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = RayShapeMethodTable :: get (get_api ()) . get_slips_on_slope ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "The ray's length."] # [doc = ""] # [inline] pub fn set_length (& self , length : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayShapeMethodTable :: get (get_api ()) . set_length ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , length) ; } } # [doc = "If `true`, allow the shape to return the correct normal."] # [doc = ""] # [inline] pub fn set_slips_on_slope (& self , active : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = RayShapeMethodTable :: get (get_api ()) . set_slips_on_slope ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , active) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for RayShape { } unsafe impl GodotObject for RayShape { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "RayShape" } } impl std :: ops :: Deref for RayShape { type Target = crate :: generated :: shape :: Shape ; # [inline] fn deref (& self) -> & crate :: generated :: shape :: Shape { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for RayShape { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: shape :: Shape { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: shape :: Shape > for RayShape { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for RayShape { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for RayShape { } unsafe impl SubClass < crate :: generated :: object :: Object > for RayShape { } impl Instanciable for RayShape { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { RayShape :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct RayShapeMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_length : * mut sys :: godot_method_bind , pub get_slips_on_slope : * mut sys :: godot_method_bind , pub set_length : * mut sys :: godot_method_bind , pub set_slips_on_slope : * mut sys :: godot_method_bind } impl RayShapeMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : RayShapeMethodTable = RayShapeMethodTable { class_constructor : None , get_length : 0 as * mut sys :: godot_method_bind , get_slips_on_slope : 0 as * mut sys :: godot_method_bind , set_length : 0 as * mut sys :: godot_method_bind , set_slips_on_slope : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { RayShapeMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "RayShape\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_length = (gd_api . godot_method_bind_get_method) (class_name , "get_length\0" . as_ptr () as * const c_char) ; table . get_slips_on_slope = (gd_api . godot_method_bind_get_method) (class_name , "get_slips_on_slope\0" . as_ptr () as * const c_char) ; table . set_length = (gd_api . godot_method_bind_get_method) (class_name , "set_length\0" . as_ptr () as * const c_char) ; table . set_slips_on_slope = (gd_api . godot_method_bind_get_method) (class_name , "set_slips_on_slope\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:238:21187 [INFO] [stdout] | [INFO] [stdout] 238 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 238 | # [doc = "`core class StyleBoxFlat` inherits `StyleBox` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_styleboxflat.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nStyleBoxFlat inherits methods from:\n - [StyleBox](struct.StyleBox.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct StyleBoxFlat { this : RawObject < Self > , } impl StyleBoxFlat { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = StyleBoxFlatMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "This changes the size of the faded ring. Higher values can be used to achieve a \"blurry\" effect."] # [doc = ""] # [inline] pub fn aa_size (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . get_aa_size ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "The background color of the stylebox."] # [doc = ""] # [inline] pub fn bg_color (& self) -> Color { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . get_bg_color ; let ret = crate :: icalls :: icallptr_color (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "If `true`, the border will fade into the background color."] # [doc = ""] # [inline] pub fn border_blend (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . get_border_blend ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Sets the color of the border."] # [doc = ""] # [inline] pub fn border_color (& self) -> Color { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . get_border_color ; let ret = crate :: icalls :: icallptr_color (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "Border width for the top border."] # [doc = ""] # [inline] pub fn border_width (& self , margin : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . get_border_width ; let ret = crate :: icalls :: icallptr_i64_i64 (method_bind , self . this . sys () . as_ptr () , margin) ; ret as _ } } # [doc = "Returns the smallest border width out of all four borders."] # [doc = ""] # [inline] pub fn get_border_width_min (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . get_border_width_min ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "This sets the amount of vertices used for each corner. Higher values result in rounder corners but take more processing power to compute. When choosing a value, you should take the corner radius ([method set_corner_radius_all]) into account.\nFor corner radii smaller than 10, `4` or `5` should be enough. For corner radii smaller than 30, values between `8` and `12` should be enough.\nA corner detail of `1` will result in chamfered corners instead of rounded corners, which is useful for some artistic effects."] # [doc = ""] # [inline] pub fn corner_detail (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . get_corner_detail ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "The top-right corner's radius. If `0`, the corner is not rounded."] # [doc = ""] # [inline] pub fn corner_radius (& self , corner : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . get_corner_radius ; let ret = crate :: icalls :: icallptr_i64_i64 (method_bind , self . this . sys () . as_ptr () , corner) ; ret as _ } } # [doc = "Expands the stylebox outside of the control rect on the top edge. Useful in combination with [member border_width_top] to draw a border outside the control rect."] # [doc = ""] # [inline] pub fn expand_margin (& self , margin : i64) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . get_expand_margin ; let ret = crate :: icalls :: icallptr_f64_i64 (method_bind , self . this . sys () . as_ptr () , margin) ; ret as _ } } # [doc = "The color of the shadow. This has no effect if [member shadow_size] is lower than 1."] # [doc = ""] # [inline] pub fn shadow_color (& self) -> Color { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . get_shadow_color ; let ret = crate :: icalls :: icallptr_color (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "The shadow offset in pixels. Adjusts the position of the shadow relatively to the stylebox."] # [doc = ""] # [inline] pub fn shadow_offset (& self) -> Vector2 { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . get_shadow_offset ; let ret = crate :: icalls :: icallptr_vec2 (method_bind , self . this . sys () . as_ptr ()) ; mem :: transmute (ret) } } # [doc = "The shadow size in pixels."] # [doc = ""] # [inline] pub fn shadow_size (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . get_shadow_size ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Antialiasing draws a small ring around the edges, which fades to transparency. As a result, edges look much smoother. This is only noticeable when using rounded corners."] # [doc = ""] # [inline] pub fn is_anti_aliased (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . is_anti_aliased ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Toggles drawing of the inner part of the stylebox."] # [doc = ""] # [inline] pub fn is_draw_center_enabled (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . is_draw_center_enabled ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "This changes the size of the faded ring. Higher values can be used to achieve a \"blurry\" effect."] # [doc = ""] # [inline] pub fn set_aa_size (& self , size : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_aa_size ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , size) ; } } # [doc = "Antialiasing draws a small ring around the edges, which fades to transparency. As a result, edges look much smoother. This is only noticeable when using rounded corners."] # [doc = ""] # [inline] pub fn set_anti_aliased (& self , anti_aliased : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_anti_aliased ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , anti_aliased) ; } } # [doc = "The background color of the stylebox."] # [doc = ""] # [inline] pub fn set_bg_color (& self , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_bg_color ; let ret = crate :: icalls :: icallptr_void_color (method_bind , self . this . sys () . as_ptr () , color) ; } } # [doc = "If `true`, the border will fade into the background color."] # [doc = ""] # [inline] pub fn set_border_blend (& self , blend : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_border_blend ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , blend) ; } } # [doc = "Sets the color of the border."] # [doc = ""] # [inline] pub fn set_border_color (& self , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_border_color ; let ret = crate :: icalls :: icallptr_void_color (method_bind , self . this . sys () . as_ptr () , color) ; } } # [doc = "Border width for the top border."] # [doc = ""] # [inline] pub fn set_border_width (& self , margin : i64 , width : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_border_width ; let ret = crate :: icalls :: icallptr_void_i64_i64 (method_bind , self . this . sys () . as_ptr () , margin , width) ; } } # [doc = "Sets the border width to `width` pixels for all margins."] # [doc = ""] # [inline] pub fn set_border_width_all (& self , width : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_border_width_all ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , width) ; } } # [doc = "This sets the amount of vertices used for each corner. Higher values result in rounder corners but take more processing power to compute. When choosing a value, you should take the corner radius ([method set_corner_radius_all]) into account.\nFor corner radii smaller than 10, `4` or `5` should be enough. For corner radii smaller than 30, values between `8` and `12` should be enough.\nA corner detail of `1` will result in chamfered corners instead of rounded corners, which is useful for some artistic effects."] # [doc = ""] # [inline] pub fn set_corner_detail (& self , detail : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_corner_detail ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , detail) ; } } # [doc = "The top-right corner's radius. If `0`, the corner is not rounded."] # [doc = ""] # [inline] pub fn set_corner_radius (& self , corner : i64 , radius : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_corner_radius ; let ret = crate :: icalls :: icallptr_void_i64_i64 (method_bind , self . this . sys () . as_ptr () , corner , radius) ; } } # [doc = "Sets the corner radius to `radius` pixels for all corners."] # [doc = ""] # [inline] pub fn set_corner_radius_all (& self , radius : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_corner_radius_all ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , radius) ; } } # [doc = "Sets the corner radius for each corner to `radius_top_left`, `radius_top_right`, `radius_bottom_right`, and `radius_bottom_left` pixels."] # [doc = ""] # [inline] pub fn set_corner_radius_individual (& self , radius_top_left : i64 , radius_top_right : i64 , radius_bottom_right : i64 , radius_bottom_left : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_corner_radius_individual ; let ret = crate :: icalls :: icallptr_void_i64_i64_i64_i64 (method_bind , self . this . sys () . as_ptr () , radius_top_left , radius_top_right , radius_bottom_right , radius_bottom_left) ; } } # [doc = "Toggles drawing of the inner part of the stylebox."] # [doc = ""] # [inline] pub fn set_draw_center (& self , draw_center : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_draw_center ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , draw_center) ; } } # [doc = "Expands the stylebox outside of the control rect on the top edge. Useful in combination with [member border_width_top] to draw a border outside the control rect."] # [doc = ""] # [inline] pub fn set_expand_margin (& self , margin : i64 , size : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_expand_margin ; let ret = crate :: icalls :: icallptr_void_i64_f64 (method_bind , self . this . sys () . as_ptr () , margin , size) ; } } # [doc = "Sets the expand margin to `size` pixels for all margins."] # [doc = ""] # [inline] pub fn set_expand_margin_all (& self , size : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_expand_margin_all ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , size) ; } } # [doc = "Sets the expand margin for each margin to `size_left`, `size_top`, `size_right`, and `size_bottom` pixels."] # [doc = ""] # [inline] pub fn set_expand_margin_individual (& self , size_left : f64 , size_top : f64 , size_right : f64 , size_bottom : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_expand_margin_individual ; let ret = crate :: icalls :: icallptr_void_f64_f64_f64_f64 (method_bind , self . this . sys () . as_ptr () , size_left , size_top , size_right , size_bottom) ; } } # [doc = "The color of the shadow. This has no effect if [member shadow_size] is lower than 1."] # [doc = ""] # [inline] pub fn set_shadow_color (& self , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_shadow_color ; let ret = crate :: icalls :: icallptr_void_color (method_bind , self . this . sys () . as_ptr () , color) ; } } # [doc = "The shadow offset in pixels. Adjusts the position of the shadow relatively to the stylebox."] # [doc = ""] # [inline] pub fn set_shadow_offset (& self , offset : Vector2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_shadow_offset ; let ret = crate :: icalls :: icallptr_void_vec2 (method_bind , self . this . sys () . as_ptr () , offset) ; } } # [doc = "The shadow size in pixels."] # [doc = ""] # [inline] pub fn set_shadow_size (& self , size : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = StyleBoxFlatMethodTable :: get (get_api ()) . set_shadow_size ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , size) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for StyleBoxFlat { } unsafe impl GodotObject for StyleBoxFlat { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "StyleBoxFlat" } } impl std :: ops :: Deref for StyleBoxFlat { type Target = crate :: generated :: style_box :: StyleBox ; # [inline] fn deref (& self) -> & crate :: generated :: style_box :: StyleBox { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for StyleBoxFlat { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: style_box :: StyleBox { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: style_box :: StyleBox > for StyleBoxFlat { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for StyleBoxFlat { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for StyleBoxFlat { } unsafe impl SubClass < crate :: generated :: object :: Object > for StyleBoxFlat { } impl Instanciable for StyleBoxFlat { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { StyleBoxFlat :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct StyleBoxFlatMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_aa_size : * mut sys :: godot_method_bind , pub get_bg_color : * mut sys :: godot_method_bind , pub get_border_blend : * mut sys :: godot_method_bind , pub get_border_color : * mut sys :: godot_method_bind , pub get_border_width : * mut sys :: godot_method_bind , pub get_border_width_min : * mut sys :: godot_method_bind , pub get_corner_detail : * mut sys :: godot_method_bind , pub get_corner_radius : * mut sys :: godot_method_bind , pub get_expand_margin : * mut sys :: godot_method_bind , pub get_shadow_color : * mut sys :: godot_method_bind , pub get_shadow_offset : * mut sys :: godot_method_bind , pub get_shadow_size : * mut sys :: godot_method_bind , pub is_anti_aliased : * mut sys :: godot_method_bind , pub is_draw_center_enabled : * mut sys :: godot_method_bind , pub set_aa_size : * mut sys :: godot_method_bind , pub set_anti_aliased : * mut sys :: godot_method_bind , pub set_bg_color : * mut sys :: godot_method_bind , pub set_border_blend : * mut sys :: godot_method_bind , pub set_border_color : * mut sys :: godot_method_bind , pub set_border_width : * mut sys :: godot_method_bind , pub set_border_width_all : * mut sys :: godot_method_bind , pub set_corner_detail : * mut sys :: godot_method_bind , pub set_corner_radius : * mut sys :: godot_method_bind , pub set_corner_radius_all : * mut sys :: godot_method_bind , pub set_corner_radius_individual : * mut sys :: godot_method_bind , pub set_draw_center : * mut sys :: godot_method_bind , pub set_expand_margin : * mut sys :: godot_method_bind , pub set_expand_margin_all : * mut sys :: godot_method_bind , pub set_expand_margin_individual : * mut sys :: godot_method_bind , pub set_shadow_color : * mut sys :: godot_method_bind , pub set_shadow_offset : * mut sys :: godot_method_bind , pub set_shadow_size : * mut sys :: godot_method_bind } impl StyleBoxFlatMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : StyleBoxFlatMethodTable = StyleBoxFlatMethodTable { class_constructor : None , get_aa_size : 0 as * mut sys :: godot_method_bind , get_bg_color : 0 as * mut sys :: godot_method_bind , get_border_blend : 0 as * mut sys :: godot_method_bind , get_border_color : 0 as * mut sys :: godot_method_bind , get_border_width : 0 as * mut sys :: godot_method_bind , get_border_width_min : 0 as * mut sys :: godot_method_bind , get_corner_detail : 0 as * mut sys :: godot_method_bind , get_corner_radius : 0 as * mut sys :: godot_method_bind , get_expand_margin : 0 as * mut sys :: godot_method_bind , get_shadow_color : 0 as * mut sys :: godot_method_bind , get_shadow_offset : 0 as * mut sys :: godot_method_bind , get_shadow_size : 0 as * mut sys :: godot_method_bind , is_anti_aliased : 0 as * mut sys :: godot_method_bind , is_draw_center_enabled : 0 as * mut sys :: godot_method_bind , set_aa_size : 0 as * mut sys :: godot_method_bind , set_anti_aliased : 0 as * mut sys :: godot_method_bind , set_bg_color : 0 as * mut sys :: godot_method_bind , set_border_blend : 0 as * mut sys :: godot_method_bind , set_border_color : 0 as * mut sys :: godot_method_bind , set_border_width : 0 as * mut sys :: godot_method_bind , set_border_width_all : 0 as * mut sys :: godot_method_bind , set_corner_detail : 0 as * mut sys :: godot_method_bind , set_corner_radius : 0 as * mut sys :: godot_method_bind , set_corner_radius_all : 0 as * mut sys :: godot_method_bind , set_corner_radius_individual : 0 as * mut sys :: godot_method_bind , set_draw_center : 0 as * mut sys :: godot_method_bind , set_expand_margin : 0 as * mut sys :: godot_method_bind , set_expand_margin_all : 0 as * mut sys :: godot_method_bind , set_expand_margin_individual : 0 as * mut sys :: godot_method_bind , set_shadow_color : 0 as * mut sys :: godot_method_bind , set_shadow_offset : 0 as * mut sys :: godot_method_bind , set_shadow_size : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { StyleBoxFlatMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "StyleBoxFlat\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_aa_size = (gd_api . godot_method_bind_get_method) (class_name , "get_aa_size\0" . as_ptr () as * const c_char) ; table . get_bg_color = (gd_api . godot_method_bind_get_method) (class_name , "get_bg_color\0" . as_ptr () as * const c_char) ; table . get_border_blend = (gd_api . godot_method_bind_get_method) (class_name , "get_border_blend\0" . as_ptr () as * const c_char) ; table . get_border_color = (gd_api . godot_method_bind_get_method) (class_name , "get_border_color\0" . as_ptr () as * const c_char) ; table . get_border_width = (gd_api . godot_method_bind_get_method) (class_name , "get_border_width\0" . as_ptr () as * const c_char) ; table . get_border_width_min = (gd_api . godot_method_bind_get_method) (class_name , "get_border_width_min\0" . as_ptr () as * const c_char) ; table . get_corner_detail = (gd_api . godot_method_bind_get_method) (class_name , "get_corner_detail\0" . as_ptr () as * const c_char) ; table . get_corner_radius = (gd_api . godot_method_bind_get_method) (class_name , "get_corner_radius\0" . as_ptr () as * const c_char) ; table . get_expand_margin = (gd_api . godot_method_bind_get_method) (class_name , "get_expand_margin\0" . as_ptr () as * const c_char) ; table . get_shadow_color = (gd_api . godot_method_bind_get_method) (class_name , "get_shadow_color\0" . as_ptr () as * const c_char) ; table . get_shadow_offset = (gd_api . godot_method_bind_get_method) (class_name , "get_shadow_offset\0" . as_ptr () as * const c_char) ; table . get_shadow_size = (gd_api . godot_method_bind_get_method) (class_name , "get_shadow_size\0" . as_ptr () as * const c_char) ; table . is_anti_aliased = (gd_api . godot_method_bind_get_method) (class_name , "is_anti_aliased\0" . as_ptr () as * const c_char) ; table . is_draw_center_enabled = (gd_api . godot_method_bind_get_method) (class_name , "is_draw_center_enabled\0" . as_ptr () as * const c_char) ; table . set_aa_size = (gd_api . godot_method_bind_get_method) (class_name , "set_aa_size\0" . as_ptr () as * const c_char) ; table . set_anti_aliased = (gd_api . godot_method_bind_get_method) (class_name , "set_anti_aliased\0" . as_ptr () as * const c_char) ; table . set_bg_color = (gd_api . godot_method_bind_get_method) (class_name , "set_bg_color\0" . as_ptr () as * const c_char) ; table . set_border_blend = (gd_api . godot_method_bind_get_method) (class_name , "set_border_blend\0" . as_ptr () as * const c_char) ; table . set_border_color = (gd_api . godot_method_bind_get_method) (class_name , "set_border_color\0" . as_ptr () as * const c_char) ; table . set_border_width = (gd_api . godot_method_bind_get_method) (class_name , "set_border_width\0" . as_ptr () as * const c_char) ; table . set_border_width_all = (gd_api . godot_method_bind_get_method) (class_name , "set_border_width_all\0" . as_ptr () as * const c_char) ; table . set_corner_detail = (gd_api . godot_method_bind_get_method) (class_name , "set_corner_detail\0" . as_ptr () as * const c_char) ; table . set_corner_radius = (gd_api . godot_method_bind_get_method) (class_name , "set_corner_radius\0" . as_ptr () as * const c_char) ; table . set_corner_radius_all = (gd_api . godot_method_bind_get_method) (class_name , "set_corner_radius_all\0" . as_ptr () as * const c_char) ; table . set_corner_radius_individual = (gd_api . godot_method_bind_get_method) (class_name , "set_corner_radius_individual\0" . as_ptr () as * const c_char) ; table . set_draw_center = (gd_api . godot_method_bind_get_method) (class_name , "set_draw_center\0" . as_ptr () as * const c_char) ; table . set_expand_margin = (gd_api . godot_method_bind_get_method) (class_name , "set_expand_margin\0" . as_ptr () as * const c_char) ; table . set_expand_margin_all = (gd_api . godot_method_bind_get_method) (class_name , "set_expand_margin_all\0" . as_ptr () as * const c_char) ; table . set_expand_margin_individual = (gd_api . godot_method_bind_get_method) (class_name , "set_expand_margin_individual\0" . as_ptr () as * const c_char) ; table . set_shadow_color = (gd_api . godot_method_bind_get_method) (class_name , "set_shadow_color\0" . as_ptr () as * const c_char) ; table . set_shadow_offset = (gd_api . godot_method_bind_get_method) (class_name , "set_shadow_offset\0" . as_ptr () as * const c_char) ; table . set_shadow_size = (gd_api . godot_method_bind_get_method) (class_name , "set_shadow_size\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:244:5460 [INFO] [stdout] | [INFO] [stdout] 244 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 244 | # [doc = "`core class VisualShaderNodeExpression` inherits `VisualShaderNodeGroupBase` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualshadernodeexpression.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nVisualShaderNodeExpression inherits methods from:\n - [VisualShaderNodeGroupBase](struct.VisualShaderNodeGroupBase.html)\n - [VisualShaderNode](struct.VisualShaderNode.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualShaderNodeExpression { this : RawObject < Self > , } impl VisualShaderNodeExpression { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisualShaderNodeExpressionMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "An expression in Godot Shading Language, which will be injected at the start of the graph's matching shader function (`vertex`, `fragment`, or `light`), and thus cannot be used to declare functions, varyings, uniforms, or global constants."] # [doc = ""] # [inline] pub fn expression (& self) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualShaderNodeExpressionMethodTable :: get (get_api ()) . get_expression ; let ret = crate :: icalls :: icallptr_str (method_bind , self . this . sys () . as_ptr ()) ; GodotString :: from_sys (ret) } } # [doc = "An expression in Godot Shading Language, which will be injected at the start of the graph's matching shader function (`vertex`, `fragment`, or `light`), and thus cannot be used to declare functions, varyings, uniforms, or global constants."] # [doc = ""] # [inline] pub fn set_expression (& self , expression : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualShaderNodeExpressionMethodTable :: get (get_api ()) . set_expression ; let ret = crate :: icalls :: icallptr_void_str (method_bind , self . this . sys () . as_ptr () , expression . into ()) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualShaderNodeExpression { } unsafe impl GodotObject for VisualShaderNodeExpression { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "VisualShaderNodeExpression" } } impl std :: ops :: Deref for VisualShaderNodeExpression { type Target = crate :: generated :: visual_shader_node_group_base :: VisualShaderNodeGroupBase ; # [inline] fn deref (& self) -> & crate :: generated :: visual_shader_node_group_base :: VisualShaderNodeGroupBase { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualShaderNodeExpression { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: visual_shader_node_group_base :: VisualShaderNodeGroupBase { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: visual_shader_node_group_base :: VisualShaderNodeGroupBase > for VisualShaderNodeExpression { } unsafe impl SubClass < crate :: generated :: visual_shader_node :: VisualShaderNode > for VisualShaderNodeExpression { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for VisualShaderNodeExpression { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for VisualShaderNodeExpression { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualShaderNodeExpression { } impl Instanciable for VisualShaderNodeExpression { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisualShaderNodeExpression :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualShaderNodeExpressionMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_expression : * mut sys :: godot_method_bind , pub set_expression : * mut sys :: godot_method_bind } impl VisualShaderNodeExpressionMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualShaderNodeExpressionMethodTable = VisualShaderNodeExpressionMethodTable { class_constructor : None , get_expression : 0 as * mut sys :: godot_method_bind , set_expression : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualShaderNodeExpressionMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualShaderNodeExpression\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_expression = (gd_api . godot_method_bind_get_method) (class_name , "get_expression\0" . as_ptr () as * const c_char) ; table . set_expression = (gd_api . godot_method_bind_get_method) (class_name , "set_expression\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:250:3619 [INFO] [stdout] | [INFO] [stdout] 250 | ...dTable { class_constructor : None , } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 250 | # [doc = "`core class AudioEffectEQ6` inherits `AudioEffectEQ` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_audioeffecteq6.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nAudioEffectEQ6 inherits methods from:\n - [AudioEffectEQ](struct.AudioEffectEQ.html)\n - [AudioEffect](struct.AudioEffect.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct AudioEffectEQ6 { this : RawObject < Self > , } impl AudioEffectEQ6 { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = AudioEffectEQ6MethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } } impl gdnative_core :: private :: godot_object :: Sealed for AudioEffectEQ6 { } unsafe impl GodotObject for AudioEffectEQ6 { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "AudioEffectEQ6" } } impl std :: ops :: Deref for AudioEffectEQ6 { type Target = crate :: generated :: audio_effect_eq :: AudioEffectEQ ; # [inline] fn deref (& self) -> & crate :: generated :: audio_effect_eq :: AudioEffectEQ { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for AudioEffectEQ6 { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: audio_effect_eq :: AudioEffectEQ { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: audio_effect_eq :: AudioEffectEQ > for AudioEffectEQ6 { } unsafe impl SubClass < crate :: generated :: audio_effect :: AudioEffect > for AudioEffectEQ6 { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for AudioEffectEQ6 { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for AudioEffectEQ6 { } unsafe impl SubClass < crate :: generated :: object :: Object > for AudioEffectEQ6 { } impl Instanciable for AudioEffectEQ6 { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { AudioEffectEQ6 :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct AudioEffectEQ6MethodTable { pub class_constructor : sys :: godot_class_constructor , } impl AudioEffectEQ6MethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : AudioEffectEQ6MethodTable = AudioEffectEQ6MethodTable { class_constructor : None , } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { AudioEffectEQ6MethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "AudioEffectEQ6\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:256:4847 [INFO] [stdout] | [INFO] [stdout] 256 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 256 | # [doc = "`core class VisualShaderNodeBooleanConstant` inherits `VisualShaderNode` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualshadernodebooleanconstant.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nVisualShaderNodeBooleanConstant inherits methods from:\n - [VisualShaderNode](struct.VisualShaderNode.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualShaderNodeBooleanConstant { this : RawObject < Self > , } impl VisualShaderNodeBooleanConstant { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisualShaderNodeBooleanConstantMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "A boolean constant which represents a state of this node."] # [doc = ""] # [inline] pub fn constant (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualShaderNodeBooleanConstantMethodTable :: get (get_api ()) . get_constant ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "A boolean constant which represents a state of this node."] # [doc = ""] # [inline] pub fn set_constant (& self , value : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualShaderNodeBooleanConstantMethodTable :: get (get_api ()) . set_constant ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , value) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualShaderNodeBooleanConstant { } unsafe impl GodotObject for VisualShaderNodeBooleanConstant { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "VisualShaderNodeBooleanConstant" } } impl std :: ops :: Deref for VisualShaderNodeBooleanConstant { type Target = crate :: generated :: visual_shader_node :: VisualShaderNode ; # [inline] fn deref (& self) -> & crate :: generated :: visual_shader_node :: VisualShaderNode { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualShaderNodeBooleanConstant { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: visual_shader_node :: VisualShaderNode { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: visual_shader_node :: VisualShaderNode > for VisualShaderNodeBooleanConstant { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for VisualShaderNodeBooleanConstant { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for VisualShaderNodeBooleanConstant { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualShaderNodeBooleanConstant { } impl Instanciable for VisualShaderNodeBooleanConstant { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisualShaderNodeBooleanConstant :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualShaderNodeBooleanConstantMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_constant : * mut sys :: godot_method_bind , pub set_constant : * mut sys :: godot_method_bind } impl VisualShaderNodeBooleanConstantMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualShaderNodeBooleanConstantMethodTable = VisualShaderNodeBooleanConstantMethodTable { class_constructor : None , get_constant : 0 as * mut sys :: godot_method_bind , set_constant : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualShaderNodeBooleanConstantMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualShaderNodeBooleanConstant\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_constant = (gd_api . godot_method_bind_get_method) (class_name , "get_constant\0" . as_ptr () as * const c_char) ; table . set_constant = (gd_api . godot_method_bind_get_method) (class_name , "set_constant\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:262:8228 [INFO] [stdout] | [INFO] [stdout] 262 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 262 | # [doc = "`core class VisualShaderNodeVectorFunc` inherits `VisualShaderNode` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualshadernodevectorfunc.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nVisualShaderNodeVectorFunc inherits methods from:\n - [VisualShaderNode](struct.VisualShaderNode.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualShaderNodeVectorFunc { this : RawObject < Self > , } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct Function (pub i64) ; impl Function { pub const NORMALIZE : Function = Function (0i64) ; pub const SATURATE : Function = Function (1i64) ; pub const NEGATE : Function = Function (2i64) ; pub const RECIPROCAL : Function = Function (3i64) ; pub const RGB2HSV : Function = Function (4i64) ; pub const HSV2RGB : Function = Function (5i64) ; pub const ABS : Function = Function (6i64) ; pub const ACOS : Function = Function (7i64) ; pub const ACOSH : Function = Function (8i64) ; pub const ASIN : Function = Function (9i64) ; pub const ASINH : Function = Function (10i64) ; pub const ATAN : Function = Function (11i64) ; pub const ATANH : Function = Function (12i64) ; pub const CEIL : Function = Function (13i64) ; pub const COS : Function = Function (14i64) ; pub const COSH : Function = Function (15i64) ; pub const DEGREES : Function = Function (16i64) ; pub const EXP : Function = Function (17i64) ; pub const EXP2 : Function = Function (18i64) ; pub const FLOOR : Function = Function (19i64) ; pub const FRAC : Function = Function (20i64) ; pub const INVERSE_SQRT : Function = Function (21i64) ; pub const LOG : Function = Function (22i64) ; pub const LOG2 : Function = Function (23i64) ; pub const RADIANS : Function = Function (24i64) ; pub const ROUND : Function = Function (25i64) ; pub const ROUNDEVEN : Function = Function (26i64) ; pub const SIGN : Function = Function (27i64) ; pub const SIN : Function = Function (28i64) ; pub const SINH : Function = Function (29i64) ; pub const SQRT : Function = Function (30i64) ; pub const TAN : Function = Function (31i64) ; pub const TANH : Function = Function (32i64) ; pub const TRUNC : Function = Function (33i64) ; pub const ONEMINUS : Function = Function (34i64) ; } impl From < i64 > for Function { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < Function > for i64 { # [inline] fn from (v : Function) -> Self { v . 0 } } # [doc = "Constants"] # [allow (non_upper_case_globals)] impl VisualShaderNodeVectorFunc { pub const FUNC_ABS : i64 = 6i64 ; pub const FUNC_ACOS : i64 = 7i64 ; pub const FUNC_ACOSH : i64 = 8i64 ; pub const FUNC_ASIN : i64 = 9i64 ; pub const FUNC_ASINH : i64 = 10i64 ; pub const FUNC_ATAN : i64 = 11i64 ; pub const FUNC_ATANH : i64 = 12i64 ; pub const FUNC_CEIL : i64 = 13i64 ; pub const FUNC_COS : i64 = 14i64 ; pub const FUNC_COSH : i64 = 15i64 ; pub const FUNC_DEGREES : i64 = 16i64 ; pub const FUNC_EXP : i64 = 17i64 ; pub const FUNC_EXP2 : i64 = 18i64 ; pub const FUNC_FLOOR : i64 = 19i64 ; pub const FUNC_FRAC : i64 = 20i64 ; pub const FUNC_HSV2RGB : i64 = 5i64 ; pub const FUNC_INVERSE_SQRT : i64 = 21i64 ; pub const FUNC_LOG : i64 = 22i64 ; pub const FUNC_LOG2 : i64 = 23i64 ; pub const FUNC_NEGATE : i64 = 2i64 ; pub const FUNC_NORMALIZE : i64 = 0i64 ; pub const FUNC_ONEMINUS : i64 = 34i64 ; pub const FUNC_RADIANS : i64 = 24i64 ; pub const FUNC_RECIPROCAL : i64 = 3i64 ; pub const FUNC_RGB2HSV : i64 = 4i64 ; pub const FUNC_ROUND : i64 = 25i64 ; pub const FUNC_ROUNDEVEN : i64 = 26i64 ; pub const FUNC_SATURATE : i64 = 1i64 ; pub const FUNC_SIGN : i64 = 27i64 ; pub const FUNC_SIN : i64 = 28i64 ; pub const FUNC_SINH : i64 = 29i64 ; pub const FUNC_SQRT : i64 = 30i64 ; pub const FUNC_TAN : i64 = 31i64 ; pub const FUNC_TANH : i64 = 32i64 ; pub const FUNC_TRUNC : i64 = 33i64 ; } impl VisualShaderNodeVectorFunc { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisualShaderNodeVectorFuncMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "The function to be performed. See [enum Function] for options."] # [doc = ""] # [inline] pub fn function (& self) -> crate :: generated :: visual_shader_node_vector_func :: Function { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualShaderNodeVectorFuncMethodTable :: get (get_api ()) . get_function ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; crate :: generated :: visual_shader_node_vector_func :: Function (ret) } } # [doc = "The function to be performed. See [enum Function] for options."] # [doc = ""] # [inline] pub fn set_function (& self , func : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = VisualShaderNodeVectorFuncMethodTable :: get (get_api ()) . set_function ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , func) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualShaderNodeVectorFunc { } unsafe impl GodotObject for VisualShaderNodeVectorFunc { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "VisualShaderNodeVectorFunc" } } impl std :: ops :: Deref for VisualShaderNodeVectorFunc { type Target = crate :: generated :: visual_shader_node :: VisualShaderNode ; # [inline] fn deref (& self) -> & crate :: generated :: visual_shader_node :: VisualShaderNode { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualShaderNodeVectorFunc { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: visual_shader_node :: VisualShaderNode { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: visual_shader_node :: VisualShaderNode > for VisualShaderNodeVectorFunc { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for VisualShaderNodeVectorFunc { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for VisualShaderNodeVectorFunc { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualShaderNodeVectorFunc { } impl Instanciable for VisualShaderNodeVectorFunc { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisualShaderNodeVectorFunc :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualShaderNodeVectorFuncMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_function : * mut sys :: godot_method_bind , pub set_function : * mut sys :: godot_method_bind } impl VisualShaderNodeVectorFuncMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualShaderNodeVectorFuncMethodTable = VisualShaderNodeVectorFuncMethodTable { class_constructor : None , get_function : 0 as * mut sys :: godot_method_bind , set_function : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualShaderNodeVectorFuncMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualShaderNodeVectorFunc\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_function = (gd_api . godot_method_bind_get_method) (class_name , "get_function\0" . as_ptr () as * const c_char) ; table . set_function = (gd_api . godot_method_bind_get_method) (class_name , "set_function\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:268:21553 [INFO] [stdout] | [INFO] [stdout] 268 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 268 | # [doc = "`core class Curve3D` inherits `Resource` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_curve3d.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nCurve3D inherits methods from:\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct Curve3D { this : RawObject < Self > , } impl Curve3D { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = Curve3DMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "Adds a point to a curve at `position`, with control points `in` and `out`.\nIf `at_position` is given, the point is inserted before the point number `at_position`, moving that point (and every point after) after the inserted point. If `at_position` is not given, or is an illegal value (`at_position <0` or `at_position >= [method get_point_count]`), the point will be appended at the end of the point list.\n# Default Arguments\n* `in` - `Vector3( 0, 0, 0 )`\n* `out` - `Vector3( 0, 0, 0 )`\n* `at_position` - `-1`"] # [doc = ""] # [inline] pub fn add_point (& self , position : Vector3 , _in : Vector3 , out : Vector3 , at_position : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . add_point ; let ret = crate :: icalls :: icallptr_void_vec3_vec3_vec3_i64 (method_bind , self . this . sys () . as_ptr () , position , _in , out , at_position) ; } } # [doc = "Removes all points from the curve."] # [doc = ""] # [inline] pub fn clear_points (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . clear_points ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = "The distance in meters between two adjacent cached points. Changing it forces the cache to be recomputed the next time the [method get_baked_points] or [method get_baked_length] function is called. The smaller the distance, the more points in the cache and the more memory it will consume, so use with care."] # [doc = ""] # [inline] pub fn bake_interval (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . get_bake_interval ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns the total length of the curve, based on the cached points. Given enough density (see [member bake_interval]), it should be approximate enough."] # [doc = ""] # [inline] pub fn get_baked_length (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . get_baked_length ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns the cache of points as a [PoolVector3Array]."] # [doc = ""] # [inline] pub fn get_baked_points (& self) -> Vector3Array { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . get_baked_points ; let ret = crate :: icalls :: icallptr_vec3arr (method_bind , self . this . sys () . as_ptr ()) ; Vector3Array :: from_sys (ret) } } # [doc = "Returns the cache of tilts as a [PoolRealArray]."] # [doc = ""] # [inline] pub fn get_baked_tilts (& self) -> Float32Array { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . get_baked_tilts ; let ret = crate :: icalls :: icallptr_f32arr (method_bind , self . this . sys () . as_ptr ()) ; Float32Array :: from_sys (ret) } } # [doc = "Returns the cache of up vectors as a [PoolVector3Array].\nIf [member up_vector_enabled] is `false`, the cache will be empty."] # [doc = ""] # [inline] pub fn get_baked_up_vectors (& self) -> Vector3Array { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . get_baked_up_vectors ; let ret = crate :: icalls :: icallptr_vec3arr (method_bind , self . this . sys () . as_ptr ()) ; Vector3Array :: from_sys (ret) } } # [doc = "Returns the closest offset to `to_point`. This offset is meant to be used in [method interpolate_baked] or [method interpolate_baked_up_vector].\n`to_point` must be in this curve's local space."] # [doc = ""] # [inline] pub fn get_closest_offset (& self , to_point : Vector3) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . get_closest_offset ; let ret = crate :: icalls :: icallptr_f64_vec3 (method_bind , self . this . sys () . as_ptr () , to_point) ; ret as _ } } # [doc = "Returns the closest point (in curve's local space) to `to_point`.\n`to_point` must be in this curve's local space."] # [doc = ""] # [inline] pub fn get_closest_point (& self , to_point : Vector3) -> Vector3 { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . get_closest_point ; let ret = crate :: icalls :: icallptr_vec3_vec3 (method_bind , self . this . sys () . as_ptr () , to_point) ; mem :: transmute (ret) } } # [doc = "Returns the number of points describing the curve."] # [doc = ""] # [inline] pub fn get_point_count (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . get_point_count ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns the position of the control point leading to the vertex `idx`. If the index is out of bounds, the function sends an error to the console, and returns `(0, 0, 0)`."] # [doc = ""] # [inline] pub fn get_point_in (& self , idx : i64) -> Vector3 { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . get_point_in ; let ret = crate :: icalls :: icallptr_vec3_i64 (method_bind , self . this . sys () . as_ptr () , idx) ; mem :: transmute (ret) } } # [doc = "Returns the position of the control point leading out of the vertex `idx`. If the index is out of bounds, the function sends an error to the console, and returns `(0, 0, 0)`."] # [doc = ""] # [inline] pub fn get_point_out (& self , idx : i64) -> Vector3 { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . get_point_out ; let ret = crate :: icalls :: icallptr_vec3_i64 (method_bind , self . this . sys () . as_ptr () , idx) ; mem :: transmute (ret) } } # [doc = "Returns the position of the vertex `idx`. If the index is out of bounds, the function sends an error to the console, and returns `(0, 0, 0)`."] # [doc = ""] # [inline] pub fn get_point_position (& self , idx : i64) -> Vector3 { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . get_point_position ; let ret = crate :: icalls :: icallptr_vec3_i64 (method_bind , self . this . sys () . as_ptr () , idx) ; mem :: transmute (ret) } } # [doc = "Returns the tilt angle in radians for the point `idx`. If the index is out of bounds, the function sends an error to the console, and returns `0`."] # [doc = ""] # [inline] pub fn get_point_tilt (& self , idx : i64) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . get_point_tilt ; let ret = crate :: icalls :: icallptr_f64_i64 (method_bind , self . this . sys () . as_ptr () , idx) ; ret as _ } } # [doc = "Returns the position between the vertex `idx` and the vertex `idx + 1`, where `t` controls if the point is the first vertex (`t = 0.0`), the last vertex (`t = 1.0`), or in between. Values of `t` outside the range (`0.0 >= t <=1`) give strange, but predictable results.\nIf `idx` is out of bounds it is truncated to the first or last vertex, and `t` is ignored. If the curve has no points, the function sends an error to the console, and returns `(0, 0, 0)`."] # [doc = ""] # [inline] pub fn interpolate (& self , idx : i64 , t : f64) -> Vector3 { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . interpolate ; let ret = crate :: icalls :: icallptr_vec3_i64_f64 (method_bind , self . this . sys () . as_ptr () , idx , t) ; mem :: transmute (ret) } } # [doc = "Returns a point within the curve at position `offset`, where `offset` is measured as a pixel distance along the curve.\nTo do that, it finds the two cached points where the `offset` lies between, then interpolates the values. This interpolation is cubic if `cubic` is set to `true`, or linear if set to `false`.\nCubic interpolation tends to follow the curves better, but linear is faster (and often, precise enough).\n# Default Arguments\n* `cubic` - `false`"] # [doc = ""] # [inline] pub fn interpolate_baked (& self , offset : f64 , cubic : bool) -> Vector3 { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . interpolate_baked ; let ret = crate :: icalls :: icallptr_vec3_f64_bool (method_bind , self . this . sys () . as_ptr () , offset , cubic) ; mem :: transmute (ret) } } # [doc = "Returns an up vector within the curve at position `offset`, where `offset` is measured as a distance in 3D units along the curve.\nTo do that, it finds the two cached up vectors where the `offset` lies between, then interpolates the values. If `apply_tilt` is `true`, an interpolated tilt is applied to the interpolated up vector.\nIf the curve has no up vectors, the function sends an error to the console, and returns `(0, 1, 0)`.\n# Default Arguments\n* `apply_tilt` - `false`"] # [doc = ""] # [inline] pub fn interpolate_baked_up_vector (& self , offset : f64 , apply_tilt : bool) -> Vector3 { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . interpolate_baked_up_vector ; let ret = crate :: icalls :: icallptr_vec3_f64_bool (method_bind , self . this . sys () . as_ptr () , offset , apply_tilt) ; mem :: transmute (ret) } } # [doc = "Returns the position at the vertex `fofs`. It calls [method interpolate] using the integer part of `fofs` as `idx`, and its fractional part as `t`."] # [doc = ""] # [inline] pub fn interpolatef (& self , fofs : f64) -> Vector3 { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . interpolatef ; let ret = crate :: icalls :: icallptr_vec3_f64 (method_bind , self . this . sys () . as_ptr () , fofs) ; mem :: transmute (ret) } } # [doc = "If `true`, the curve will bake up vectors used for orientation. This is used when [member PathFollow.rotation_mode] is set to [constant PathFollow.ROTATION_ORIENTED]. Changing it forces the cache to be recomputed."] # [doc = ""] # [inline] pub fn is_up_vector_enabled (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . is_up_vector_enabled ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Deletes the point `idx` from the curve. Sends an error to the console if `idx` is out of bounds."] # [doc = ""] # [inline] pub fn remove_point (& self , idx : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . remove_point ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , idx) ; } } # [doc = "The distance in meters between two adjacent cached points. Changing it forces the cache to be recomputed the next time the [method get_baked_points] or [method get_baked_length] function is called. The smaller the distance, the more points in the cache and the more memory it will consume, so use with care."] # [doc = ""] # [inline] pub fn set_bake_interval (& self , distance : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . set_bake_interval ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , distance) ; } } # [doc = "Sets the position of the control point leading to the vertex `idx`. If the index is out of bounds, the function sends an error to the console."] # [doc = ""] # [inline] pub fn set_point_in (& self , idx : i64 , position : Vector3) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . set_point_in ; let ret = crate :: icalls :: icallptr_void_i64_vec3 (method_bind , self . this . sys () . as_ptr () , idx , position) ; } } # [doc = "Sets the position of the control point leading out of the vertex `idx`. If the index is out of bounds, the function sends an error to the console."] # [doc = ""] # [inline] pub fn set_point_out (& self , idx : i64 , position : Vector3) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . set_point_out ; let ret = crate :: icalls :: icallptr_void_i64_vec3 (method_bind , self . this . sys () . as_ptr () , idx , position) ; } } # [doc = "Sets the position for the vertex `idx`. If the index is out of bounds, the function sends an error to the console."] # [doc = ""] # [inline] pub fn set_point_position (& self , idx : i64 , position : Vector3) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . set_point_position ; let ret = crate :: icalls :: icallptr_void_i64_vec3 (method_bind , self . this . sys () . as_ptr () , idx , position) ; } } # [doc = "Sets the tilt angle in radians for the point `idx`. If the index is out of bounds, the function sends an error to the console.\nThe tilt controls the rotation along the look-at axis an object traveling the path would have. In the case of a curve controlling a [PathFollow], this tilt is an offset over the natural tilt the [PathFollow] calculates."] # [doc = ""] # [inline] pub fn set_point_tilt (& self , idx : i64 , tilt : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . set_point_tilt ; let ret = crate :: icalls :: icallptr_void_i64_f64 (method_bind , self . this . sys () . as_ptr () , idx , tilt) ; } } # [doc = "If `true`, the curve will bake up vectors used for orientation. This is used when [member PathFollow.rotation_mode] is set to [constant PathFollow.ROTATION_ORIENTED]. Changing it forces the cache to be recomputed."] # [doc = ""] # [inline] pub fn set_up_vector_enabled (& self , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . set_up_vector_enabled ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , enable) ; } } # [doc = "Returns a list of points along the curve, with a curvature controlled point density. That is, the curvier parts will have more points than the straighter parts.\nThis approximation makes straight segments between each point, then subdivides those segments until the resulting shape is similar enough.\n`max_stages` controls how many subdivisions a curve segment may face before it is considered approximate enough. Each subdivision splits the segment in half, so the default 5 stages may mean up to 32 subdivisions per curve segment. Increase with care!\n`tolerance_degrees` controls how many degrees the midpoint of a segment may deviate from the real curve, before the segment has to be subdivided.\n# Default Arguments\n* `max_stages` - `5`\n* `tolerance_degrees` - `4`"] # [doc = ""] # [inline] pub fn tessellate (& self , max_stages : i64 , tolerance_degrees : f64) -> Vector3Array { unsafe { let method_bind : * mut sys :: godot_method_bind = Curve3DMethodTable :: get (get_api ()) . tessellate ; let ret = crate :: icalls :: icallptr_vec3arr_i64_f64 (method_bind , self . this . sys () . as_ptr () , max_stages , tolerance_degrees) ; Vector3Array :: from_sys (ret) } } } impl gdnative_core :: private :: godot_object :: Sealed for Curve3D { } unsafe impl GodotObject for Curve3D { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "Curve3D" } } impl std :: ops :: Deref for Curve3D { type Target = crate :: generated :: resource :: Resource ; # [inline] fn deref (& self) -> & crate :: generated :: resource :: Resource { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for Curve3D { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: resource :: Resource { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: resource :: Resource > for Curve3D { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for Curve3D { } unsafe impl SubClass < crate :: generated :: object :: Object > for Curve3D { } impl Instanciable for Curve3D { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { Curve3D :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct Curve3DMethodTable { pub class_constructor : sys :: godot_class_constructor , pub add_point : * mut sys :: godot_method_bind , pub clear_points : * mut sys :: godot_method_bind , pub get_bake_interval : * mut sys :: godot_method_bind , pub get_baked_length : * mut sys :: godot_method_bind , pub get_baked_points : * mut sys :: godot_method_bind , pub get_baked_tilts : * mut sys :: godot_method_bind , pub get_baked_up_vectors : * mut sys :: godot_method_bind , pub get_closest_offset : * mut sys :: godot_method_bind , pub get_closest_point : * mut sys :: godot_method_bind , pub get_point_count : * mut sys :: godot_method_bind , pub get_point_in : * mut sys :: godot_method_bind , pub get_point_out : * mut sys :: godot_method_bind , pub get_point_position : * mut sys :: godot_method_bind , pub get_point_tilt : * mut sys :: godot_method_bind , pub interpolate : * mut sys :: godot_method_bind , pub interpolate_baked : * mut sys :: godot_method_bind , pub interpolate_baked_up_vector : * mut sys :: godot_method_bind , pub interpolatef : * mut sys :: godot_method_bind , pub is_up_vector_enabled : * mut sys :: godot_method_bind , pub remove_point : * mut sys :: godot_method_bind , pub set_bake_interval : * mut sys :: godot_method_bind , pub set_point_in : * mut sys :: godot_method_bind , pub set_point_out : * mut sys :: godot_method_bind , pub set_point_position : * mut sys :: godot_method_bind , pub set_point_tilt : * mut sys :: godot_method_bind , pub set_up_vector_enabled : * mut sys :: godot_method_bind , pub tessellate : * mut sys :: godot_method_bind } impl Curve3DMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : Curve3DMethodTable = Curve3DMethodTable { class_constructor : None , add_point : 0 as * mut sys :: godot_method_bind , clear_points : 0 as * mut sys :: godot_method_bind , get_bake_interval : 0 as * mut sys :: godot_method_bind , get_baked_length : 0 as * mut sys :: godot_method_bind , get_baked_points : 0 as * mut sys :: godot_method_bind , get_baked_tilts : 0 as * mut sys :: godot_method_bind , get_baked_up_vectors : 0 as * mut sys :: godot_method_bind , get_closest_offset : 0 as * mut sys :: godot_method_bind , get_closest_point : 0 as * mut sys :: godot_method_bind , get_point_count : 0 as * mut sys :: godot_method_bind , get_point_in : 0 as * mut sys :: godot_method_bind , get_point_out : 0 as * mut sys :: godot_method_bind , get_point_position : 0 as * mut sys :: godot_method_bind , get_point_tilt : 0 as * mut sys :: godot_method_bind , interpolate : 0 as * mut sys :: godot_method_bind , interpolate_baked : 0 as * mut sys :: godot_method_bind , interpolate_baked_up_vector : 0 as * mut sys :: godot_method_bind , interpolatef : 0 as * mut sys :: godot_method_bind , is_up_vector_enabled : 0 as * mut sys :: godot_method_bind , remove_point : 0 as * mut sys :: godot_method_bind , set_bake_interval : 0 as * mut sys :: godot_method_bind , set_point_in : 0 as * mut sys :: godot_method_bind , set_point_out : 0 as * mut sys :: godot_method_bind , set_point_position : 0 as * mut sys :: godot_method_bind , set_point_tilt : 0 as * mut sys :: godot_method_bind , set_up_vector_enabled : 0 as * mut sys :: godot_method_bind , tessellate : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { Curve3DMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "Curve3D\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . add_point = (gd_api . godot_method_bind_get_method) (class_name , "add_point\0" . as_ptr () as * const c_char) ; table . clear_points = (gd_api . godot_method_bind_get_method) (class_name , "clear_points\0" . as_ptr () as * const c_char) ; table . get_bake_interval = (gd_api . godot_method_bind_get_method) (class_name , "get_bake_interval\0" . as_ptr () as * const c_char) ; table . get_baked_length = (gd_api . godot_method_bind_get_method) (class_name , "get_baked_length\0" . as_ptr () as * const c_char) ; table . get_baked_points = (gd_api . godot_method_bind_get_method) (class_name , "get_baked_points\0" . as_ptr () as * const c_char) ; table . get_baked_tilts = (gd_api . godot_method_bind_get_method) (class_name , "get_baked_tilts\0" . as_ptr () as * const c_char) ; table . get_baked_up_vectors = (gd_api . godot_method_bind_get_method) (class_name , "get_baked_up_vectors\0" . as_ptr () as * const c_char) ; table . get_closest_offset = (gd_api . godot_method_bind_get_method) (class_name , "get_closest_offset\0" . as_ptr () as * const c_char) ; table . get_closest_point = (gd_api . godot_method_bind_get_method) (class_name , "get_closest_point\0" . as_ptr () as * const c_char) ; table . get_point_count = (gd_api . godot_method_bind_get_method) (class_name , "get_point_count\0" . as_ptr () as * const c_char) ; table . get_point_in = (gd_api . godot_method_bind_get_method) (class_name , "get_point_in\0" . as_ptr () as * const c_char) ; table . get_point_out = (gd_api . godot_method_bind_get_method) (class_name , "get_point_out\0" . as_ptr () as * const c_char) ; table . get_point_position = (gd_api . godot_method_bind_get_method) (class_name , "get_point_position\0" . as_ptr () as * const c_char) ; table . get_point_tilt = (gd_api . godot_method_bind_get_method) (class_name , "get_point_tilt\0" . as_ptr () as * const c_char) ; table . interpolate = (gd_api . godot_method_bind_get_method) (class_name , "interpolate\0" . as_ptr () as * const c_char) ; table . interpolate_baked = (gd_api . godot_method_bind_get_method) (class_name , "interpolate_baked\0" . as_ptr () as * const c_char) ; table . interpolate_baked_up_vector = (gd_api . godot_method_bind_get_method) (class_name , "interpolate_baked_up_vector\0" . as_ptr () as * const c_char) ; table . interpolatef = (gd_api . godot_method_bind_get_method) (class_name , "interpolatef\0" . as_ptr () as * const c_char) ; table . is_up_vector_enabled = (gd_api . godot_method_bind_get_method) (class_name , "is_up_vector_enabled\0" . as_ptr () as * const c_char) ; table . remove_point = (gd_api . godot_method_bind_get_method) (class_name , "remove_point\0" . as_ptr () as * const c_char) ; table . set_bake_interval = (gd_api . godot_method_bind_get_method) (class_name , "set_bake_interval\0" . as_ptr () as * const c_char) ; table . set_point_in = (gd_api . godot_method_bind_get_method) (class_name , "set_point_in\0" . as_ptr () as * const c_char) ; table . set_point_out = (gd_api . godot_method_bind_get_method) (class_name , "set_point_out\0" . as_ptr () as * const c_char) ; table . set_point_position = (gd_api . godot_method_bind_get_method) (class_name , "set_point_position\0" . as_ptr () as * const c_char) ; table . set_point_tilt = (gd_api . godot_method_bind_get_method) (class_name , "set_point_tilt\0" . as_ptr () as * const c_char) ; table . set_up_vector_enabled = (gd_api . godot_method_bind_get_method) (class_name , "set_up_vector_enabled\0" . as_ptr () as * const c_char) ; table . tessellate = (gd_api . godot_method_bind_get_method) (class_name , "tessellate\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:274:10038 [INFO] [stdout] | [INFO] [stdout] 274 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 274 | # [doc = "`core class CSGCylinder` inherits `CSGPrimitive` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_csgcylinder.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nNon reference counted objects such as the ones of this type are usually owned by the engine.\n\n`CSGCylinder` is a reference-only type. Persistent references can\nonly exist in the unsafe `Ref` form.\n\nIn the cases where Rust code owns an object of this type, for example if the object was just\ncreated on the Rust side and not passed to the engine yet, ownership should be either given\nto the engine or the object must be manually destroyed using `Ref::free`, or `Ref::queue_free`\nif it is a `Node`."] # [doc = "\n## Class hierarchy\n\nCSGCylinder inherits methods from:\n - [CSGPrimitive](struct.CSGPrimitive.html)\n - [CSGShape](struct.CSGShape.html)\n - [GeometryInstance](struct.GeometryInstance.html)\n - [VisualInstance](struct.VisualInstance.html)\n - [Spatial](struct.Spatial.html)\n - [Node](struct.Node.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct CSGCylinder { this : RawObject < Self > , } impl CSGCylinder { # [doc = "Creates a new instance of this object.\n\nBecause this type is not reference counted, the lifetime of the returned object\nis *not* automatically managed.\n\nImmediately after creation, the object is owned by the caller, and can be\npassed to the engine (in which case the engine will be responsible for\ndestroying the object) or destroyed manually using `Ref::free`, or preferably\n`Ref::queue_free` if it is a `Node`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = CSGCylinderMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = ""] # [doc = ""] # [inline] pub fn height (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = CSGCylinderMethodTable :: get (get_api ()) . get_height ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn material (& self) -> Option < Ref < crate :: generated :: material :: Material , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = CSGCylinderMethodTable :: get (get_api ()) . get_material ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: material :: Material , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = ""] # [doc = ""] # [inline] pub fn radius (& self) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = CSGCylinderMethodTable :: get (get_api ()) . get_radius ; let ret = crate :: icalls :: icallptr_f64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn sides (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = CSGCylinderMethodTable :: get (get_api ()) . get_sides ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn smooth_faces (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = CSGCylinderMethodTable :: get (get_api ()) . get_smooth_faces ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn is_cone (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = CSGCylinderMethodTable :: get (get_api ()) . is_cone ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn set_cone (& self , cone : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = CSGCylinderMethodTable :: get (get_api ()) . set_cone ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , cone) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_height (& self , height : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = CSGCylinderMethodTable :: get (get_api ()) . set_height ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , height) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_material (& self , material : impl AsArg < crate :: generated :: material :: Material >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = CSGCylinderMethodTable :: get (get_api ()) . set_material ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , material . as_arg_ptr ()) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_radius (& self , radius : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = CSGCylinderMethodTable :: get (get_api ()) . set_radius ; let ret = crate :: icalls :: icallptr_void_f64 (method_bind , self . this . sys () . as_ptr () , radius) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_sides (& self , sides : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = CSGCylinderMethodTable :: get (get_api ()) . set_sides ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , sides) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_smooth_faces (& self , smooth_faces : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = CSGCylinderMethodTable :: get (get_api ()) . set_smooth_faces ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , smooth_faces) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for CSGCylinder { } unsafe impl GodotObject for CSGCylinder { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "CSGCylinder" } } impl QueueFree for CSGCylinder { # [inline] unsafe fn godot_queue_free (obj : * mut sys :: godot_object) { let method_bind : * mut sys :: godot_method_bind = crate :: generated :: node :: NodeMethodTable :: get (get_api ()) . queue_free ; crate :: icalls :: icallptr_void (method_bind , obj) } } impl std :: ops :: Deref for CSGCylinder { type Target = crate :: generated :: csg_primitive :: CSGPrimitive ; # [inline] fn deref (& self) -> & crate :: generated :: csg_primitive :: CSGPrimitive { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for CSGCylinder { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: csg_primitive :: CSGPrimitive { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: csg_primitive :: CSGPrimitive > for CSGCylinder { } unsafe impl SubClass < crate :: generated :: csg_shape :: CSGShape > for CSGCylinder { } unsafe impl SubClass < crate :: generated :: geometry_instance :: GeometryInstance > for CSGCylinder { } unsafe impl SubClass < crate :: generated :: visual_instance :: VisualInstance > for CSGCylinder { } unsafe impl SubClass < crate :: generated :: spatial :: Spatial > for CSGCylinder { } unsafe impl SubClass < crate :: generated :: node :: Node > for CSGCylinder { } unsafe impl SubClass < crate :: generated :: object :: Object > for CSGCylinder { } impl Instanciable for CSGCylinder { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { CSGCylinder :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct CSGCylinderMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_height : * mut sys :: godot_method_bind , pub get_material : * mut sys :: godot_method_bind , pub get_radius : * mut sys :: godot_method_bind , pub get_sides : * mut sys :: godot_method_bind , pub get_smooth_faces : * mut sys :: godot_method_bind , pub is_cone : * mut sys :: godot_method_bind , pub set_cone : * mut sys :: godot_method_bind , pub set_height : * mut sys :: godot_method_bind , pub set_material : * mut sys :: godot_method_bind , pub set_radius : * mut sys :: godot_method_bind , pub set_sides : * mut sys :: godot_method_bind , pub set_smooth_faces : * mut sys :: godot_method_bind } impl CSGCylinderMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : CSGCylinderMethodTable = CSGCylinderMethodTable { class_constructor : None , get_height : 0 as * mut sys :: godot_method_bind , get_material : 0 as * mut sys :: godot_method_bind , get_radius : 0 as * mut sys :: godot_method_bind , get_sides : 0 as * mut sys :: godot_method_bind , get_smooth_faces : 0 as * mut sys :: godot_method_bind , is_cone : 0 as * mut sys :: godot_method_bind , set_cone : 0 as * mut sys :: godot_method_bind , set_height : 0 as * mut sys :: godot_method_bind , set_material : 0 as * mut sys :: godot_method_bind , set_radius : 0 as * mut sys :: godot_method_bind , set_sides : 0 as * mut sys :: godot_method_bind , set_smooth_faces : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { CSGCylinderMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "CSGCylinder\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_height = (gd_api . godot_method_bind_get_method) (class_name , "get_height\0" . as_ptr () as * const c_char) ; table . get_material = (gd_api . godot_method_bind_get_method) (class_name , "get_material\0" . as_ptr () as * const c_char) ; table . get_radius = (gd_api . godot_method_bind_get_method) (class_name , "get_radius\0" . as_ptr () as * const c_char) ; table . get_sides = (gd_api . godot_method_bind_get_method) (class_name , "get_sides\0" . as_ptr () as * const c_char) ; table . get_smooth_faces = (gd_api . godot_method_bind_get_method) (class_name , "get_smooth_faces\0" . as_ptr () as * const c_char) ; table . is_cone = (gd_api . godot_method_bind_get_method) (class_name , "is_cone\0" . as_ptr () as * const c_char) ; table . set_cone = (gd_api . godot_method_bind_get_method) (class_name , "set_cone\0" . as_ptr () as * const c_char) ; table . set_height = (gd_api . godot_method_bind_get_method) (class_name , "set_height\0" . as_ptr () as * const c_char) ; table . set_material = (gd_api . godot_method_bind_get_method) (class_name , "set_material\0" . as_ptr () as * const c_char) ; table . set_radius = (gd_api . godot_method_bind_get_method) (class_name , "set_radius\0" . as_ptr () as * const c_char) ; table . set_sides = (gd_api . godot_method_bind_get_method) (class_name , "set_sides\0" . as_ptr () as * const c_char) ; table . set_smooth_faces = (gd_api . godot_method_bind_get_method) (class_name , "set_smooth_faces\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:280:5973 [INFO] [stdout] | [INFO] [stdout] 280 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 280 | # [doc = "`core class ShortCut` inherits `Resource` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_shortcut.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nShortCut inherits methods from:\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct ShortCut { this : RawObject < Self > , } impl ShortCut { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = ShortCutMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } # [doc = "Returns the shortcut's [InputEvent] as a [String]."] # [doc = ""] # [inline] pub fn get_as_text (& self) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = ShortCutMethodTable :: get (get_api ()) . get_as_text ; let ret = crate :: icalls :: icallptr_str (method_bind , self . this . sys () . as_ptr ()) ; GodotString :: from_sys (ret) } } # [doc = "The shortcut's [InputEvent].\nGenerally the [InputEvent] is a keyboard key, though it can be any [InputEvent]."] # [doc = ""] # [inline] pub fn shortcut (& self) -> Option < Ref < crate :: generated :: input_event :: InputEvent , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = ShortCutMethodTable :: get (get_api ()) . get_shortcut ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: input_event :: InputEvent , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Returns `true` if the shortcut's [InputEvent] equals `event`."] # [doc = ""] # [inline] pub fn is_shortcut (& self , event : impl AsArg < crate :: generated :: input_event :: InputEvent >) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = ShortCutMethodTable :: get (get_api ()) . is_shortcut ; let ret = crate :: icalls :: icallptr_bool_obj (method_bind , self . this . sys () . as_ptr () , event . as_arg_ptr ()) ; ret as _ } } # [doc = "If `true`, this shortcut is valid."] # [doc = ""] # [inline] pub fn is_valid (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = ShortCutMethodTable :: get (get_api ()) . is_valid ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "The shortcut's [InputEvent].\nGenerally the [InputEvent] is a keyboard key, though it can be any [InputEvent]."] # [doc = ""] # [inline] pub fn set_shortcut (& self , event : impl AsArg < crate :: generated :: input_event :: InputEvent >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = ShortCutMethodTable :: get (get_api ()) . set_shortcut ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , event . as_arg_ptr ()) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for ShortCut { } unsafe impl GodotObject for ShortCut { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "ShortCut" } } impl std :: ops :: Deref for ShortCut { type Target = crate :: generated :: resource :: Resource ; # [inline] fn deref (& self) -> & crate :: generated :: resource :: Resource { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for ShortCut { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: resource :: Resource { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: resource :: Resource > for ShortCut { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for ShortCut { } unsafe impl SubClass < crate :: generated :: object :: Object > for ShortCut { } impl Instanciable for ShortCut { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { ShortCut :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct ShortCutMethodTable { pub class_constructor : sys :: godot_class_constructor , pub get_as_text : * mut sys :: godot_method_bind , pub get_shortcut : * mut sys :: godot_method_bind , pub is_shortcut : * mut sys :: godot_method_bind , pub is_valid : * mut sys :: godot_method_bind , pub set_shortcut : * mut sys :: godot_method_bind } impl ShortCutMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : ShortCutMethodTable = ShortCutMethodTable { class_constructor : None , get_as_text : 0 as * mut sys :: godot_method_bind , get_shortcut : 0 as * mut sys :: godot_method_bind , is_shortcut : 0 as * mut sys :: godot_method_bind , is_valid : 0 as * mut sys :: godot_method_bind , set_shortcut : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { ShortCutMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "ShortCut\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . get_as_text = (gd_api . godot_method_bind_get_method) (class_name , "get_as_text\0" . as_ptr () as * const c_char) ; table . get_shortcut = (gd_api . godot_method_bind_get_method) (class_name , "get_shortcut\0" . as_ptr () as * const c_char) ; table . is_shortcut = (gd_api . godot_method_bind_get_method) (class_name , "is_shortcut\0" . as_ptr () as * const c_char) ; table . is_valid = (gd_api . godot_method_bind_get_method) (class_name , "is_valid\0" . as_ptr () as * const c_char) ; table . set_shortcut = (gd_api . godot_method_bind_get_method) (class_name , "set_shortcut\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:286:41176 [INFO] [stdout] | [INFO] [stdout] 286 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 286 | # [doc = "`core class TreeItem` inherits `Object` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_treeitem.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = ""] # [doc = "\n## Class hierarchy\n\nTreeItem inherits methods from:\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct TreeItem { this : RawObject < Self > , } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct TextAlign (pub i64) ; impl TextAlign { pub const LEFT : TextAlign = TextAlign (0i64) ; pub const CENTER : TextAlign = TextAlign (1i64) ; pub const RIGHT : TextAlign = TextAlign (2i64) ; } impl From < i64 > for TextAlign { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < TextAlign > for i64 { # [inline] fn from (v : TextAlign) -> Self { v . 0 } } # [derive (Copy , Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash)] pub struct TreeCellMode (pub i64) ; impl TreeCellMode { pub const STRING : TreeCellMode = TreeCellMode (0i64) ; pub const CHECK : TreeCellMode = TreeCellMode (1i64) ; pub const RANGE : TreeCellMode = TreeCellMode (2i64) ; pub const ICON : TreeCellMode = TreeCellMode (3i64) ; pub const CUSTOM : TreeCellMode = TreeCellMode (4i64) ; } impl From < i64 > for TreeCellMode { # [inline] fn from (v : i64) -> Self { Self (v) } } impl From < TreeCellMode > for i64 { # [inline] fn from (v : TreeCellMode) -> Self { v . 0 } } # [doc = "Constants"] # [allow (non_upper_case_globals)] impl TreeItem { pub const ALIGN_CENTER : i64 = 1i64 ; pub const ALIGN_LEFT : i64 = 0i64 ; pub const ALIGN_RIGHT : i64 = 2i64 ; pub const CELL_MODE_CHECK : i64 = 1i64 ; pub const CELL_MODE_CUSTOM : i64 = 4i64 ; pub const CELL_MODE_ICON : i64 = 3i64 ; pub const CELL_MODE_RANGE : i64 = 2i64 ; pub const CELL_MODE_STRING : i64 = 0i64 ; } impl TreeItem { # [doc = "Adds a button with [Texture] `button` at column `column`. The `button_idx` index is used to identify the button when calling other methods. If not specified, the next available index is used, which may be retrieved by calling [method get_button_count] immediately after this method. Optionally, the button can be `disabled` and have a `tooltip`.\n# Default Arguments\n* `button_idx` - `-1`\n* `disabled` - `false`\n* `tooltip` - `\"\"`"] # [doc = ""] # [inline] pub fn add_button (& self , column : i64 , button : impl AsArg < crate :: generated :: texture :: Texture > , button_idx : i64 , disabled : bool , tooltip : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . add_button ; let ret = crate :: icalls :: icallptr_void_i64_obj_i64_bool_str (method_bind , self . this . sys () . as_ptr () , column , button . as_arg_ptr () , button_idx , disabled , tooltip . into ()) ; } } # [doc = "Calls the `method` on the actual TreeItem and its children recursively. Pass parameters as a comma separated list."] # [doc = ""] # [inline] pub fn call_recursive (& self , method : impl Into < GodotString > , varargs : & [Variant]) -> Variant { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . call_recursive ; let ret = crate :: icalls :: icallvarargs__str (method_bind , self . this . sys () . as_ptr () , method . into () , varargs) ; ret } } # [doc = "Resets the background color for the given column to default."] # [doc = ""] # [inline] pub fn clear_custom_bg_color (& self , column : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . clear_custom_bg_color ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , column) ; } } # [doc = "Resets the color for the given column to default."] # [doc = ""] # [inline] pub fn clear_custom_color (& self , column : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . clear_custom_color ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , column) ; } } # [doc = "Deselects the given column."] # [doc = ""] # [inline] pub fn deselect (& self , column : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . deselect ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , column) ; } } # [doc = "Removes the button at index `button_idx` in column `column`."] # [doc = ""] # [inline] pub fn erase_button (& self , column : i64 , button_idx : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . erase_button ; let ret = crate :: icalls :: icallptr_void_i64_i64 (method_bind , self . this . sys () . as_ptr () , column , button_idx) ; } } # [doc = "Returns the [Texture] of the button at index `button_idx` in column `column`."] # [doc = ""] # [inline] pub fn get_button (& self , column : i64 , button_idx : i64) -> Option < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_button ; let ret = crate :: icalls :: icallptr_obj_i64_i64 (method_bind , self . this . sys () . as_ptr () , column , button_idx) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Returns the number of buttons in column `column`. May be used to get the most recently added button's index, if no index was specified."] # [doc = ""] # [inline] pub fn get_button_count (& self , column : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_button_count ; let ret = crate :: icalls :: icallptr_i64_i64 (method_bind , self . this . sys () . as_ptr () , column) ; ret as _ } } # [doc = "Returns the tooltip string for the button at index `button_idx` in column `column`."] # [doc = ""] # [inline] pub fn get_button_tooltip (& self , column : i64 , button_idx : i64) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_button_tooltip ; let ret = crate :: icalls :: icallptr_str_i64_i64 (method_bind , self . this . sys () . as_ptr () , column , button_idx) ; GodotString :: from_sys (ret) } } # [doc = "Returns the column's cell mode."] # [doc = ""] # [inline] pub fn get_cell_mode (& self , column : i64) -> crate :: generated :: tree_item :: TreeCellMode { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_cell_mode ; let ret = crate :: icalls :: icallptr_i64_i64 (method_bind , self . this . sys () . as_ptr () , column) ; crate :: generated :: tree_item :: TreeCellMode (ret) } } # [doc = "Returns the TreeItem's first child item or a null object if there is none."] # [doc = ""] # [inline] pub fn get_children (& self) -> Option < Ref < crate :: generated :: tree_item :: TreeItem , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_children ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: tree_item :: TreeItem , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Returns the custom background color of column `column`."] # [doc = ""] # [inline] pub fn get_custom_bg_color (& self , column : i64) -> Color { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_custom_bg_color ; let ret = crate :: icalls :: icallptr_color_i64 (method_bind , self . this . sys () . as_ptr () , column) ; mem :: transmute (ret) } } # [doc = "Returns the custom color of column `column`."] # [doc = ""] # [inline] pub fn get_custom_color (& self , column : i64) -> Color { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_custom_color ; let ret = crate :: icalls :: icallptr_color_i64 (method_bind , self . this . sys () . as_ptr () , column) ; mem :: transmute (ret) } } # [doc = "The custom minimum height."] # [doc = ""] # [inline] pub fn custom_minimum_height (& self) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_custom_minimum_height ; let ret = crate :: icalls :: icallptr_i64 (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns `true` if `expand_right` is set."] # [doc = ""] # [inline] pub fn get_expand_right (& self , column : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_expand_right ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , column) ; ret as _ } } # [doc = "Returns the given column's icon [Texture]. Error if no icon is set."] # [doc = ""] # [inline] pub fn get_icon (& self , column : i64) -> Option < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_icon ; let ret = crate :: icalls :: icallptr_obj_i64 (method_bind , self . this . sys () . as_ptr () , column) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: texture :: Texture , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Returns the column's icon's maximum width."] # [doc = ""] # [inline] pub fn get_icon_max_width (& self , column : i64) -> i64 { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_icon_max_width ; let ret = crate :: icalls :: icallptr_i64_i64 (method_bind , self . this . sys () . as_ptr () , column) ; ret as _ } } # [doc = "Returns the [Color] modulating the column's icon."] # [doc = ""] # [inline] pub fn get_icon_modulate (& self , column : i64) -> Color { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_icon_modulate ; let ret = crate :: icalls :: icallptr_color_i64 (method_bind , self . this . sys () . as_ptr () , column) ; mem :: transmute (ret) } } # [doc = "Returns the icon [Texture] region as [Rect2]."] # [doc = ""] # [inline] pub fn get_icon_region (& self , column : i64) -> Rect2 { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_icon_region ; let ret = crate :: icalls :: icallptr_rect2_i64 (method_bind , self . this . sys () . as_ptr () , column) ; mem :: transmute (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn get_metadata (& self , column : i64) -> Variant { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_metadata ; let ret = crate :: icalls :: icallptr_var_i64 (method_bind , self . this . sys () . as_ptr () , column) ; Variant :: from_sys (ret) } } # [doc = "Returns the next TreeItem in the tree or a null object if there is none."] # [doc = ""] # [inline] pub fn get_next (& self) -> Option < Ref < crate :: generated :: tree_item :: TreeItem , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_next ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: tree_item :: TreeItem , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Returns the next visible TreeItem in the tree or a null object if there is none.\nIf `wrap` is enabled, the method will wrap around to the first visible element in the tree when called on the last visible element, otherwise it returns `null`.\n# Default Arguments\n* `wrap` - `false`"] # [doc = ""] # [inline] pub fn get_next_visible (& self , wrap : bool) -> Option < Ref < crate :: generated :: tree_item :: TreeItem , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_next_visible ; let ret = crate :: icalls :: icallptr_obj_bool (method_bind , self . this . sys () . as_ptr () , wrap) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: tree_item :: TreeItem , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Returns the parent TreeItem or a null object if there is none."] # [doc = ""] # [inline] pub fn get_parent (& self) -> Option < Ref < crate :: generated :: tree_item :: TreeItem , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_parent ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: tree_item :: TreeItem , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Returns the previous TreeItem in the tree or a null object if there is none."] # [doc = ""] # [inline] pub fn get_prev (& self) -> Option < Ref < crate :: generated :: tree_item :: TreeItem , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_prev ; let ret = crate :: icalls :: icallptr_obj (method_bind , self . this . sys () . as_ptr ()) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: tree_item :: TreeItem , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = "Returns the previous visible TreeItem in the tree or a null object if there is none.\nIf `wrap` is enabled, the method will wrap around to the last visible element in the tree when called on the first visible element, otherwise it returns `null`.\n# Default Arguments\n* `wrap` - `false`"] # [doc = ""] # [inline] pub fn get_prev_visible (& self , wrap : bool) -> Option < Ref < crate :: generated :: tree_item :: TreeItem , thread_access :: Shared > > { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_prev_visible ; let ret = crate :: icalls :: icallptr_obj_bool (method_bind , self . this . sys () . as_ptr () , wrap) ; ptr :: NonNull :: new (ret) . map (| sys | < Ref < crate :: generated :: tree_item :: TreeItem , thread_access :: Shared >> :: move_from_sys (sys)) } } # [doc = ""] # [doc = ""] # [inline] pub fn get_range (& self , column : i64) -> f64 { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_range ; let ret = crate :: icalls :: icallptr_f64_i64 (method_bind , self . this . sys () . as_ptr () , column) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn get_range_config (& self , column : i64) -> Dictionary { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_range_config ; let ret = crate :: icalls :: icallptr_dict_i64 (method_bind , self . this . sys () . as_ptr () , column) ; Dictionary :: from_sys (ret) } } # [doc = ""] # [doc = ""] # [inline] pub fn get_suffix (& self , column : i64) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_suffix ; let ret = crate :: icalls :: icallptr_str_i64 (method_bind , self . this . sys () . as_ptr () , column) ; GodotString :: from_sys (ret) } } # [doc = "Returns the given column's text."] # [doc = ""] # [inline] pub fn get_text (& self , column : i64) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_text ; let ret = crate :: icalls :: icallptr_str_i64 (method_bind , self . this . sys () . as_ptr () , column) ; GodotString :: from_sys (ret) } } # [doc = "Returns the given column's text alignment."] # [doc = ""] # [inline] pub fn get_text_align (& self , column : i64) -> crate :: generated :: tree_item :: TextAlign { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_text_align ; let ret = crate :: icalls :: icallptr_i64_i64 (method_bind , self . this . sys () . as_ptr () , column) ; crate :: generated :: tree_item :: TextAlign (ret) } } # [doc = "Returns the given column's tooltip."] # [doc = ""] # [inline] pub fn get_tooltip (& self , column : i64) -> GodotString { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . get_tooltip ; let ret = crate :: icalls :: icallptr_str_i64 (method_bind , self . this . sys () . as_ptr () , column) ; GodotString :: from_sys (ret) } } # [doc = "Returns `true` if the button at index `button_idx` for the given column is disabled."] # [doc = ""] # [inline] pub fn is_button_disabled (& self , column : i64 , button_idx : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . is_button_disabled ; let ret = crate :: icalls :: icallptr_bool_i64_i64 (method_bind , self . this . sys () . as_ptr () , column , button_idx) ; ret as _ } } # [doc = "Returns `true` if the given column is checked."] # [doc = ""] # [inline] pub fn is_checked (& self , column : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . is_checked ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , column) ; ret as _ } } # [doc = "If `true`, the TreeItem is collapsed."] # [doc = ""] # [inline] pub fn is_collapsed (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . is_collapsed ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = ""] # [doc = ""] # [inline] pub fn is_custom_set_as_button (& self , column : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . is_custom_set_as_button ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , column) ; ret as _ } } # [doc = "Returns `true` if column `column` is editable."] # [doc = ""] # [inline] pub fn is_editable (& self , column : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . is_editable ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , column) ; ret as _ } } # [doc = "If `true`, folding is disabled for this TreeItem."] # [doc = ""] # [inline] pub fn is_folding_disabled (& self) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . is_folding_disabled ; let ret = crate :: icalls :: icallptr_bool (method_bind , self . this . sys () . as_ptr ()) ; ret as _ } } # [doc = "Returns `true` if column `column` is selectable."] # [doc = ""] # [inline] pub fn is_selectable (& self , column : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . is_selectable ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , column) ; ret as _ } } # [doc = "Returns `true` if column `column` is selected."] # [doc = ""] # [inline] pub fn is_selected (& self , column : i64) -> bool { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . is_selected ; let ret = crate :: icalls :: icallptr_bool_i64 (method_bind , self . this . sys () . as_ptr () , column) ; ret as _ } } # [doc = "Moves this TreeItem to the bottom in the [Tree] hierarchy."] # [doc = ""] # [inline] pub fn move_to_bottom (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . move_to_bottom ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = "Moves this TreeItem to the top in the [Tree] hierarchy."] # [doc = ""] # [inline] pub fn move_to_top (& self) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . move_to_top ; let ret = crate :: icalls :: icallptr_void (method_bind , self . this . sys () . as_ptr ()) ; } } # [doc = "Removes the given child [TreeItem] and all its children from the [Tree]. Note that it doesn't free the item from memory, so it can be reused later. To completely remove a [TreeItem] use [method Object.free]."] # [doc = ""] # [inline] pub fn remove_child (& self , child : impl AsArg < crate :: generated :: object :: Object >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . remove_child ; let ret = crate :: icalls :: icallptr_void_obj (method_bind , self . this . sys () . as_ptr () , child . as_arg_ptr ()) ; } } # [doc = "Selects the column `column`."] # [doc = ""] # [inline] pub fn select (& self , column : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . select ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , column) ; } } # [doc = "Sets the given column's button [Texture] at index `button_idx` to `button`."] # [doc = ""] # [inline] pub fn set_button (& self , column : i64 , button_idx : i64 , button : impl AsArg < crate :: generated :: texture :: Texture >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_button ; let ret = crate :: icalls :: icallptr_void_i64_i64_obj (method_bind , self . this . sys () . as_ptr () , column , button_idx , button . as_arg_ptr ()) ; } } # [doc = "If `true`, disables the button at index `button_idx` in column `column`."] # [doc = ""] # [inline] pub fn set_button_disabled (& self , column : i64 , button_idx : i64 , disabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_button_disabled ; let ret = crate :: icalls :: icallptr_void_i64_i64_bool (method_bind , self . this . sys () . as_ptr () , column , button_idx , disabled) ; } } # [doc = "Sets the given column's cell mode to `mode`. See [enum TreeCellMode] constants."] # [doc = ""] # [inline] pub fn set_cell_mode (& self , column : i64 , mode : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_cell_mode ; let ret = crate :: icalls :: icallptr_void_i64_i64 (method_bind , self . this . sys () . as_ptr () , column , mode) ; } } # [doc = "If `true`, the column `column` is checked."] # [doc = ""] # [inline] pub fn set_checked (& self , column : i64 , checked : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_checked ; let ret = crate :: icalls :: icallptr_void_i64_bool (method_bind , self . this . sys () . as_ptr () , column , checked) ; } } # [doc = "If `true`, the TreeItem is collapsed."] # [doc = ""] # [inline] pub fn set_collapsed (& self , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_collapsed ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , enable) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_custom_as_button (& self , column : i64 , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_custom_as_button ; let ret = crate :: icalls :: icallptr_void_i64_bool (method_bind , self . this . sys () . as_ptr () , column , enable) ; } } # [doc = "Sets the given column's custom background color and whether to just use it as an outline.\n# Default Arguments\n* `just_outline` - `false`"] # [doc = ""] # [inline] pub fn set_custom_bg_color (& self , column : i64 , color : Color , just_outline : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_custom_bg_color ; let ret = crate :: icalls :: icallptr_void_i64_color_bool (method_bind , self . this . sys () . as_ptr () , column , color , just_outline) ; } } # [doc = "Sets the given column's custom color."] # [doc = ""] # [inline] pub fn set_custom_color (& self , column : i64 , color : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_custom_color ; let ret = crate :: icalls :: icallptr_void_i64_color (method_bind , self . this . sys () . as_ptr () , column , color) ; } } # [doc = "Sets the given column's custom draw callback to `callback` method on `object`.\nThe `callback` should accept two arguments: the [TreeItem] that is drawn and its position and size as a [Rect2]."] # [doc = ""] # [inline] pub fn set_custom_draw (& self , column : i64 , object : impl AsArg < crate :: generated :: object :: Object > , callback : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_custom_draw ; let ret = crate :: icalls :: icallptr_void_i64_obj_str (method_bind , self . this . sys () . as_ptr () , column , object . as_arg_ptr () , callback . into ()) ; } } # [doc = "The custom minimum height."] # [doc = ""] # [inline] pub fn set_custom_minimum_height (& self , height : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_custom_minimum_height ; let ret = crate :: icalls :: icallptr_void_i64 (method_bind , self . this . sys () . as_ptr () , height) ; } } # [doc = "If `true`, folding is disabled for this TreeItem."] # [doc = ""] # [inline] pub fn set_disable_folding (& self , disable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_disable_folding ; let ret = crate :: icalls :: icallptr_void_bool (method_bind , self . this . sys () . as_ptr () , disable) ; } } # [doc = "If `true`, column `column` is editable."] # [doc = ""] # [inline] pub fn set_editable (& self , column : i64 , enabled : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_editable ; let ret = crate :: icalls :: icallptr_void_i64_bool (method_bind , self . this . sys () . as_ptr () , column , enabled) ; } } # [doc = "If `true`, column `column` is expanded to the right."] # [doc = ""] # [inline] pub fn set_expand_right (& self , column : i64 , enable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_expand_right ; let ret = crate :: icalls :: icallptr_void_i64_bool (method_bind , self . this . sys () . as_ptr () , column , enable) ; } } # [doc = "Sets the given column's icon [Texture]."] # [doc = ""] # [inline] pub fn set_icon (& self , column : i64 , texture : impl AsArg < crate :: generated :: texture :: Texture >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_icon ; let ret = crate :: icalls :: icallptr_void_i64_obj (method_bind , self . this . sys () . as_ptr () , column , texture . as_arg_ptr ()) ; } } # [doc = "Sets the given column's icon's maximum width."] # [doc = ""] # [inline] pub fn set_icon_max_width (& self , column : i64 , width : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_icon_max_width ; let ret = crate :: icalls :: icallptr_void_i64_i64 (method_bind , self . this . sys () . as_ptr () , column , width) ; } } # [doc = "Modulates the given column's icon with `modulate`."] # [doc = ""] # [inline] pub fn set_icon_modulate (& self , column : i64 , modulate : Color) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_icon_modulate ; let ret = crate :: icalls :: icallptr_void_i64_color (method_bind , self . this . sys () . as_ptr () , column , modulate) ; } } # [doc = "Sets the given column's icon's texture region."] # [doc = ""] # [inline] pub fn set_icon_region (& self , column : i64 , region : Rect2) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_icon_region ; let ret = crate :: icalls :: icallptr_void_i64_rect2 (method_bind , self . this . sys () . as_ptr () , column , region) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_metadata (& self , column : i64 , meta : impl OwnedToVariant) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_metadata ; let ret = crate :: icalls :: icallptr_void_i64_var (method_bind , self . this . sys () . as_ptr () , column , meta . owned_to_variant ()) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_range (& self , column : i64 , value : f64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_range ; let ret = crate :: icalls :: icallptr_void_i64_f64 (method_bind , self . this . sys () . as_ptr () , column , value) ; } } # [doc = "\n# Default Arguments\n* `expr` - `false`"] # [doc = ""] # [inline] pub fn set_range_config (& self , column : i64 , min : f64 , max : f64 , step : f64 , expr : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_range_config ; let ret = crate :: icalls :: icallptr_void_i64_f64_f64_f64_bool (method_bind , self . this . sys () . as_ptr () , column , min , max , step , expr) ; } } # [doc = "If `true`, the given column is selectable."] # [doc = ""] # [inline] pub fn set_selectable (& self , column : i64 , selectable : bool) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_selectable ; let ret = crate :: icalls :: icallptr_void_i64_bool (method_bind , self . this . sys () . as_ptr () , column , selectable) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_suffix (& self , column : i64 , text : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_suffix ; let ret = crate :: icalls :: icallptr_void_i64_str (method_bind , self . this . sys () . as_ptr () , column , text . into ()) ; } } # [doc = ""] # [doc = ""] # [inline] pub fn set_text (& self , column : i64 , text : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_text ; let ret = crate :: icalls :: icallptr_void_i64_str (method_bind , self . this . sys () . as_ptr () , column , text . into ()) ; } } # [doc = "Sets the given column's text alignment. See [enum TextAlign] for possible values."] # [doc = ""] # [inline] pub fn set_text_align (& self , column : i64 , text_align : i64) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_text_align ; let ret = crate :: icalls :: icallptr_void_i64_i64 (method_bind , self . this . sys () . as_ptr () , column , text_align) ; } } # [doc = "Sets the given column's tooltip text."] # [doc = ""] # [inline] pub fn set_tooltip (& self , column : i64 , tooltip : impl Into < GodotString >) -> () { unsafe { let method_bind : * mut sys :: godot_method_bind = TreeItemMethodTable :: get (get_api ()) . set_tooltip ; let ret = crate :: icalls :: icallptr_void_i64_str (method_bind , self . this . sys () . as_ptr () , column , tooltip . into ()) ; } } } impl gdnative_core :: private :: godot_object :: Sealed for TreeItem { } unsafe impl GodotObject for TreeItem { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "TreeItem" } } impl std :: ops :: Deref for TreeItem { type Target = crate :: generated :: object :: Object ; # [inline] fn deref (& self) -> & crate :: generated :: object :: Object { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for TreeItem { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: object :: Object { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: object :: Object > for TreeItem { } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct TreeItemMethodTable { pub class_constructor : sys :: godot_class_constructor , pub add_button : * mut sys :: godot_method_bind , pub call_recursive : * mut sys :: godot_method_bind , pub clear_custom_bg_color : * mut sys :: godot_method_bind , pub clear_custom_color : * mut sys :: godot_method_bind , pub deselect : * mut sys :: godot_method_bind , pub erase_button : * mut sys :: godot_method_bind , pub get_button : * mut sys :: godot_method_bind , pub get_button_count : * mut sys :: godot_method_bind , pub get_button_tooltip : * mut sys :: godot_method_bind , pub get_cell_mode : * mut sys :: godot_method_bind , pub get_children : * mut sys :: godot_method_bind , pub get_custom_bg_color : * mut sys :: godot_method_bind , pub get_custom_color : * mut sys :: godot_method_bind , pub get_custom_minimum_height : * mut sys :: godot_method_bind , pub get_expand_right : * mut sys :: godot_method_bind , pub get_icon : * mut sys :: godot_method_bind , pub get_icon_max_width : * mut sys :: godot_method_bind , pub get_icon_modulate : * mut sys :: godot_method_bind , pub get_icon_region : * mut sys :: godot_method_bind , pub get_metadata : * mut sys :: godot_method_bind , pub get_next : * mut sys :: godot_method_bind , pub get_next_visible : * mut sys :: godot_method_bind , pub get_parent : * mut sys :: godot_method_bind , pub get_prev : * mut sys :: godot_method_bind , pub get_prev_visible : * mut sys :: godot_method_bind , pub get_range : * mut sys :: godot_method_bind , pub get_range_config : * mut sys :: godot_method_bind , pub get_suffix : * mut sys :: godot_method_bind , pub get_text : * mut sys :: godot_method_bind , pub get_text_align : * mut sys :: godot_method_bind , pub get_tooltip : * mut sys :: godot_method_bind , pub is_button_disabled : * mut sys :: godot_method_bind , pub is_checked : * mut sys :: godot_method_bind , pub is_collapsed : * mut sys :: godot_method_bind , pub is_custom_set_as_button : * mut sys :: godot_method_bind , pub is_editable : * mut sys :: godot_method_bind , pub is_folding_disabled : * mut sys :: godot_method_bind , pub is_selectable : * mut sys :: godot_method_bind , pub is_selected : * mut sys :: godot_method_bind , pub move_to_bottom : * mut sys :: godot_method_bind , pub move_to_top : * mut sys :: godot_method_bind , pub remove_child : * mut sys :: godot_method_bind , pub select : * mut sys :: godot_method_bind , pub set_button : * mut sys :: godot_method_bind , pub set_button_disabled : * mut sys :: godot_method_bind , pub set_cell_mode : * mut sys :: godot_method_bind , pub set_checked : * mut sys :: godot_method_bind , pub set_collapsed : * mut sys :: godot_method_bind , pub set_custom_as_button : * mut sys :: godot_method_bind , pub set_custom_bg_color : * mut sys :: godot_method_bind , pub set_custom_color : * mut sys :: godot_method_bind , pub set_custom_draw : * mut sys :: godot_method_bind , pub set_custom_minimum_height : * mut sys :: godot_method_bind , pub set_disable_folding : * mut sys :: godot_method_bind , pub set_editable : * mut sys :: godot_method_bind , pub set_expand_right : * mut sys :: godot_method_bind , pub set_icon : * mut sys :: godot_method_bind , pub set_icon_max_width : * mut sys :: godot_method_bind , pub set_icon_modulate : * mut sys :: godot_method_bind , pub set_icon_region : * mut sys :: godot_method_bind , pub set_metadata : * mut sys :: godot_method_bind , pub set_range : * mut sys :: godot_method_bind , pub set_range_config : * mut sys :: godot_method_bind , pub set_selectable : * mut sys :: godot_method_bind , pub set_suffix : * mut sys :: godot_method_bind , pub set_text : * mut sys :: godot_method_bind , pub set_text_align : * mut sys :: godot_method_bind , pub set_tooltip : * mut sys :: godot_method_bind } impl TreeItemMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : TreeItemMethodTable = TreeItemMethodTable { class_constructor : None , add_button : 0 as * mut sys :: godot_method_bind , call_recursive : 0 as * mut sys :: godot_method_bind , clear_custom_bg_color : 0 as * mut sys :: godot_method_bind , clear_custom_color : 0 as * mut sys :: godot_method_bind , deselect : 0 as * mut sys :: godot_method_bind , erase_button : 0 as * mut sys :: godot_method_bind , get_button : 0 as * mut sys :: godot_method_bind , get_button_count : 0 as * mut sys :: godot_method_bind , get_button_tooltip : 0 as * mut sys :: godot_method_bind , get_cell_mode : 0 as * mut sys :: godot_method_bind , get_children : 0 as * mut sys :: godot_method_bind , get_custom_bg_color : 0 as * mut sys :: godot_method_bind , get_custom_color : 0 as * mut sys :: godot_method_bind , get_custom_minimum_height : 0 as * mut sys :: godot_method_bind , get_expand_right : 0 as * mut sys :: godot_method_bind , get_icon : 0 as * mut sys :: godot_method_bind , get_icon_max_width : 0 as * mut sys :: godot_method_bind , get_icon_modulate : 0 as * mut sys :: godot_method_bind , get_icon_region : 0 as * mut sys :: godot_method_bind , get_metadata : 0 as * mut sys :: godot_method_bind , get_next : 0 as * mut sys :: godot_method_bind , get_next_visible : 0 as * mut sys :: godot_method_bind , get_parent : 0 as * mut sys :: godot_method_bind , get_prev : 0 as * mut sys :: godot_method_bind , get_prev_visible : 0 as * mut sys :: godot_method_bind , get_range : 0 as * mut sys :: godot_method_bind , get_range_config : 0 as * mut sys :: godot_method_bind , get_suffix : 0 as * mut sys :: godot_method_bind , get_text : 0 as * mut sys :: godot_method_bind , get_text_align : 0 as * mut sys :: godot_method_bind , get_tooltip : 0 as * mut sys :: godot_method_bind , is_button_disabled : 0 as * mut sys :: godot_method_bind , is_checked : 0 as * mut sys :: godot_method_bind , is_collapsed : 0 as * mut sys :: godot_method_bind , is_custom_set_as_button : 0 as * mut sys :: godot_method_bind , is_editable : 0 as * mut sys :: godot_method_bind , is_folding_disabled : 0 as * mut sys :: godot_method_bind , is_selectable : 0 as * mut sys :: godot_method_bind , is_selected : 0 as * mut sys :: godot_method_bind , move_to_bottom : 0 as * mut sys :: godot_method_bind , move_to_top : 0 as * mut sys :: godot_method_bind , remove_child : 0 as * mut sys :: godot_method_bind , select : 0 as * mut sys :: godot_method_bind , set_button : 0 as * mut sys :: godot_method_bind , set_button_disabled : 0 as * mut sys :: godot_method_bind , set_cell_mode : 0 as * mut sys :: godot_method_bind , set_checked : 0 as * mut sys :: godot_method_bind , set_collapsed : 0 as * mut sys :: godot_method_bind , set_custom_as_button : 0 as * mut sys :: godot_method_bind , set_custom_bg_color : 0 as * mut sys :: godot_method_bind , set_custom_color : 0 as * mut sys :: godot_method_bind , set_custom_draw : 0 as * mut sys :: godot_method_bind , set_custom_minimum_height : 0 as * mut sys :: godot_method_bind , set_disable_folding : 0 as * mut sys :: godot_method_bind , set_editable : 0 as * mut sys :: godot_method_bind , set_expand_right : 0 as * mut sys :: godot_method_bind , set_icon : 0 as * mut sys :: godot_method_bind , set_icon_max_width : 0 as * mut sys :: godot_method_bind , set_icon_modulate : 0 as * mut sys :: godot_method_bind , set_icon_region : 0 as * mut sys :: godot_method_bind , set_metadata : 0 as * mut sys :: godot_method_bind , set_range : 0 as * mut sys :: godot_method_bind , set_range_config : 0 as * mut sys :: godot_method_bind , set_selectable : 0 as * mut sys :: godot_method_bind , set_suffix : 0 as * mut sys :: godot_method_bind , set_text : 0 as * mut sys :: godot_method_bind , set_text_align : 0 as * mut sys :: godot_method_bind , set_tooltip : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { TreeItemMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "TreeItem\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . add_button = (gd_api . godot_method_bind_get_method) (class_name , "add_button\0" . as_ptr () as * const c_char) ; table . call_recursive = (gd_api . godot_method_bind_get_method) (class_name , "call_recursive\0" . as_ptr () as * const c_char) ; table . clear_custom_bg_color = (gd_api . godot_method_bind_get_method) (class_name , "clear_custom_bg_color\0" . as_ptr () as * const c_char) ; table . clear_custom_color = (gd_api . godot_method_bind_get_method) (class_name , "clear_custom_color\0" . as_ptr () as * const c_char) ; table . deselect = (gd_api . godot_method_bind_get_method) (class_name , "deselect\0" . as_ptr () as * const c_char) ; table . erase_button = (gd_api . godot_method_bind_get_method) (class_name , "erase_button\0" . as_ptr () as * const c_char) ; table . get_button = (gd_api . godot_method_bind_get_method) (class_name , "get_button\0" . as_ptr () as * const c_char) ; table . get_button_count = (gd_api . godot_method_bind_get_method) (class_name , "get_button_count\0" . as_ptr () as * const c_char) ; table . get_button_tooltip = (gd_api . godot_method_bind_get_method) (class_name , "get_button_tooltip\0" . as_ptr () as * const c_char) ; table . get_cell_mode = (gd_api . godot_method_bind_get_method) (class_name , "get_cell_mode\0" . as_ptr () as * const c_char) ; table . get_children = (gd_api . godot_method_bind_get_method) (class_name , "get_children\0" . as_ptr () as * const c_char) ; table . get_custom_bg_color = (gd_api . godot_method_bind_get_method) (class_name , "get_custom_bg_color\0" . as_ptr () as * const c_char) ; table . get_custom_color = (gd_api . godot_method_bind_get_method) (class_name , "get_custom_color\0" . as_ptr () as * const c_char) ; table . get_custom_minimum_height = (gd_api . godot_method_bind_get_method) (class_name , "get_custom_minimum_height\0" . as_ptr () as * const c_char) ; table . get_expand_right = (gd_api . godot_method_bind_get_method) (class_name , "get_expand_right\0" . as_ptr () as * const c_char) ; table . get_icon = (gd_api . godot_method_bind_get_method) (class_name , "get_icon\0" . as_ptr () as * const c_char) ; table . get_icon_max_width = (gd_api . godot_method_bind_get_method) (class_name , "get_icon_max_width\0" . as_ptr () as * const c_char) ; table . get_icon_modulate = (gd_api . godot_method_bind_get_method) (class_name , "get_icon_modulate\0" . as_ptr () as * const c_char) ; table . get_icon_region = (gd_api . godot_method_bind_get_method) (class_name , "get_icon_region\0" . as_ptr () as * const c_char) ; table . get_metadata = (gd_api . godot_method_bind_get_method) (class_name , "get_metadata\0" . as_ptr () as * const c_char) ; table . get_next = (gd_api . godot_method_bind_get_method) (class_name , "get_next\0" . as_ptr () as * const c_char) ; table . get_next_visible = (gd_api . godot_method_bind_get_method) (class_name , "get_next_visible\0" . as_ptr () as * const c_char) ; table . get_parent = (gd_api . godot_method_bind_get_method) (class_name , "get_parent\0" . as_ptr () as * const c_char) ; table . get_prev = (gd_api . godot_method_bind_get_method) (class_name , "get_prev\0" . as_ptr () as * const c_char) ; table . get_prev_visible = (gd_api . godot_method_bind_get_method) (class_name , "get_prev_visible\0" . as_ptr () as * const c_char) ; table . get_range = (gd_api . godot_method_bind_get_method) (class_name , "get_range\0" . as_ptr () as * const c_char) ; table . get_range_config = (gd_api . godot_method_bind_get_method) (class_name , "get_range_config\0" . as_ptr () as * const c_char) ; table . get_suffix = (gd_api . godot_method_bind_get_method) (class_name , "get_suffix\0" . as_ptr () as * const c_char) ; table . get_text = (gd_api . godot_method_bind_get_method) (class_name , "get_text\0" . as_ptr () as * const c_char) ; table . get_text_align = (gd_api . godot_method_bind_get_method) (class_name , "get_text_align\0" . as_ptr () as * const c_char) ; table . get_tooltip = (gd_api . godot_method_bind_get_method) (class_name , "get_tooltip\0" . as_ptr () as * const c_char) ; table . is_button_disabled = (gd_api . godot_method_bind_get_method) (class_name , "is_button_disabled\0" . as_ptr () as * const c_char) ; table . is_checked = (gd_api . godot_method_bind_get_method) (class_name , "is_checked\0" . as_ptr () as * const c_char) ; table . is_collapsed = (gd_api . godot_method_bind_get_method) (class_name , "is_collapsed\0" . as_ptr () as * const c_char) ; table . is_custom_set_as_button = (gd_api . godot_method_bind_get_method) (class_name , "is_custom_set_as_button\0" . as_ptr () as * const c_char) ; table . is_editable = (gd_api . godot_method_bind_get_method) (class_name , "is_editable\0" . as_ptr () as * const c_char) ; table . is_folding_disabled = (gd_api . godot_method_bind_get_method) (class_name , "is_folding_disabled\0" . as_ptr () as * const c_char) ; table . is_selectable = (gd_api . godot_method_bind_get_method) (class_name , "is_selectable\0" . as_ptr () as * const c_char) ; table . is_selected = (gd_api . godot_method_bind_get_method) (class_name , "is_selected\0" . as_ptr () as * const c_char) ; table . move_to_bottom = (gd_api . godot_method_bind_get_method) (class_name , "move_to_bottom\0" . as_ptr () as * const c_char) ; table . move_to_top = (gd_api . godot_method_bind_get_method) (class_name , "move_to_top\0" . as_ptr () as * const c_char) ; table . remove_child = (gd_api . godot_method_bind_get_method) (class_name , "remove_child\0" . as_ptr () as * const c_char) ; table . select = (gd_api . godot_method_bind_get_method) (class_name , "select\0" . as_ptr () as * const c_char) ; table . set_button = (gd_api . godot_method_bind_get_method) (class_name , "set_button\0" . as_ptr () as * const c_char) ; table . set_button_disabled = (gd_api . godot_method_bind_get_method) (class_name , "set_button_disabled\0" . as_ptr () as * const c_char) ; table . set_cell_mode = (gd_api . godot_method_bind_get_method) (class_name , "set_cell_mode\0" . as_ptr () as * const c_char) ; table . set_checked = (gd_api . godot_method_bind_get_method) (class_name , "set_checked\0" . as_ptr () as * const c_char) ; table . set_collapsed = (gd_api . godot_method_bind_get_method) (class_name , "set_collapsed\0" . as_ptr () as * const c_char) ; table . set_custom_as_button = (gd_api . godot_method_bind_get_method) (class_name , "set_custom_as_button\0" . as_ptr () as * const c_char) ; table . set_custom_bg_color = (gd_api . godot_method_bind_get_method) (class_name , "set_custom_bg_color\0" . as_ptr () as * const c_char) ; table . set_custom_color = (gd_api . godot_method_bind_get_method) (class_name , "set_custom_color\0" . as_ptr () as * const c_char) ; table . set_custom_draw = (gd_api . godot_method_bind_get_method) (class_name , "set_custom_draw\0" . as_ptr () as * const c_char) ; table . set_custom_minimum_height = (gd_api . godot_method_bind_get_method) (class_name , "set_custom_minimum_height\0" . as_ptr () as * const c_char) ; table . set_disable_folding = (gd_api . godot_method_bind_get_method) (class_name , "set_disable_folding\0" . as_ptr () as * const c_char) ; table . set_editable = (gd_api . godot_method_bind_get_method) (class_name , "set_editable\0" . as_ptr () as * const c_char) ; table . set_expand_right = (gd_api . godot_method_bind_get_method) (class_name , "set_expand_right\0" . as_ptr () as * const c_char) ; table . set_icon = (gd_api . godot_method_bind_get_method) (class_name , "set_icon\0" . as_ptr () as * const c_char) ; table . set_icon_max_width = (gd_api . godot_method_bind_get_method) (class_name , "set_icon_max_width\0" . as_ptr () as * const c_char) ; table . set_icon_modulate = (gd_api . godot_method_bind_get_method) (class_name , "set_icon_modulate\0" . as_ptr () as * const c_char) ; table . set_icon_region = (gd_api . godot_method_bind_get_method) (class_name , "set_icon_region\0" . as_ptr () as * const c_char) ; table . set_metadata = (gd_api . godot_method_bind_get_method) (class_name , "set_metadata\0" . as_ptr () as * const c_char) ; table . set_range = (gd_api . godot_method_bind_get_method) (class_name , "set_range\0" . as_ptr () as * const c_char) ; table . set_range_config = (gd_api . godot_method_bind_get_method) (class_name , "set_range_config\0" . as_ptr () as * const c_char) ; table . set_selectable = (gd_api . godot_method_bind_get_method) (class_name , "set_selectable\0" . as_ptr () as * const c_char) ; table . set_suffix = (gd_api . godot_method_bind_get_method) (class_name , "set_suffix\0" . as_ptr () as * const c_char) ; table . set_text = (gd_api . godot_method_bind_get_method) (class_name , "set_text\0" . as_ptr () as * const c_char) ; table . set_text_align = (gd_api . godot_method_bind_get_method) (class_name , "set_text_align\0" . as_ptr () as * const c_char) ; table . set_tooltip = (gd_api . godot_method_bind_get_method) (class_name , "set_tooltip\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:292:3784 [INFO] [stdout] | [INFO] [stdout] 292 | ...dTable { class_constructor : None , } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 292 | # [doc = "`core class VisualShaderNodeVectorClamp` inherits `VisualShaderNode` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_visualshadernodevectorclamp.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nVisualShaderNodeVectorClamp inherits methods from:\n - [VisualShaderNode](struct.VisualShaderNode.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct VisualShaderNodeVectorClamp { this : RawObject < Self > , } impl VisualShaderNodeVectorClamp { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = VisualShaderNodeVectorClampMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } } impl gdnative_core :: private :: godot_object :: Sealed for VisualShaderNodeVectorClamp { } unsafe impl GodotObject for VisualShaderNodeVectorClamp { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "VisualShaderNodeVectorClamp" } } impl std :: ops :: Deref for VisualShaderNodeVectorClamp { type Target = crate :: generated :: visual_shader_node :: VisualShaderNode ; # [inline] fn deref (& self) -> & crate :: generated :: visual_shader_node :: VisualShaderNode { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for VisualShaderNodeVectorClamp { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: visual_shader_node :: VisualShaderNode { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: visual_shader_node :: VisualShaderNode > for VisualShaderNodeVectorClamp { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for VisualShaderNodeVectorClamp { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for VisualShaderNodeVectorClamp { } unsafe impl SubClass < crate :: generated :: object :: Object > for VisualShaderNodeVectorClamp { } impl Instanciable for VisualShaderNodeVectorClamp { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { VisualShaderNodeVectorClamp :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct VisualShaderNodeVectorClampMethodTable { pub class_constructor : sys :: godot_class_constructor , } impl VisualShaderNodeVectorClampMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : VisualShaderNodeVectorClampMethodTable = VisualShaderNodeVectorClampMethodTable { class_constructor : None , } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { VisualShaderNodeVectorClampMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "VisualShaderNodeVectorClamp\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:298:3599 [INFO] [stdout] | [INFO] [stdout] 298 | ...dTable { class_constructor : None , } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 298 | # [doc = "`core class AudioStreamMicrophone` inherits `AudioStream` (reference counted)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_audiostreammicrophone.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nThe lifetime of this object is automatically managed through reference counting."] # [doc = "\n## Class hierarchy\n\nAudioStreamMicrophone inherits methods from:\n - [AudioStream](struct.AudioStream.html)\n - [Resource](struct.Resource.html)\n - [Reference](struct.Reference.html)\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct AudioStreamMicrophone { this : RawObject < Self > , } impl AudioStreamMicrophone { # [doc = "Creates a new instance of this object.\n\nThis is a reference-counted type. The returned object is automatically managed\nby `Ref`."] # [inline] pub fn new () -> Ref < Self , thread_access :: Unique > { unsafe { let gd_api = get_api () ; let ctor = AudioStreamMicrophoneMethodTable :: get (gd_api) . class_constructor . unwrap () ; let obj = ptr :: NonNull :: new (ctor ()) . expect ("constructor should not return null") ; Ref :: init_from_sys (obj) } } } impl gdnative_core :: private :: godot_object :: Sealed for AudioStreamMicrophone { } unsafe impl GodotObject for AudioStreamMicrophone { type RefKind = ref_kind :: RefCounted ; # [inline] fn class_name () -> & 'static str { "AudioStreamMicrophone" } } impl std :: ops :: Deref for AudioStreamMicrophone { type Target = crate :: generated :: audio_stream :: AudioStream ; # [inline] fn deref (& self) -> & crate :: generated :: audio_stream :: AudioStream { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for AudioStreamMicrophone { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: audio_stream :: AudioStream { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: audio_stream :: AudioStream > for AudioStreamMicrophone { } unsafe impl SubClass < crate :: generated :: resource :: Resource > for AudioStreamMicrophone { } unsafe impl SubClass < crate :: generated :: reference :: Reference > for AudioStreamMicrophone { } unsafe impl SubClass < crate :: generated :: object :: Object > for AudioStreamMicrophone { } impl Instanciable for AudioStreamMicrophone { # [inline] fn construct () -> Ref < Self , thread_access :: Unique > { AudioStreamMicrophone :: new () } } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct AudioStreamMicrophoneMethodTable { pub class_constructor : sys :: godot_class_constructor , } impl AudioStreamMicrophoneMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : AudioStreamMicrophoneMethodTable = AudioStreamMicrophoneMethodTable { class_constructor : None , } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { AudioStreamMicrophoneMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "AudioStreamMicrophone\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:304:8641 [INFO] [stdout] | [INFO] [stdout] 304 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 304 | # [doc = "`core class PhysicsDirectSpaceState` inherits `Object` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_physicsdirectspacestate.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = ""] # [doc = "\n## Class hierarchy\n\nPhysicsDirectSpaceState inherits methods from:\n - [Object](struct.Object.html)\n"] # [doc = ""] # [doc = "\n## Safety\n\nAll types in the Godot API have \"interior mutability\" in Rust parlance.\nTo enforce that the official [thread-safety guidelines][thread-safety] are\nfollowed, the typestate pattern is used in the `Ref` and `TRef` smart pointers,\nand the `Instance` API. The typestate `Access` in these types tracks whether the\naccess is unique, shared, or exclusive to the current thread. For more information,\nsee the type-level documentation on `Ref`.\n\n[thread-safety]: https://docs.godotengine.org/en/stable/tutorials/threads/thread_safe_apis.html"] # [allow (non_camel_case_types)] # [derive (Debug)] pub struct PhysicsDirectSpaceState { this : RawObject < Self > , } impl PhysicsDirectSpaceState { # [doc = "Checks whether the shape can travel to a point. The method will return an array with two floats between 0 and 1, both representing a fraction of `motion`. The first is how far the shape can move without triggering a collision, and the second is the point at which a collision will occur. If no collision is detected, the returned array will be `[1, 1]`.\nIf the shape can not move, the returned array will be `[0, 0]` under Bullet, and empty under GodotPhysics."] # [doc = ""] # [inline] pub fn cast_motion (& self , shape : impl AsArg < crate :: generated :: physics_shape_query_parameters :: PhysicsShapeQueryParameters > , motion : Vector3) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = PhysicsDirectSpaceStateMethodTable :: get (get_api ()) . cast_motion ; let ret = crate :: icalls :: icallvar__obj_vec3 (method_bind , self . this . sys () . as_ptr () , shape . as_arg_ptr () , motion) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } # [doc = "Checks the intersections of a shape, given through a [PhysicsShapeQueryParameters] object, against the space. The resulting array contains a list of points where the shape intersects another. Like with [method intersect_shape], the number of returned results can be limited to save processing time.\n# Default Arguments\n* `max_results` - `32`"] # [doc = ""] # [inline] pub fn collide_shape (& self , shape : impl AsArg < crate :: generated :: physics_shape_query_parameters :: PhysicsShapeQueryParameters > , max_results : i64) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = PhysicsDirectSpaceStateMethodTable :: get (get_api ()) . collide_shape ; let ret = crate :: icalls :: icallvar__obj_i64 (method_bind , self . this . sys () . as_ptr () , shape . as_arg_ptr () , max_results) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } # [doc = "Checks the intersections of a shape, given through a [PhysicsShapeQueryParameters] object, against the space. If it collides with more than one shape, the nearest one is selected. The returned object is a dictionary containing the following fields:\n`collider_id`: The colliding object's ID.\n`linear_velocity`: The colliding object's velocity [Vector3]. If the object is an [Area], the result is `(0, 0, 0)`.\n`normal`: The object's surface normal at the intersection point.\n`point`: The intersection point.\n`rid`: The intersecting object's [RID].\n`shape`: The shape index of the colliding shape.\nIf the shape did not intersect anything, then an empty dictionary is returned instead."] # [doc = ""] # [inline] pub fn get_rest_info (& self , shape : impl AsArg < crate :: generated :: physics_shape_query_parameters :: PhysicsShapeQueryParameters >) -> Dictionary { unsafe { let method_bind : * mut sys :: godot_method_bind = PhysicsDirectSpaceStateMethodTable :: get (get_api ()) . get_rest_info ; let ret = crate :: icalls :: icallptr_dict_obj (method_bind , self . this . sys () . as_ptr () , shape . as_arg_ptr ()) ; Dictionary :: from_sys (ret) } } # [doc = "Intersects a ray in a given space. The returned object is a dictionary with the following fields:\n`collider`: The colliding object.\n`collider_id`: The colliding object's ID.\n`normal`: The object's surface normal at the intersection point.\n`position`: The intersection point.\n`rid`: The intersecting object's [RID].\n`shape`: The shape index of the colliding shape.\nIf the ray did not intersect anything, then an empty dictionary is returned instead.\nAdditionally, the method can take an `exclude` array of objects or [RID]s that are to be excluded from collisions, a `collision_mask` bitmask representing the physics layers to check in, or booleans to determine if the ray should collide with [PhysicsBody]s or [Area]s, respectively.\n# Default Arguments\n* `exclude` - `[ ]`\n* `collision_mask` - `2147483647`\n* `collide_with_bodies` - `true`\n* `collide_with_areas` - `false`"] # [doc = ""] # [inline] pub fn intersect_ray (& self , from : Vector3 , to : Vector3 , exclude : VariantArray , collision_mask : i64 , collide_with_bodies : bool , collide_with_areas : bool) -> Dictionary { unsafe { let method_bind : * mut sys :: godot_method_bind = PhysicsDirectSpaceStateMethodTable :: get (get_api ()) . intersect_ray ; let ret = crate :: icalls :: icallptr_dict_vec3_vec3_arr_i64_bool_bool (method_bind , self . this . sys () . as_ptr () , from , to , exclude , collision_mask , collide_with_bodies , collide_with_areas) ; Dictionary :: from_sys (ret) } } # [doc = "Checks the intersections of a shape, given through a [PhysicsShapeQueryParameters] object, against the space. The intersected shapes are returned in an array containing dictionaries with the following fields:\n`collider`: The colliding object.\n`collider_id`: The colliding object's ID.\n`rid`: The intersecting object's [RID].\n`shape`: The shape index of the colliding shape.\nThe number of intersections can be limited with the `max_results` parameter, to reduce the processing time.\n# Default Arguments\n* `max_results` - `32`"] # [doc = ""] # [inline] pub fn intersect_shape (& self , shape : impl AsArg < crate :: generated :: physics_shape_query_parameters :: PhysicsShapeQueryParameters > , max_results : i64) -> VariantArray { unsafe { let method_bind : * mut sys :: godot_method_bind = PhysicsDirectSpaceStateMethodTable :: get (get_api ()) . intersect_shape ; let ret = crate :: icalls :: icallvar__obj_i64 (method_bind , self . this . sys () . as_ptr () , shape . as_arg_ptr () , max_results) ; < VariantArray > :: from_variant (& ret) . expect ("Unexpected variant type") } } } impl gdnative_core :: private :: godot_object :: Sealed for PhysicsDirectSpaceState { } unsafe impl GodotObject for PhysicsDirectSpaceState { type RefKind = ref_kind :: ManuallyManaged ; # [inline] fn class_name () -> & 'static str { "PhysicsDirectSpaceState" } } impl std :: ops :: Deref for PhysicsDirectSpaceState { type Target = crate :: generated :: object :: Object ; # [inline] fn deref (& self) -> & crate :: generated :: object :: Object { unsafe { std :: mem :: transmute (self) } } } impl std :: ops :: DerefMut for PhysicsDirectSpaceState { # [inline] fn deref_mut (& mut self) -> & mut crate :: generated :: object :: Object { unsafe { std :: mem :: transmute (self) } } } unsafe impl SubClass < crate :: generated :: object :: Object > for PhysicsDirectSpaceState { } # [doc (hidden)] # [allow (non_camel_case_types , dead_code)] pub (crate) struct PhysicsDirectSpaceStateMethodTable { pub class_constructor : sys :: godot_class_constructor , pub cast_motion : * mut sys :: godot_method_bind , pub collide_shape : * mut sys :: godot_method_bind , pub get_rest_info : * mut sys :: godot_method_bind , pub intersect_ray : * mut sys :: godot_method_bind , pub intersect_shape : * mut sys :: godot_method_bind } impl PhysicsDirectSpaceStateMethodTable { unsafe fn get_mut () -> & 'static mut Self { static mut TABLE : PhysicsDirectSpaceStateMethodTable = PhysicsDirectSpaceStateMethodTable { class_constructor : None , cast_motion : 0 as * mut sys :: godot_method_bind , collide_shape : 0 as * mut sys :: godot_method_bind , get_rest_info : 0 as * mut sys :: godot_method_bind , intersect_ray : 0 as * mut sys :: godot_method_bind , intersect_shape : 0 as * mut sys :: godot_method_bind } ; &raw mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'static Self { unsafe { let table = Self :: get_mut () ; static INIT : :: std :: sync :: Once = Once :: new () ; INIT . call_once (|| { PhysicsDirectSpaceStateMethodTable :: init (table , gd_api) ; }) ; table } } # [inline (never)] # [allow (dead_code)] fn init (table : & mut Self , gd_api : & GodotApi) { unsafe { let class_name = "PhysicsDirectSpaceState\0" . as_ptr () as * const c_char ; table . class_constructor = (gd_api . godot_get_class_constructor) (class_name) ; table . cast_motion = (gd_api . godot_method_bind_get_method) (class_name , "cast_motion\0" . as_ptr () as * const c_char) ; table . collide_shape = (gd_api . godot_method_bind_get_method) (class_name , "collide_shape\0" . as_ptr () as * const c_char) ; table . get_rest_info = (gd_api . godot_method_bind_get_method) (class_name , "get_rest_info\0" . as_ptr () as * const c_char) ; table . intersect_ray = (gd_api . godot_method_bind_get_method) (class_name , "intersect_ray\0" . as_ptr () as * const c_char) ; table . intersect_shape = (gd_api . godot_method_bind_get_method) (class_name , "intersect_shape\0" . as_ptr () as * const c_char) ; } } } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> /opt/rustwide/target/debug/build/gdnative-bindings-lily-7a634cfa4295a760/out/generated.rs:310:18058 [INFO] [stdout] | [INFO] [stdout] 310 | ...0 as * mut sys :: godot_method_bind } ; & mut TABLE } # [inline] # [allow (dead_code)] pub fn get (gd_api : & GodotApi) -> & 'st... [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 310 | # [doc = "`core class Label` inherits `Control` (unsafe)."] # [doc = "## Official documentation\n\nSee the [documentation of this class](https://godot.readthedocs.io/en/latest/classes/class_label.html) in the Godot engine's official documentation.\nThe method descriptions are generated from it and typically contain code samples in GDScript, not Rust."] # [doc = "## Memory management\n\nNon reference counted objects such as the ones of this type are usually owned by the engine.\n\n`Label` is a reference-only type. Persistent references can\nonly exist in the unsafe `Ref