Module gdnative_core::export
source · [−]Expand description
Functionality for user-defined types exported to the engine (native scripts).
NativeScript allows users to have their own scripts in a native language (in this case Rust). It is not the same as GDNative, the native interface to call into Godot. Symbols in this module allow registration, exporting and management of user-defined types which are wrapped in native scripts.
If you are looking for how to manage Godot core types or classes (objects), check
out the core_types
and object
modules, respectively.
To handle initialization and shutdown of godot-rust, take a look at the init
module.
For full examples, see examples
in the godot-rust repository.
Re-exports
pub use crate::godot_wrap_method;
Modules
Structs
Builder for providing additional argument information for error reporting.
Error during argument parsing.
Allows registration of exported properties, methods and signals.
Metadata about the exported property.
Builder type used to register a method on a NativeClass
.
Placeholder type for exported properties with no backing field.
Builder type used to register a property on a NativeClass
.
Class to construct a signal. Make sure to call Self::done()
in the end.
Parameter in a signal declaration.
Adapter for methods whose arguments are statically determined. If the arguments would fail to
type check, the method will print the errors to Godot’s debug console and return null
.
Safe interface to a list of borrowed method arguments with a convenient API for common operations with them. Can also be used as an iterator.
Enums
Traits
Trait for exportable types.
Trait for structures that can be parsed from Varargs
.
Safe low-level trait for stateful, variadic methods that can be called on a native script type.
Trait used for describing and initializing a Godot script class.
Trait used to provide information of Godot-exposed methods of a script class.
Trait for types that can be used as the owner
arguments of exported methods. This trait
is sealed and has no public interface.
Trait for methods whose argument lists are known at compile time. Not to be confused with a “static method”.
A NativeScript “class” that is statically named. NativeClass
types that implement this
trait can be registered using [InitHandle::add_class
].