Archived
1
0
Fork 0
This repository has been archived on 2023-11-10. You can view files and clone it, but cannot push or open issues or pull requests.
lispy/lval/expressions.h

27 lines
701 B
C
Raw Normal View History

2018-06-07 19:10:53 -04:00
#ifndef LVAL_EXPRESSIONS
#define LVAL_EXPRESSIONS
#include "base.h"
// Constructors for the SEXPR and QEXPR data type
lval* lval_sexpr(void);
lval* lval_qexpr(void);
/*
--------------------------------------------------------
Add the functionality to be able to add or remove
expressions from the group
*/
lval* lval_add(lval* v, lval* x);
// Remove an expression from the group and return it
lval* lval_pop(lval* v, int i);
// Remove an expression from the group and delete the rest the group
lval* lval_take(lval* v, int i);
/* ----------------------------------------------------*/
// Adds the ability to evalutate each expression in the group
lval* lval_eval_sexpr(lval* v);
#endif