Github User Fetcher 1.0.0
C Application with Server and GUI
|
#include "duk_internal.h"
Go to the source code of this file.
Macros | |
#define | DUK__BITPACK_LETTER_LIMIT 26 |
#define | DUK__BITPACK_UNDERSCORE 26 |
#define | DUK__BITPACK_FF 27 |
#define | DUK__BITPACK_SWITCH1 29 |
#define | DUK__BITPACK_SWITCH 30 |
#define | DUK__BITPACK_SEVENBIT 31 |
Functions | |
DUK_INTERNAL void | duk_free_hobject_inner (duk_heap *heap, duk_hobject *h) |
DUK_INTERNAL void | duk_free_hbuffer_inner (duk_heap *heap, duk_hbuffer *h) |
DUK_INTERNAL void | duk_free_hstring_inner (duk_heap *heap, duk_hstring *h) |
DUK_INTERNAL void | duk_heap_free_heaphdr_raw (duk_heap *heap, duk_heaphdr *hdr) |
DUK_LOCAL void | duk__free_allocated (duk_heap *heap) |
DUK_LOCAL void | duk__free_refzero_list (duk_heap *heap) |
DUK_LOCAL void | duk__free_markandsweep_finalize_list (duk_heap *heap) |
DUK_LOCAL void | duk__free_stringtable (duk_heap *heap) |
DUK_LOCAL void | duk__free_run_finalizers (duk_heap *heap) |
DUK_INTERNAL void | duk_heap_free (duk_heap *heap) |
DUK_LOCAL duk_bool_t | duk__init_heap_strings (duk_heap *heap) |
DUK_LOCAL duk_bool_t | duk__init_heap_thread (duk_heap *heap) |
DUK_INTERNAL duk_heap * | duk_heap_alloc (duk_alloc_function alloc_func, duk_realloc_function realloc_func, duk_free_function free_func, void *heap_udata, duk_fatal_function fatal_func) |
#define DUK__BITPACK_FF 27 |
Definition at line 10 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
Referenced by duk__init_heap_strings().
#define DUK__BITPACK_LETTER_LIMIT 26 |
Definition at line 8 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
Referenced by duk__init_heap_strings().
#define DUK__BITPACK_SEVENBIT 31 |
Definition at line 13 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
Referenced by duk__init_heap_strings().
#define DUK__BITPACK_SWITCH 30 |
Definition at line 12 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
Referenced by duk__init_heap_strings().
#define DUK__BITPACK_SWITCH1 29 |
Definition at line 11 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
Referenced by duk__init_heap_strings().
#define DUK__BITPACK_UNDERSCORE 26 |
Definition at line 9 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
Referenced by duk__init_heap_strings().
Definition at line 123 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
References DUK_DDD, DUK_DDDPRINT, duk_heap_free_heaphdr_raw(), DUK_HEAPHDR_GET_NEXT, duk_heap::heap_allocated, and next.
Referenced by duk_heap_free().
Definition at line 158 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
References DUK_DDD, DUK_DDDPRINT, duk_heap_free_heaphdr_raw(), DUK_HEAPHDR_GET_NEXT, duk_heap::finalize_list, and next.
Referenced by duk_heap_free().
Definition at line 142 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
References DUK_DDD, DUK_DDDPRINT, duk_heap_free_heaphdr_raw(), DUK_HEAPHDR_GET_NEXT, next, and duk_heap::refzero_list.
Referenced by duk_heap_free().
Definition at line 178 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
References DUK_ASSERT, DUK_D, DUK_DPRINT, DUK_HEAP_CLEAR_MARKANDSWEEP_RUNNING, DUK_HEAP_HAS_FINALIZER_NORESCUE, DUK_HEAP_HAS_MARKANDSWEEP_RUNNING, DUK_HEAP_SET_MARKANDSWEEP_RUNNING, DUK_HEAPHDR_GET_NEXT, DUK_HEAPHDR_GET_TYPE, DUK_HEAPHDR_HAS_FINALIZED, duk_hobject_hasprop_raw(), duk_hobject_run_finalizer(), DUK_HTHREAD_STRING_INT_FINALIZER, DUK_HTYPE_OBJECT, duk_heap::finalize_list, duk_heap::heap_allocated, duk_heap::heap_thread, NULL, and duk_heap::refzero_list.
Referenced by duk_heap_free().
Definition at line 173 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
References duk_heap_free_strtab().
Referenced by duk_heap_free().
DUK_LOCAL duk_bool_t duk__init_heap_strings | ( | duk_heap * | heap | ) |
Definition at line 375 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
References duk_bitdecoder_ctx::data, DUK__BITPACK_FF, DUK__BITPACK_LETTER_LIMIT, DUK__BITPACK_SEVENBIT, DUK__BITPACK_SWITCH, DUK__BITPACK_SWITCH1, DUK__BITPACK_UNDERSCORE, DUK_ASC_UC_A, DUK_ASC_UNDERSCORE, DUK_ASSERT, DUK_ASSERT_DISABLE, duk_bd_decode(), DUK_DDD, DUK_DDDPRINT, DUK_HEAP_NUM_STRINGS, duk_heap_string_intern(), DUK_HEAPHDR_HAS_READONLY, DUK_HSTRING_INCREF, DUK_HSTRING_SET_EVAL_OR_ARGUMENTS, DUK_HSTRING_SET_RESERVED_WORD, DUK_HSTRING_SET_STRICT_RESERVED_WORD, DUK_MEMZERO, DUK_STRDATA_DATA_LENGTH, DUK_STRDATA_MAX_STRLEN, DUK_STRIDX_END_RESERVED, DUK_STRIDX_EVAL, DUK_STRIDX_LC_ARGUMENTS, DUK_STRIDX_START_RESERVED, DUK_STRIDX_START_STRICT_RESERVED, duk_strings_data, error(), duk_heap::heap_udata, duk_bitdecoder_ctx::length, and duk_heap::strs.
Referenced by duk_heap_alloc().
DUK_LOCAL duk_bool_t duk__init_heap_thread | ( | duk_heap * | heap | ) |
Definition at line 468 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
References duk_hthread::builtins, DUK_BIDX_THREAD_PROTOTYPE, DUK_D, DUK_DD, DUK_DDPRINT, DUK_DPRINT, DUK_HOBJECT_CLASS_AS_FLAGS, DUK_HOBJECT_CLASS_THREAD, DUK_HOBJECT_FLAG_EXTENSIBLE, DUK_HOBJECT_FLAG_THREAD, DUK_HOBJECT_SET_PROTOTYPE_UPDREF, duk_hthread_alloc(), duk_hthread_create_builtin_objects(), DUK_HTHREAD_INCREF, duk_hthread_init_stacks(), DUK_HTHREAD_STATE_INACTIVE, duk_heap::heap_thread, duk_hthread::state, duk_hthread::strs, and duk_heap::strs.
Referenced by duk_heap_alloc().
DUK_INTERNAL void duk_free_hbuffer_inner | ( | duk_heap * | heap, |
duk_hbuffer * | h ) |
Definition at line 60 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
References DUK_ASSERT, DUK_DDD, DUK_DDDPRINT, DUK_FREE, DUK_HBUFFER_DYNAMIC_GET_DATA_PTR, DUK_HBUFFER_HAS_DYNAMIC, DUK_HBUFFER_HAS_EXTERNAL, and NULL.
Referenced by duk_heap_free_heaphdr_raw().
DUK_INTERNAL void duk_free_hobject_inner | ( | duk_heap * | heap, |
duk_hobject * | h ) |
Definition at line 29 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
References duk_hthread::callstack, duk_hthread::catchstack, DUK_ASSERT, DUK_FREE, DUK_HOBJECT_GET_PROPS, DUK_HOBJECT_IS_COMPILEDFUNCTION, DUK_HOBJECT_IS_NATIVEFUNCTION, DUK_HOBJECT_IS_THREAD, DUK_UNREF, NULL, and duk_hthread::valstack.
Referenced by duk_heap_free_heaphdr_raw().
DUK_INTERNAL void duk_free_hstring_inner | ( | duk_heap * | heap, |
duk_hstring * | h ) |
Definition at line 71 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
References DUK_ASSERT, DUK_DDD, DUK_DDDPRINT, DUK_HSTRING_HAS_EXTDATA, DUK_UNREF, duk_heap::heap_udata, and NULL.
Referenced by duk_heap_free_heaphdr_raw().
DUK_INTERNAL duk_heap * duk_heap_alloc | ( | duk_alloc_function | alloc_func, |
duk_realloc_function | realloc_func, | ||
duk_free_function | free_func, | ||
void * | heap_udata, | ||
duk_fatal_function | fatal_func ) |
Definition at line 731 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
References duk_heap::alloc_func, duk_heap::call_recursion_depth, duk_heap::call_recursion_limit, duk_heap::curr_thread, duk__init_heap_strings(), duk__init_heap_thread(), DUK_ASSERT, DUK_D, DUK_DD, DUK_DDPRINT, DUK_DPRINT, duk_heap_free(), DUK_HEAP_NUM_STRINGS, DUK_HEAP_STRCACHE_SIZE, duk_hobject_alloc(), DUK_HOBJECT_CLASS_AS_FLAGS, DUK_HOBJECT_CLASS_OBJECT, DUK_HOBJECT_FLAG_EXTENSIBLE, DUK_HOBJECT_INCREF, DUK_LJ_TYPE_UNKNOWN, DUK_MEMZERO, duk_str_unsupported, DUK_STRTAB_CHAIN_SIZE, DUK_STRTAB_DELETED_MARKER, DUK_STRTAB_INITIAL_SIZE, DUK_TVAL_SET_UNDEFINED, DUK_UNREF, DUK_USE_NATIVE_CALL_RECLIMIT, error(), duk_heap::fatal_func, duk_heap::finalize_list, duk_heap::free_func, duk_strcache::h, duk_heap::hash_seed, duk_heap::heap_allocated, duk_heap::heap_object, duk_heap::heap_thread, duk_heap::heap_udata, duk_ljstate::jmpbuf_ptr, duk_heap::lj, NULL, duk_heap::realloc_func, duk_heap::refzero_list, duk_heap::refzero_list_tail, duk_heap::rnd_state, duk_heap::st_size, duk_heap::strcache, duk_heap::strs, duk_heap::strtable, duk_ljstate::type, duk_ljstate::value1, and duk_ljstate::value2.
DUK_INTERNAL void duk_heap_free | ( | duk_heap * | heap | ) |
Definition at line 272 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
References duk__free_allocated(), duk__free_markandsweep_finalize_list(), duk__free_refzero_list(), duk__free_run_finalizers(), duk__free_stringtable(), DUK_D, DUK_DPRINT, duk_heap_mark_and_sweep(), DUK_HEAP_SET_FINALIZER_NORESCUE, DUK_MS_FLAG_SKIP_FINALIZERS, duk_heap::free_func, and duk_heap::heap_udata.
Referenced by duk_heap_alloc().
DUK_INTERNAL void duk_heap_free_heaphdr_raw | ( | duk_heap * | heap, |
duk_heaphdr * | hdr ) |
Definition at line 87 of file duktape-1.5.2/src-separate/duk_heap_alloc.c.
References DUK_ASSERT, DUK_DDD, DUK_DDDPRINT, DUK_FREE, duk_free_hbuffer_inner(), duk_free_hobject_inner(), duk_free_hstring_inner(), DUK_HEAPHDR_GET_TYPE, DUK_HTYPE_BUFFER, DUK_HTYPE_OBJECT, DUK_HTYPE_STRING, and DUK_UNREACHABLE.
Referenced by duk__free_allocated(), duk__free_markandsweep_finalize_list(), and duk__free_refzero_list().