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.
Modules
Macros
Convenience macro to wrap an object’s method into a
Method
implementor
that can be passed to the engine when registering a class.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.
Defines which number of arguments is valid.
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.
Enums
All possible errors that can occur when converting from Varargs.
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 for mixins, manually registered
#[methods]
blocks that may be applied to multiple types.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
].