Enum re_types_builder::Type
source · pub enum Type {
Show 17 variants
Unit,
UInt8,
UInt16,
UInt32,
UInt64,
Int8,
Int16,
Int32,
Int64,
Bool,
Float16,
Float32,
Float64,
String,
Array {
elem_type: ElementType,
length: usize,
},
Vector {
elem_type: ElementType,
},
Object(String),
}
Expand description
The underlying type of an ObjectField
.
Variants§
Unit
This is the unit type, used for enum
variants.
In arrow
, this corresponds to the null
type.
In rust this would be ()
, and in C++ this would be void
.
UInt8
UInt16
UInt32
UInt64
Int8
Int16
Int32
Int64
Bool
Float16
Float32
Float64
String
Array
Vector
Fields
§
elem_type: ElementType
Object(String)
Implementations§
source§impl Type
impl Type
pub fn from_raw_type( virtpath: &str, enums: &[FbsEnum<'_>], objs: &[FbsObject<'_>], field_type: FbsType<'_>, attrs: &Attributes, fqname: &str, ) -> Self
pub fn make_plural(&self) -> Option<Self>
sourcepub fn plural_inner(&self) -> Option<&ElementType>
pub fn plural_inner(&self) -> Option<&ElementType>
Returns element type for arrays and vectors.
pub fn vector_inner(&self) -> Option<&ElementType>
sourcepub fn fqname(&self) -> Option<&str>
pub fn fqname(&self) -> Option<&str>
Some(fqname)
if this is an Object
or an Array
/Vector
of Object
s.
sourcepub fn has_default_destructor(&self, objects: &Objects) -> bool
pub fn has_default_destructor(&self, objects: &Objects) -> bool
Is the destructor trivial/default (i.e. is this simple data with no allocations)?
pub fn is_union(&self, objects: &Objects) -> bool
Trait Implementations§
source§impl From<ElementType> for Type
impl From<ElementType> for Type
source§fn from(typ: ElementType) -> Self
fn from(typ: ElementType) -> Self
Converts to this type from the input type.
source§impl PartialEq for Type
impl PartialEq for Type
impl Eq for Type
impl StructuralPartialEq for Type
Auto Trait Implementations§
impl Freeze for Type
impl RefUnwindSafe for Type
impl Send for Type
impl Sync for Type
impl Unpin for Type
impl UnwindSafe for Type
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more