#include "heap.h"
#include "symrepr.h"
#include "extensions.h"
#include "eval_cps.h"
#include "print.h"
#include "tokpar.h"
#include "env.h"
#include "lbm_memory.h"
#include "lbm_types.h"
#include "lbm_c_interop.h"
#include "lbm_variables.h"
#include "lbm_custom_type.h"
#include "lbm_channel.h"
Go to the source code of this file.
|
int | lbm_init (lbm_cons_t *heap_storage, lbm_uint heap_size, lbm_uint gc_stack_size, lbm_uint *memory, lbm_uint memory_size, lbm_uint *memory_bitmap, lbm_uint bitmap_size, lbm_uint *print_stack_storage, lbm_uint print_stack_size, extension_fptr *extension_storage, int extension_storage_size) |
|
◆ lbm_init()
int lbm_init |
( |
lbm_cons_t * |
heap_storage, |
|
|
lbm_uint |
heap_size, |
|
|
lbm_uint |
gc_stack_size, |
|
|
lbm_uint * |
memory, |
|
|
lbm_uint |
memory_size, |
|
|
lbm_uint * |
memory_bitmap, |
|
|
lbm_uint |
bitmap_size, |
|
|
lbm_uint * |
print_stack_storage, |
|
|
lbm_uint |
print_stack_size, |
|
|
extension_fptr * |
extension_storage, |
|
|
int |
extension_storage_size |
|
) |
| |
Initialize lispBM. This function initials all subsystems by calling:
- Parameters
-
heap_storage | Pointer to array of lbm_cons_t to use as heap. This array must be aligned 4 at least. |
heap_size | Size of heap storage array in number of lm_cons_t. |
memory | Pointer to lbm_uint array to use for the arrays and symbols memory. This array must be aligned 4 at least. |
memory_size | Size of the memory array. |
memory_bitmap | Pointer to lbm_uint array to use for the memory subsystem meta-data. |
bitmap_size | Size of the memory meta-data array. |
print_stack_storage | Pointer to lbm_uint array to use as print_value stack. |
print_stack_size | Size in number of lbm_uint values of the print stack. |
extension_storage | Pointer to array of extension_fptr. |
extension_storage_size | Size of extension array. |
- Returns
- 1 on success and 0 on failure.