mirror of
https://github.com/urbit/shrub.git
synced 2024-12-21 01:41:37 +03:00
73 lines
2.0 KiB
C
73 lines
2.0 KiB
C
/* include/all.h
|
|
**
|
|
** This file is in the public domain.
|
|
*/
|
|
/** Prefix definitions:
|
|
***
|
|
*** u2_ca_: fundamental allocators.
|
|
*** u2_cc_: constants.
|
|
*** u2_ch_: HAMT hash tables.
|
|
*** u2_ci_: noun constructors
|
|
*** u2_cj_: jets.
|
|
*** u2_ck*: direct jet calls (modern C convention)
|
|
*** u2_cm_: system management etc.
|
|
*** u2_cn_: nock interpreter.
|
|
*** u2_co_: fundamental macros.
|
|
*** u2_cq*: direct jet calls (archaic C convention)
|
|
*** u2_cr_: read functions which never bail out.
|
|
*** u2_cs_: structures and definitions.
|
|
*** u2_ct_: tracing.
|
|
*** u2_cw_: direct jet calls (core noun convention)
|
|
*** u2_cx_: read functions which do bail out.
|
|
*** u2_cz_: memoization.
|
|
***
|
|
*** u2_cr_, u2_cx_ functions use retain conventions; the caller
|
|
*** retains ownership of passed-in nouns, the callee preserves
|
|
*** ownership of returned nouns.
|
|
***
|
|
*** Unless documented otherwise, all other functions use transfer
|
|
*** conventions; the caller logically releases passed-in nouns,
|
|
*** the callee logically releases returned nouns.
|
|
***
|
|
*** In general, exceptions to the transfer convention all occur
|
|
*** when we're using a noun as a key.
|
|
**/
|
|
|
|
/** c: the c3 layer, C portability and definitions.
|
|
**/
|
|
# include "c/portable.h"
|
|
# include "c/tune.h"
|
|
# include "c/types.h"
|
|
# include "c/defs.h"
|
|
# include "c/motes.h"
|
|
# include "c/comd.h"
|
|
|
|
/** n: the u2 layer, definitions and data structures.
|
|
**/
|
|
# include "n/tune.h"
|
|
# include "n/noun.h"
|
|
# include "n/hash.h"
|
|
# include "n/road.h"
|
|
# include "n/jets.h"
|
|
# include "n/meze.h"
|
|
# include "n/glob.h"
|
|
|
|
/** g: the u2 layer, functions.
|
|
**/
|
|
# include "g/a.h"
|
|
# include "g/h.h"
|
|
# include "g/i.h"
|
|
# include "g/j.h"
|
|
# include "g/m.h"
|
|
# include "g/n.h"
|
|
# include "g/r.h"
|
|
# include "g/t.h"
|
|
# include "g/x.h"
|
|
# include "g/z.h"
|
|
|
|
/** j: the u2 layer, jets.
|
|
**/
|
|
# include "j/k.h"
|
|
# include "j/w.h"
|
|
# include "j/q.h"
|