#include <iostream>
#include "Cell.hpp"
Go to the source code of this file.
Functions | |
Cell * | make_int (const int i) |
Make an int cell. | |
Cell * | make_double (const double d) |
Make a double cell. | |
Cell * | make_symbol (const char *const s) |
Make a symbol cell. | |
Cell * | cons (Cell *const my_car, Cell *const my_cdr) |
Make a conspair cell. | |
bool | nullp (Cell *const c) |
Check if c points to an empty list, i.e., is a null pointer. | |
bool | listp (Cell *const c) |
Check if c points to a list (i.e., nil or a cons cell). | |
bool | intp (Cell *const c) |
Check if c points to an int cell. | |
bool | doublep (Cell *const c) |
Check if c points to a double cell. | |
bool | symbolp (Cell *const c) |
Check if c points to a symbol cell. | |
int | get_int (Cell *const c) |
Accessor (error if c is not an int cell). | |
double | get_double (Cell *const c) |
Accessor (error if c is not a double cell). | |
string | get_symbol (Cell *const c) |
Retrieve the symbol name as a string (error if c is not a symbol cell). | |
Cell * | car (Cell *const c) |
Accessor (error if c is not a cons cell). | |
Cell * | cdr (Cell *const c) |
Accessor (error if c is not a string cell). | |
ostream & | operator<< (ostream &os, const Cell &c) |
Print the subtree rooted at c, in s-expression notation. | |
Variables | |
Cell *const | nil |
The null pointer value. |
|
Accessor (error if c is not a cons cell).
|
|
Accessor (error if c is not a string cell).
|
|
Make a conspair cell.
|
|
Check if c points to a double cell.
|
|
Accessor (error if c is not a double cell).
|
|
Accessor (error if c is not an int cell).
|
|
Retrieve the symbol name as a string (error if c is not a symbol cell).
|
|
Check if c points to an int cell.
|
|
Check if c points to a list (i.e., nil or a cons cell).
|
|
Make a double cell.
|
|
Make an int cell.
|
|
Make a symbol cell.
|
|
Check if c points to an empty list, i.e., is a null pointer.
|
|
Print the subtree rooted at c, in s-expression notation.
|
|
Check if c points to a symbol cell.
|
|
The null pointer value.
|