using Cpp_function_id = std::uint64_t
using Function2 = Result(*)(Environment *env, List *args)
using kernel_ptr = sbn::pointer< Kernel >
using Cpp_function = Result(*)(Environment *env, Object *args)
enum Type
  • Void = 0
  • Integer = 1
  • Cell = 2
  • Symbol = 3
  • Primitive = 4
  • Function = 5
  • Macro = 6
  • Environment = 7
  • Boolean = 8
  • Float = 9
  • Async = 10
class lisp::Kernel
Base classes
Derived classes
Methods
  • index(size_t rhs) -> void
  • index() const -> size_t
  • expression(Object * rhs) -> void
  • expression() const -> const Object *
  • expression() -> Object *
  • environment(Environment * rhs) -> void
  • environment() const -> const Environment *
  • environment() -> Environment *
  • result(Object * rhs) -> void
  • result() const -> const Object *
  • result() -> Object *
  • read(sbn::kernel_buffer & in) -> voidvirtual
  • write(sbn::kernel_buffer & out) const -> voidvirtual
  • react(sbn::kernel_ptr && child) -> voidvirtual

    Collects the output from the task from subordinate kernel child.

  • act() -> voidvirtual

    Performs the task or launches subordinate kernels to do so.

  • Kernel(Environment * env, Object * expr, size_t index)
  • Kernel(Environment * env, Object * expr)
  • Kernel()
class lisp::Allocator
Types
  • using size_type = std::size_t
  • using pointer = void *
Structs
  • struct lisp::Allocator::Page
Methods
class lisp::Function
Base classes
Fields
Methods
class lisp::Primitive
Base classes
Fields
  • Cpp_function_id _id
  • Cpp_function function
Methods
class lisp::Environment
Base classes
Fields
  • sys::u32 parallel
Methods
class lisp::Boolean
Base classes
Fields
  • bool value
Methods
class lisp::Object
Derived classes
Fields
Methods
  • operator delete[](void * ptr) -> void
  • operator delete(void * ptr) -> void
  • operator new[](std::size_t size) -> void *
  • operator new(std::size_t size) -> void *
  • operator=(Object &&) -> Object &
  • Object(Object &&)
  • operator=(const Object &) -> Object &
  • Object(const Object &)
  • ~Object()virtual
  • Object()
  • empty() const -> bool
  • equals(Object * rhs) const -> boolvirtual
  • eval(Environment * env) -> Resultvirtual
  • read(sbn::kernel_buffer & in) -> voidvirtual
  • write(sbn::kernel_buffer & out) const -> voidvirtual
  • write(std::ostream & out) const -> voidvirtual
  • Object(Type t)explicit
class lisp::Cell
Base classes
Methods
class lisp::Symbol
Base classes
Fields
  • std::string name
Methods
class lisp::Integer
Base classes
Fields
  • int64_t value
Methods
class lisp::Main
Base classes
Methods
  • react(sbn::kernel_ptr && child) -> voidvirtual

    Collects the output from the task from subordinate kernel child.

  • act() -> voidvirtual

    Performs the task or launches subordinate kernels to do so.

  • Main(int argc, char ** argv, Environment * env)
  • Main()
class lisp::Float
Base classes
Fields
  • float value
Methods
class lisp::List
Base classes
Methods
struct lisp::Result
Fields
  • kernel_ptr kernel
  • Object * object
Methods
struct lisp::string_view
Types
  • using size_type = size_t
  • using iterator = const_iterator
  • using const_iterator = const value_type *
  • using value_type = char
Fields
  • iterator orig
  • iterator last
  • iterator first
Methods
  • operator=(string_view &&) -> string_view &
  • string_view(string_view &&)
  • operator=(const string_view &) -> string_view &
  • string_view(const string_view &)
  • ~string_view()
  • string_view()
  • operator!=(string_view rhs) const -> bool
  • operator==(string_view rhs) const -> bool
  • is_symbol() const -> bool
  • is_real() const -> bool
  • is_integer() const -> bool
  • read_atom() -> Object *
  • read_list() -> Object *
  • scan_for_matching_bracket() const -> iterator
  • skip_until_the_next_white_space() -> void
  • skip_until_the_end_of_the_line() -> void
  • trim_left() -> void
  • trim() -> void
  • front() const -> char
  • empty() const -> bool
  • size() const -> size_type
  • data() const -> iterator
  • string_view(iterator a, iterator b, iterator orig)
  • string_view(iterator a, iterator b)
  • string_view(const std::string & s)
  • string_view(const char * s)
read(sbn::kernel_buffer & in) -> Object *
make_main_kernel() -> Kernel *
car(Object * x) -> Object *
to_string(const Object * obj) -> std::string
make_top_environment() -> Environment *
equal(Object * a, Object * b) -> Object *
define(Environment * env, const char * name, Cpp_function function, Cpp_function_id id) -> void
operator<<(std::ostream & out, Type rhs) -> std::ostream &
to_boolean(Object * object) -> bool
operator<<(std::ostream & out, const Object * obj) -> std::ostream &
template <class Target>
cast(Object * object) -> Target *
operator<<(std::ostream & out, const Result & result) -> std::ostream &
operator>>(sbn::kernel_buffer & in, Object *& rhs) -> sbn::kernel_buffer &
make(Type type) -> Object *
eval(Environment * env, Object * obj) -> Result
init() -> void
cons(Object * car, Object * cdr) -> Cell *
define(Environment * env, const char * name, Function2 function, Cpp_function_id function_id) -> void
operator<<(sbn::kernel_buffer & out, const Object * obj) -> sbn::kernel_buffer &
define(Environment * env, const char * name, Object * value) -> void
to_string(Type t) -> const char *
cdr(Object * x) -> Object *
read(const char * string) -> Object *
read(string_view & s) -> Object *
intern(lisp::string_view name) -> Symbol *
operator<<(std::ostream & out, const string_view & rhs) -> std::ostream &