Struct gdnative_core::export::PropertyBuilder
source · [−]pub struct PropertyBuilder<'a, C, T: Export, S = InvalidSetter<'a>, G = InvalidGetter<'a>> { /* private fields */ }
Expand description
Builder type used to register a property on a NativeClass
.
Implementations
sourceimpl<'a, C, T, S, G> PropertyBuilder<'a, C, T, S, G>where
C: NativeClass,
T: Export,
S: RawSetter<C, T>,
G: RawGetter<C, T>,
impl<'a, C, T, S, G> PropertyBuilder<'a, C, T, S, G>where
C: NativeClass,
T: Export,
S: RawSetter<C, T>,
G: RawGetter<C, T>,
sourcepub fn with_setter<NS>(
self,
setter: NS
) -> PropertyBuilder<'a, C, T, Setter<Mut, NS>, G>where
Setter<Mut, NS>: RawSetter<C, T>,
pub fn with_setter<NS>(
self,
setter: NS
) -> PropertyBuilder<'a, C, T, Setter<Mut, NS>, G>where
Setter<Mut, NS>: RawSetter<C, T>,
Provides a setter function with the signature fn(&mut C, owner: C::Base, value: T)
where C
is the NativeClass
type being registered and T
is the type of the property.
sourcepub fn with_shr_setter<NS>(
self,
setter: NS
) -> PropertyBuilder<'a, C, T, Setter<Shr, NS>, G>where
Setter<Shr, NS>: RawSetter<C, T>,
pub fn with_shr_setter<NS>(
self,
setter: NS
) -> PropertyBuilder<'a, C, T, Setter<Shr, NS>, G>where
Setter<Shr, NS>: RawSetter<C, T>,
Provides a setter function with the signature fn(&C, owner: C::Base, value: T)
where C
is the NativeClass
type being registered and T
is the type of the property.
“shr” stands for “shared reference”, as opposed to the more common &mut self
.
sourcepub fn with_getter<NG>(
self,
getter: NG
) -> PropertyBuilder<'a, C, T, S, Getter<Shr, Owned, NG>>where
Getter<Shr, Owned, NG>: RawGetter<C, T>,
pub fn with_getter<NG>(
self,
getter: NG
) -> PropertyBuilder<'a, C, T, S, Getter<Shr, Owned, NG>>where
Getter<Shr, Owned, NG>: RawGetter<C, T>,
Provides a getter function with the signature fn(&C, owner: C::Base) -> T
,
where C
is the NativeClass
type being registered and T
is the type of the property.
sourcepub fn with_ref_getter<NG>(
self,
getter: NG
) -> PropertyBuilder<'a, C, T, S, Getter<Shr, Ref, NG>>where
Getter<Shr, Ref, NG>: RawGetter<C, T>,
pub fn with_ref_getter<NG>(
self,
getter: NG
) -> PropertyBuilder<'a, C, T, S, Getter<Shr, Ref, NG>>where
Getter<Shr, Ref, NG>: RawGetter<C, T>,
Provides a getter function with the signature fn(&C, owner: C::Base) -> &T
,
where C
is the NativeClass
type being registered and T
is the type of the property.
sourcepub fn with_mut_getter<NG>(
self,
getter: NG
) -> PropertyBuilder<'a, C, T, S, Getter<Mut, Owned, NG>>where
Getter<Mut, Owned, NG>: RawGetter<C, T>,
pub fn with_mut_getter<NG>(
self,
getter: NG
) -> PropertyBuilder<'a, C, T, S, Getter<Mut, Owned, NG>>where
Getter<Mut, Owned, NG>: RawGetter<C, T>,
Provides a getter function with the signature fn(&mut C, owner: C::Base) -> T
,
where C
is the NativeClass
type being registered and T
is the type of the property.
sourcepub fn with_mut_ref_getter<NG>(
self,
getter: NG
) -> PropertyBuilder<'a, C, T, S, Getter<Mut, Ref, NG>>where
Getter<Mut, Ref, NG>: RawGetter<C, T>,
pub fn with_mut_ref_getter<NG>(
self,
getter: NG
) -> PropertyBuilder<'a, C, T, S, Getter<Mut, Ref, NG>>where
Getter<Mut, Ref, NG>: RawGetter<C, T>,
Provides a getter function with the signature fn(&mut C, owner: C::Base) -> &T
,
where C
is the NativeClass
type being registered and T
is the type of the property.
sourcepub fn with_default(self, default: T) -> Self
pub fn with_default(self, default: T) -> Self
Sets a default value for the property as a hint to the editor. The setter may or may not be actually called with this value.
sourcepub fn with_usage(self, usage: PropertyUsage) -> Self
pub fn with_usage(self, usage: PropertyUsage) -> Self
Sets a property usage.
Trait Implementations
Auto Trait Implementations
impl<'a, C, T, S, G> RefUnwindSafe for PropertyBuilder<'a, C, T, S, G>where
C: RefUnwindSafe,
G: RefUnwindSafe,
S: RefUnwindSafe,
T: RefUnwindSafe,
<T as Export>::Hint: RefUnwindSafe,
impl<'a, C, T, S = InvalidSetter<'a>, G = InvalidGetter<'a>> !Send for PropertyBuilder<'a, C, T, S, G>
impl<'a, C, T, S = InvalidSetter<'a>, G = InvalidGetter<'a>> !Sync for PropertyBuilder<'a, C, T, S, G>
impl<'a, C, T, S, G> Unpin for PropertyBuilder<'a, C, T, S, G>where
G: Unpin,
S: Unpin,
T: Unpin,
<T as Export>::Hint: Unpin,
impl<'a, C, T, S, G> UnwindSafe for PropertyBuilder<'a, C, T, S, G>where
C: RefUnwindSafe,
G: UnwindSafe,
S: UnwindSafe,
T: UnwindSafe,
<T as Export>::Hint: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more