Crate mun_abi

source ·
Expand description

The Mun ABI

The Mun ABI defines the binary format used to communicate between the Mun Compiler and Mun Runtime.

Modules

A StaticTypeMap is a map that maps from a type to a value.

Structs

Represents an array of a specific type.
Represents an assembly declaration.
Represents a function dispatch table. This is used for runtime linking.
Represents a function definition. A function definition contains the name, type signature, and a pointer to the implementation.
Represents a function prototype. A function prototype contains the name, type signature, but not an implementation.
Represents a function signature.
Represents a globally unique identifier (GUID).
Represents a module declaration.
Represents a pointer to another type.
Represents a struct declaration.
Represents the type declaration for a type that is exported by an assembly.
Represents a lookup table for type information. This is used for runtime linking.

Enums

Represents the privacy level of modules, functions, or variables.
Represents the kind of memory management a struct uses.
Contains data specific to a group of types that illicit the same characteristics.
Represents a unique identifier for types. The runtime can use this to lookup the corresponding [TypeInfo]. A TypeId is a key for a [TypeInfo].

Constants

Defines the current ABI version
Defines the name for the get_info function
Defines the name for the get_version function
Defines the name for the set_allocator_handle function

Traits

A trait that defines that for a type we can statically return a TypeId.
A trait that defines that for a type we can statically return a type name.
Defines functions for built-in types like f32, i32, etc.