[−][src]Struct refloctopus::FieldsCursor
A cursor into the in-memory densely packed field metadata for a particular type.
Using this directly is not advised, it is very easy to misuse. The reflect generates code that drives this cursor for writing the reflection db during startup, and there are readers of this metadata in the serde implementations.
Safety
This can both read and write, and does no bounds checking in release mode. It essentially transmutes every time it is touched. Be cautious!
During debug builds, the type IDs will be recorded and verified to try and ensure runtime type safety but this is mostly for the the tests. If the state of the field visitor and the datashape ever start disagreeing, lots of corruption will be had.
Implementations
impl<'db> FieldsCursor<'db>
[src]
pub unsafe fn array<T: HasKey>(&self, len: &ExpectArr<T>) -> &'db [T]
[src]
pub unsafe fn write_enum_arm(&self, arm: EnumArm<'db>)
[src]
pub unsafe fn write_field(&self, field: Field<'db>)
[src]
pub unsafe fn write_shape(&self, shape: DataShape<'db>)
[src]
pub unsafe fn shape(&self, _: &Expect<DataShape<'db>>) -> &'db DataShape<'db>
[src]
pub unsafe fn field(&self, _: &Expect<Field<'db>>) -> &'db Field<'db>
[src]
pub unsafe fn peek_first_field(
&self,
_: &ExpectArr<Field<'db>>
) -> &'db Field<'db>
[src]
&self,
_: &ExpectArr<Field<'db>>
) -> &'db Field<'db>
Trait Implementations
impl<'db> Clone for FieldsCursor<'db>
[src]
pub fn clone(&self) -> FieldsCursor<'db>
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
Auto Trait Implementations
impl<'db> !RefUnwindSafe for FieldsCursor<'db>
[src]
impl<'db> !Send for FieldsCursor<'db>
[src]
impl<'db> !Sync for FieldsCursor<'db>
[src]
impl<'db> Unpin for FieldsCursor<'db>
[src]
impl<'db> UnwindSafe for FieldsCursor<'db>
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Erasable for T
pub unsafe fn unerase(this: NonNull<Erased>) -> NonNull<T>
pub const ACK_1_1_0: bool
pub fn erase(this: NonNull<Self>) -> NonNull<Erased>
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,