dart:ffi library
Foreign Function Interface for interoperability with the C programming language.
For further details, please see: https://dart.cn/server/c-interop.
Classes
- Abi
- An application binary interface (ABI).
- AbiSpecificInteger
- The supertype of all Abi-specific integer types.
- AbiSpecificIntegerMapping
- Mapping for a subtype of AbiSpecificInteger.
- Allocator
- Manages memory on the native heap.
-
Array<
T extends NativeType> -
A fixed-sized array of
T
s. - Bool
- Represents a native bool in C.
- Char
-
The C
char
type. - Dart_CObject
- Opaque, not exposing it's members.
- DartRepresentationOf
- DefaultAsset
- Annotation specifying the default asset ID for the current library.
- Double
- Represents a native 64 bit double in C.
- DynamicLibrary
- A dynamically loaded native library.
-
FfiNative<
T> - Annotation to be used for marking an external function as FFI native.
- Finalizable
- Marker interface for objects which should not be finalized too soon.
- Float
- Represents a native 32 bit float in C.
- Handle
-
Represents
Dart_Handle
in C. - Int
-
The C
int
type. - Int16
- Represents a native signed 16 bit integer in C.
- Int32
- Represents a native signed 32 bit integer in C.
- Int64
- Represents a native signed 64 bit integer in C.
- Int8
- Represents a native signed 8 bit integer in C.
- IntPtr
-
The C
intptr_t
type. - Long
-
The C
long int
, aka.long
, type. - LongLong
-
The C
long long
type. -
Native<
T> - Annotation specifying how to bind an external function to native code.
- NativeApi
-
Utilities for accessing the Dart VM API from Dart code or
from C code via
dart_api_dl.h
. - NativeFinalizer
- A native finalizer which can be attached to Dart objects.
-
NativeFunction<
T extends Function> - Represents a function type in C.
- NativeType
- NativeType's subtypes represent a native type in C.
- Opaque
- Opaque's subtypes represent opaque types in C.
- Packed
-
Annotation to specify on
Struct
subtypes to indicate that its members need to be packed. -
Pointer<
T extends NativeType> - Represents a pointer into the native C memory. Cannot be extended.
- Short
-
The C
short
type. - SignedChar
-
The C
signed char
type. - Size
-
The C
size_t
type. - Struct
- The supertype of all FFI struct types.
- Uint16
- Represents a native unsigned 16 bit integer in C.
- Uint32
- Represents a native unsigned 32 bit integer in C.
- Uint64
- Represents a native unsigned 64 bit integer in C.
- Uint8
- Represents a native unsigned 8 bit integer in C.
- UintPtr
-
The C
uintptr_t
type. - Union
- The supertype of all FFI union types.
- UnsignedChar
-
The C
unsigned char
type. - UnsignedInt
-
The C
unsigned int
type. - UnsignedLong
-
The C
unsigned long int
, aka.unsigned long
, type. - UnsignedLongLong
-
The C
unsigned long long
type. - UnsignedShort
-
The C
unsigned short
type. - Unsized
-
VarArgs<
T extends Record> - The types of variadic arguments passed in C.
- Void
- Represents a void type in C.
- WChar
-
The C
wchar_t
type.
Extensions
- AbiSpecificIntegerArray
- Bounds checking indexing methods on Arrays of AbiSpecificInteger.
- AbiSpecificIntegerPointer
- Extension on Pointer specialized for the type argument AbiSpecificInteger.
- AllocatorAlloc
- Extension on Allocator to provide allocation with NativeType.
- ArrayArray
- Bounds checking indexing methods on Arrays of Array.
- BoolArray
- Bounds checking indexing methods on Arrays of Bool.
- BoolPointer
- Extension on Pointer specialized for the type argument Bool.
- DoubleArray
- Bounds checking indexing methods on Arrays of Double.
- DoublePointer
- Extension on Pointer specialized for the type argument Double.
- DynamicLibraryExtension
- Method which must not be invoked dynamically.
- FloatArray
- Bounds checking indexing methods on Arrays of Float.
- FloatPointer
- Extension on Pointer specialized for the type argument Float.
- Int16Array
- Bounds checking indexing methods on Arrays of Int16.
- Int16Pointer
- Extension on Pointer specialized for the type argument Int16.
- Int32Array
- Bounds checking indexing methods on Arrays of Int32.
- Int32Pointer
- Extension on Pointer specialized for the type argument Int32.
- Int64Array
- Bounds checking indexing methods on Arrays of Int64.
- Int64Pointer
- Extension on Pointer specialized for the type argument Int64.
- Int8Array
- Bounds checking indexing methods on Arrays of Int8.
- Int8Pointer
- Extension on Pointer specialized for the type argument Int8.
- NativeFunctionPointer
- Extension on Pointer specialized for the type argument NativeFunction.
- NativePort
-
Extension to retrieve the native
Dart_Port
from a SendPort. - PointerArray
- Bounds checking indexing methods on Arrays of Pointer.
- PointerPointer
- Extension on Pointer specialized for the type argument Pointer.
- StructArray
- Bounds checking indexing methods on Arrays of Struct.
- StructPointer
- Extension on Pointer specialized for the type argument Struct.
- Uint16Array
- Bounds checking indexing methods on Arrays of Uint16.
- Uint16Pointer
- Extension on Pointer specialized for the type argument Uint16.
- Uint32Array
- Bounds checking indexing methods on Arrays of Uint32.
- Uint32Pointer
- Extension on Pointer specialized for the type argument Uint32.
- Uint64Array
- Bounds checking indexing methods on Arrays of Uint64.
- Uint64Pointer
- Extension on Pointer specialized for the type argument Uint64.
- Uint8Array
- Bounds checking indexing methods on Arrays of Uint8.
- Uint8Pointer
- Extension on Pointer specialized for the type argument Uint8.
- UnionArray
- Bounds checking indexing methods on Arrays of Union.
- UnionPointer
- Extension on Pointer specialized for the type argument Union.
Constants
- unsized → const Unsized
-
This NativeType does not have predefined size.
const Unsized()
Properties
Functions
-
sizeOf<
T extends NativeType> () → int - Number of bytes used by native type T.
Typedefs
-
Dart_NativeMessageHandler
= Void Function(Int64, Pointer<
Dart_CObject> ) -
NativeFinalizerFunction
= NativeFunction<
Void Function(Pointer< Void> token)> - The native function type for NativeFinalizers.