# Type Alias miri::machine::MemoryKind

source ·

    pub type MemoryKind = MemoryKind<MiriMemoryKind>;

## Aliased Type§

    enum MemoryKind {
        Stack,
        CallerLocation,
        Machine(MiriMemoryKind),
    }

## Variants§

§

### Stack

Stack memory. Error if deallocated except during a stack pop.

§

### CallerLocation

Memory allocated by `caller_location` intrinsic. Error if ever deallocated.

§

### Machine(MiriMemoryKind)

Additional memory kinds a machine wishes to distinguish from the builtin ones.

## Trait Implementations§

source§

### impl From<MiriMemoryKind> for MemoryKind

source§

#### fn from(kind: MiriMemoryKind) -> MemoryKind

Converts to this type from the input type.

## Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain `repr(...)` attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 1 byte

Size for each variant:

- `Stack`: 0 bytes
- `CallerLocation`: 0 bytes
- `Machine`: 1 byte