Package-level declarations

Types

Link copied to clipboard
@Serializable
data class Abi01(val version: String = "0.1", val objectTypes: List<ObjectDefinition>? = null, val moduleType: ModuleDefinition? = null, val enumTypes: List<EnumDefinition>? = null, val interfaceTypes: List<InterfaceDefinition>? = null, val importedObjectTypes: List<ImportedObjectDefinition>? = null, val importedModuleTypes: List<ImportedModuleDefinition>? = null, val importedEnumTypes: List<ImportedEnumDefinition>? = null, val importedEnvTypes: List<ImportedEnvDefinition>? = null, val envType: EnvDefinition? = null)

Abi defines a collection of types that describe the data structures used in a Wrapper.

Link copied to clipboard
@Serializable
interface AnyDefinition : IGenericDefinition

Interface representing any definition in a Wrap ABI.

Link copied to clipboard
@Serializable
data class ArrayDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false, val array: ArrayDefinition? = null, val map: MapDefinition? = null, val scalar: ScalarDefinition? = null, val _object: GenericDefinition? = null, val enum: GenericDefinition? = null, val unresolvedObjectOrEnum: GenericDefinition? = null, val item: GenericDefinition? = null) : AnyDefinition

Represents an array definition in a Wrap ABI.

Link copied to clipboard
@Serializable
data class EnumDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false, val comment: String? = null, val constants: List<String>? = null) : IGenericDefinition, WithComment

Represents an enumeration definition in a Wrap ABI.

Link copied to clipboard
@Serializable
data class EnvDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false, val comment: String? = null, val properties: List<PropertyDefinition>? = null, val interfaces: List<GenericDefinition>? = null) : IGenericDefinition, WithComment

A class representing an environment definition in a Wrap ABI.

Link copied to clipboard
@Serializable
data class GenericDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false) : IGenericDefinition

A data class implementing IGenericDefinition.

Link copied to clipboard
@Serializable
interface IGenericDefinition

A sealed interface representing a generic definition in a Wrap ABI.

Link copied to clipboard
@Serializable
interface ImportedDefinition

A sealed interface representing an imported definition in a Wrap ABI.

Link copied to clipboard
@Serializable
data class ImportedEnumDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false, val comment: String? = null, val uri: String, val namespace: String, val nativeType: String, val constants: List<String>? = null) : IGenericDefinition, WithComment, ImportedDefinition

An imported enumeration definition in a Wrap ABI.

Link copied to clipboard
@Serializable
data class ImportedEnvDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false, val comment: String? = null, val uri: String, val namespace: String, val nativeType: String, val properties: List<PropertyDefinition>? = null, val interfaces: List<GenericDefinition>? = null) : IGenericDefinition, WithComment, ImportedDefinition

Data class representing an imported environment definition in a Wrap ABI.

Link copied to clipboard
@Serializable
data class ImportedModuleDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false, val uri: String, val namespace: String, val nativeType: String, val comment: String? = null, val methods: List<MethodDefinition>? = null, val isInterface: Boolean = false) : IGenericDefinition, ImportedDefinition, WithComment

A data class representing an imported module definition in a Wrap ABI.

Link copied to clipboard
@Serializable
data class ImportedObjectDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false, val comment: String? = null, val uri: String, val namespace: String, val nativeType: String, val properties: List<PropertyDefinition>? = null, val interfaces: List<GenericDefinition>? = null) : IGenericDefinition, WithComment, ImportedDefinition

A data class representing an imported object definition in a Wrap ABI.

Link copied to clipboard
@Serializable
data class InterfaceDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false, val uri: String, val namespace: String, val nativeType: String, val capabilities: InterfaceDefinition.CapabilityDefinition? = null) : IGenericDefinition, ImportedDefinition

A data class representing an interface definition in a Wrap ABI.

Link copied to clipboard
@Serializable
data class MapDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false, val comment: String? = null, val array: ArrayDefinition? = null, val scalar: ScalarDefinition? = null, val map: MapDefinition? = null, val _object: GenericDefinition? = null, val enum: GenericDefinition? = null, val unresolvedObjectOrEnum: GenericDefinition? = null, val key: MapKeyDefinition? = null, val value: GenericDefinition? = null) : WithComment, AnyDefinition

Definition of a Map in a Wrap ABI.

Link copied to clipboard
@Serializable
data class MapKeyDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false, val array: ArrayDefinition? = null, val scalar: ScalarDefinition? = null, val map: MapDefinition? = null, val _object: GenericDefinition? = null, val enum: GenericDefinition? = null, val unresolvedObjectOrEnum: GenericDefinition? = null) : AnyDefinition

Definition of a Map key in a Wrap ABI.

Link copied to clipboard
@Serializable
data class MethodDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false, val comment: String? = null, val arguments: List<PropertyDefinition>? = null, val env: MethodDefinition.EnvRequired? = null, val _return: PropertyDefinition? = null) : IGenericDefinition, WithComment

A data class representing a method definition in a Wrap ABI.

Link copied to clipboard
@Serializable
data class ModuleDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false, val comment: String? = null, val methods: List<MethodDefinition>? = null, val imports: List<ModuleDefinition.ImportedModuleRef>? = null, val interfaces: List<GenericDefinition>? = null) : IGenericDefinition, WithComment

A serializable class representing a module definition in a Wrap ABI.

Link copied to clipboard
@Serializable
data class ObjectDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false, val comment: String? = null, val properties: List<PropertyDefinition>? = null, val interfaces: List<GenericDefinition>? = null) : IGenericDefinition, WithComment

Represents an object definition in a Wrap ABI.

Link copied to clipboard
@Serializable
data class PropertyDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false, val comment: String? = null, val array: ArrayDefinition? = null, val scalar: ScalarDefinition? = null, val map: MapDefinition? = null, val _object: GenericDefinition? = null, val enum: GenericDefinition? = null, val unresolvedObjectOrEnum: GenericDefinition? = null) : WithComment, AnyDefinition

Definition of a property in a Wrap ABI.

Link copied to clipboard
@Serializable
data class ScalarDefinition(val type: String, val kind: Int, val name: String? = null, val required: Boolean? = false) : IGenericDefinition

Definition of a scalar in a Wrap ABI. A scalar is a primitive data type that represents a single value.

Link copied to clipboard
@Serializable
interface WithComment

A sealed interface representing a definition with a comment in an ABI.