[][src]Module gdnative::object

Structs

Forget
Null

Represents an explicit null reference in method arguments. This works around type inference issues with Option. You may create Nulls with Null::null or GodotObject::null.

RawObject

An opaque struct representing Godot objects. This should never be created on the stack.

Ref

A polymorphic smart pointer for Godot objects whose behavior changes depending on the memory management method of the underlying type and the thread access status.

RefImplBound

Struct to be used for various Ref trait bounds.

TRef

A temporary safe pointer to Godot objects that tracks thread access status. TRef can be coerced into bare references with Deref.

UnRef

Traits

AsArg

Trait for safe conversion from Godot object references into API method arguments. This is a sealed trait with no public interface.

AsVariant

Trait for safe conversion from Godot object references into Variant. This is a sealed trait with no public interface.

GodotObject

Trait for Godot API objects. This trait is sealed, and implemented for generated wrapper types.

Instanciable

GodotObjects that have a zero argument constructor.

LifetimeConstraint

Trait for constraining assume_safe lifetimes to the one of &self when T is reference-counted. This is an internal interface.

PtrWrapper

Specialization trait for Drop behavior.

QueueFree

Manually managed Godot classes implementing queue_free. This trait has no public interface. See Ref::queue_free.

RefKindSpec

Specialization trait depending on RefKind. This is an internal interface.

SafeAsRaw

Trait for persistent Refs that point to valid objects. This is an internal interface.

SafeDeref

Trait for combinations of RefKind and ThreadAccess that can be dereferenced safely. This is an internal interface.

SubClass

Marker trait for API types that are subclasses of another type. This trait is implemented by the bindings generator, and has no public interface. Users should not attempt to implement this trait.