The stuff defined in this module is to provide an access to global C++ variables from within your Lisp or Scheme code.
There are certain operators (different for Lisp and Scheme; for Lisp, it is operator&(LFunctionConstructor,T), while in Scheme we define a separate class named SchExtvarConstructor with the operator&(T)) which take a C++ lvalue of either any integer, float, or SString or SReference type.
Such operator should form a dotted pair in which the car is a SExpressionIndirectAccessor object and the cdr is a SExpressionIndirect object which incapsulates the given lvalue. Being evaluated, such a pair returns the current value of the variable; being used as the first argument of SETF, it performs the appropriate assignment.
Definition in file extvar.hpp.
#include "../sexpress/sstring.hpp"
#include "conteval.hpp"
#include "lispform.hpp"
Include dependency graph for extvar.hpp:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.