tree: 1ee7b0f1ebdd78aa74b07d060e5cdde9cc9a6985 [path history] [tgz]
  1. src/
  2. Cargo.toml
  3. LICENSE-APACHE
  4. LICENSE-MIT
  5. README.md
linked-list-allocator/README.md

linked-list-allocator

Build Status

Documentation

Usage

Create a static allocator in your root module:

use linked_list_allocator::LockedHeap;

#[global_allocator]
static ALLOCATOR: LockedHeap = LockedHeap::empty();

Before using this allocator, you need to init it:

pub fn init_heap() {
    let heap_start = …;
    let heap_end = …;
    let heap_size = heap_end - heap_start;
    unsafe {
        ALLOCATOR.lock().init(heap_start, heap_size);
    }
}

License

This crate is dual-licensed under MIT or the Apache License (Version 2.0). See LICENSE-APACHE and LICENSE-MIT for details.