#[repr(i32)]
pub enum DartCObjectType {
Show 14 variants DartNull = 0, DartBool = 1, DartInt32 = 2, DartInt64 = 3, DartDouble = 4, DartString = 5, DartArray = 6, DartTypedData = 7, DartExternalTypedData = 8, DartSendPort = 9, DartCapability = 10, DartNativePointer = 11, DartUnsupported = 12, DartNumberOfTypes = 13,
}
Expand description

A Dart_CObject is used for representing Dart objects as native C data outside the Dart heap. These objects are totally detached from the Dart heap. Only a subset of the Dart objects have a representation as a Dart_CObject.

The string encoding in the ‘value.as_string’ is UTF-8.

All the different types from dart:typed_data are exposed as type kTypedData. The specific type from dart:typed_data is in the type field of the as_typed_data structure. The length in the as_typed_data structure is always in bytes.

The data for kTypedData is copied on message send and ownership remains with the caller. The ownership of data for kExternalTyped is passed to the VM on message send and returned when the VM invokes the Dart_WeakPersistentHandleFinalizer callback; a non-NULL callback must be provided.

https://github.com/dart-lang/sdk/blob/main/runtime/include/dart_native_api.h

Variants§

§

DartNull = 0

§

DartBool = 1

§

DartInt32 = 2

§

DartInt64 = 3

§

DartDouble = 4

§

DartString = 5

§

DartArray = 6

§

DartTypedData = 7

§

DartExternalTypedData = 8

§

DartSendPort = 9

§

DartCapability = 10

§

DartNativePointer = 11

§

DartUnsupported = 12

§

DartNumberOfTypes = 13

Trait Implementations§

source§

impl Clone for DartCObjectType

source§

fn clone(&self) -> DartCObjectType

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DartCObjectType

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl PartialEq for DartCObjectType

source§

fn eq(&self, other: &DartCObjectType) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for DartCObjectType

source§

impl StructuralPartialEq for DartCObjectType

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> DartSafe for T