logo
#[repr(i32)]
pub enum DartCObjectType {
Show 14 variants DartNull, DartBool, DartInt32, DartInt64, DartDouble, DartString, DartArray, DartTypedData, DartExternalTypedData, DartSendPort, DartCapability, DartNativePointer, DartUnsupported, DartNumberOfTypes,
}
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

DartBool

DartInt32

DartInt64

DartDouble

DartString

DartArray

DartTypedData

DartExternalTypedData

DartSendPort

DartCapability

DartNativePointer

DartUnsupported

DartNumberOfTypes

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The resulting type after obtaining ownership.

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

🔬 This is a nightly-only experimental API. (toowned_clone_into)

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

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.