dart:ffi

用于与 C 编程语言进行互操作的外部函数接口。

有关更多信息,请参阅: https://dart.ac.cn/server/c-interop

Abi
应用程序二进制接口 (ABI)。
AbiSpecificInteger
所有 Abi-特定整数类型的基类型。
AbiSpecificIntegerMapping
用于 AbiSpecificInteger 子类型的映射。
Allocator
管理原生堆上的内存。
Array<T extends NativeType>
固定大小的 T 数组。
Bool
代表 C 中的原生 bool。
Char
C 中的 char 类型。
Dart_CObject
不公开其成员的不可见。
DartRepresentationOf
DefaultAsset
指定当前库的默认资产 ID 的注解。
Double
代表 C 中的原生 64 位双精度浮点数。
DynamicLibrary
一个动态加载的原生库。
Finalizable
标记接口,用于表示不应过早终 cascination 的对象。
Float
代表 C 中的原生 32 位浮点数。
Handle
代表 C 中的 dart_api.h 中的 Dart_Handle
Int
C 中的 int 类型。
Int16
代表 C 中的原生有符号 16 位整数。
Int32
代表 C 中的原生有符号 32 位整数。
Int64
代表 C 中的原生有符号 64 位整数。
Int8
代表 C 中的原生有符号 8 位整数。
IntPtr
C 中的 intptr_t 类型。
Long
C 中的 long int,也称 long
LongLong
C 中的 long long 类型。
Native<T>
注解将外部声明与其本地实现绑定。
NativeApi
用于从 Dart 代码或通过 dart_api_dl.h 从 C 代码访问 Dart VM API 的实用工具。
NativeCallable<T extends Function>
接受原生函数调用监听的原生可调用项。
NativeFinalizer
可以附加到 Dart 对象上的原生终止器。
NativeFunction<T extends Function>
表示 C 中的函数类型。
NativeType
NativeType 的子类型代表 C 中的原生类型。
Opaque
Opaque 的子类型代表 C 中的不可见类型。
Packed
注解用于指示 Struct 子类型的成员需要打包。
Pointer<T extends NativeType>
代表指向原生 C 内存中的指针。不能扩展。
Short
C 中的 short 类型。
SignedChar
C 中的 signed char 类型。
Size
C 中的 size_t 类型。
SizedNativeType
具有已知大小的 NativeType
Struct
所有 FFI 结构类型的基类型。
Uint16
代表 C 中的原生无符号 16 位整数。
Uint32
代表 C 中的原生无符号 32 位整数。
Uint64
代表 C 中的原生无符号 64 位整数。
Uint8
代表 C 中的原生无符号 8 位整数。
UintPtr
C 中的 uintptr_t 类型。
Union
所有 FFI 联合类型的超类型。
UnsignedChar
C语言的 unsigned char 类型。
UnsignedInt
C语言的 unsigned int 类型。
UnsignedLong
C语言的 unsigned long int,也称为 unsigned long 类型。
UnsignedLongLong
C语言的 unsigned long long 类型。
UnsignedShort
C语言的 unsigned short 类型。
VarArgs<T extends Record>
C语言中传递的可变参数的类型。
Void
表示C语言中的void类型。
WChar
C语言的 wchar_t 类型。

扩展

AbiSpecificIntegerArrayArray<AbiSpecificInteger>
ArrayAbiSpecificInteger 的边界检查索引方法。
AbiSpecificIntegerPointerPointer<T>
针对类型参数 AbiSpecificInteger 的专门化 Pointer 扩展。
AllocatorAllocAllocator
Allocator 上提供使用 NativeType 分配的扩展。
ArrayArrayArray<Array<T>>
ArrayArray 的边界检查索引方法。
BoolArrayArray<Bool>
ArrayBool 的边界检查索引方法。
BoolPointerPointer<Bool>
针对类型参数 Bool 的专门化 Pointer 扩展。
DoubleArrayArray<Double>
ArrayDouble 的边界检查索引方法。
DoublePointerPointer<Double>
针对类型参数 Double 的专门化 Pointer 扩展。
DynamicLibraryExtensionDynamicLibrary
必须不调用动态的方法。
FloatArrayArray<Float>
ArrayFloat 的边界检查索引方法。
FloatPointerPointer<Float>
针对类型参数 Float 的专门化 Pointer 扩展。
Int16ArrayArray<Int16>
Array 中为 Int16 提供边界检查索引方法。
Int16PointerPointer<Int16>
针对类型参数 Int16Pointer 扩展。
Int32ArrayArray<Int32>
Array 中为 Int32 提供边界检查索引方法。
Int32PointerPointer<Int32>
针对类型参数 Int32Pointer 扩展。
Int64ArrayArray<Int64>
Array 中为 Int64 提供边界检查索引方法。
Int64PointerPointer<Int64>
针对类型参数 Int64Pointer 扩展。
Int8ArrayArray<Int8>
Array 中为 Int8 提供边界检查索引方法。
Int8PointerPointer<Int8>
针对类型参数 Int8Pointer 扩展。
NativeFunctionPointerPointer<NativeFunction<NF>>
针对类型参数 NativeFunctionPointer 扩展。
NativePortSendPort
SendPort 中检索本地 Dart_Port 的扩展。
PointerArrayArray<Pointer<T>>
Array 中为 Pointer 提供边界检查索引方法。
PointerPointerPointer<Pointer<T>>
针对类型参数 PointerPointer 扩展。
StructArrayArray<T>
Array 中为 Struct 提供边界检查索引方法。
StructPointerPointer<T>
Pointer 的扩展,专门针对类型参数 Struct
Uint16ArrayArray<Uint16>
Uint16 类型的 Array 上检查边界的索引方法。
Uint16PointerPointer<Uint16>
Pointer 的扩展,专门针对类型参数 Uint16
Uint32ArrayArray<Uint32>
Uint32 类型的 Array 上检查边界的索引方法。
Uint32PointerPointer<Uint32>
Pointer 的扩展,专门针对类型参数 Uint32
Uint64ArrayArray<Uint64>
Uint64 类型的 Array 上检查边界的索引方法。
Uint64PointerPointer<Uint64>
Pointer 的扩展,专门针对类型参数 Uint64
Uint8ArrayArray<Uint8>
Uint8 类型的 Array 上检查边界的索引方法。
Uint8PointerPointer<Uint8>
Pointer 的扩展,专门针对类型参数 Uint8
UnionArrayArray<T>
Union 类型的 Array 上检查边界的索引方法。
UnionPointerPointer<T>
Pointer 的扩展,专门针对类型参数 Union

属性

nullptr Pointer<Never>
表示与 'NULL' 对应的本地 C 内存中的指针,例如地址为 0 的指针。
final

函数

sizeOf<T extends SizedNativeType>() int
本地类型 T 所使用的字节数。

类型别名

Dart_NativeMessageHandler = Void Function(Int64, Pointer<Dart_CObject>)
原生终结器函数 = 原生函数<Void Function(Pointer<Void> token)>
原生终结器的本地函数类型。