Uniot Core
0.8.1
Loading...
Searching...
No Matches

Helper utilities and type definitions for working with UniotLisp. More...

Collaboration diagram for Helper:

Classes

class  uniot::Lisp
 Utility class for working with Lisp objects in C++. More...
 

Macros

#define getPrimitiveName()
 Macro to get the current function name.
 
#define exportPrimitiveNameTo(name)
 Exports the current function name to a provided variable.
 

Typedefs

using uniot::lisp::Object = struct Obj *
 A pointer to a Lisp object structure.
 
using uniot::lisp::VarObject = struct Obj **
 A pointer to a pointer to a Lisp object structure.
 
using uniot::lisp::Root = void *
 A generic pointer representing the root of a Lisp environment.
 

Detailed Description

Helper utilities and type definitions for working with UniotLisp.

This file provides wrapper types and utility functions to simplify the usage of the UniotLisp interpreter within the Uniot Core.

Macro Definition Documentation

◆ exportPrimitiveNameTo

#define exportPrimitiveNameTo ( name)
Value:
char name[sizeof(__func__)]; \
snprintf(name, sizeof(name), __func__)

Exports the current function name to a provided variable.

Parameters
nameThe variable name that will hold the function name.

◆ getPrimitiveName

#define getPrimitiveName ( )
Value:
(__func__)

Macro to get the current function name.

Return values
nameThe name of the current function.

Typedef Documentation

◆ Object

using uniot::lisp::Object = struct Obj *

A pointer to a Lisp object structure.

◆ Root

using uniot::lisp::Root = void *

A generic pointer representing the root of a Lisp environment.

◆ VarObject

using uniot::lisp::VarObject = struct Obj **

A pointer to a pointer to a Lisp object structure.

Used for functions that may modify the Lisp object reference.