70 lines
826 B
C
70 lines
826 B
C
|
|
#include <debug.h>
|
|
|
|
#include "../defines/BUILTIN_PARAMETER_DECLARATION.h"
|
|
|
|
#include "let.h"
|
|
|
|
struct value* builtin_let(
|
|
BUILTIN_PARAMETER_DECLARATION)
|
|
{
|
|
ENTER;
|
|
|
|
TODO;
|
|
#if 0
|
|
if (arguments->kind == vk_null)
|
|
{
|
|
TODO;
|
|
|
|
exit(1);
|
|
}
|
|
|
|
assert(arguments->kind == vk_list);
|
|
|
|
struct list_value* arguments_lv = &arguments->subvalue.list;
|
|
|
|
struct value* first = arguments_lv->first;
|
|
|
|
struct value* rest = arguments_lv->rest;
|
|
|
|
if (rest->kind == vk_null)
|
|
{
|
|
TODO;
|
|
exit(1);
|
|
}
|
|
|
|
assert(rest->kind == vk_list);
|
|
|
|
struct value* second = rest->first;
|
|
|
|
if (second->rest->kind != vk_null)
|
|
{
|
|
TODO;
|
|
exit(1);
|
|
}
|
|
|
|
TODO;
|
|
|
|
TODO;
|
|
#endif
|
|
|
|
EXIT;
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|