Branch
Hash :
d05d821d
Author :
Thomas de Grivel
Date :
2025-07-20T23:55:00
split env_eval_equal.c env_eval_quote.c
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
/* kc3
* Copyright from 2022 to 2025 kmx.io <contact@kmx.io>
*
* Permission is hereby granted to use this software granted the above
* copyright notice and this permission paragraph are included in all
* copies and substantial portions of this software.
*
* THIS SOFTWARE IS PROVIDED "AS-IS" WITHOUT ANY GUARANTEE OF
* PURPOSE AND PERFORMANCE. IN NO EVENT WHATSOEVER SHALL THE
* AUTHOR BE CONSIDERED LIABLE FOR THE USE AND PERFORMANCE OF
* THIS SOFTWARE.
*/
#ifndef LIBKC3_ENV_EVAL_QUOTE_H
#define LIBKC3_ENV_EVAL_QUOTE_H
#include "types.h"
/* Evaluator as a code walker for quote/unquote. */
bool env_eval_quote (s_env *env, s_quote *quote,
s_tag *dest);
bool env_eval_quote_array (s_env *env, s_array *array,
s_tag *dest);
bool env_eval_quote_do_block (s_env *env, s_do_block *do_block,
s_tag *dest);
bool env_eval_quote_call (s_env *env, s_call *call, s_tag *dest);
bool env_eval_quote_complex (s_env *env, s_complex *c,
s_tag *dest);
bool env_eval_quote_cow (s_env *env, s_cow *cow,
s_tag *dest);
bool env_eval_quote_list (s_env *env, s_list *list,
s_tag *dest);
bool env_eval_quote_map (s_env *env, s_map *map,
s_tag *dest);
bool env_eval_quote_quote (s_env *env, s_quote *quote,
s_tag *dest);
bool env_eval_quote_struct (s_env *env, s_struct *s,
s_tag *dest);
bool env_eval_quote_tag (s_env *env, s_tag *tag,
s_tag *dest);
bool env_eval_quote_time (s_env *env, s_time *time,
s_tag *dest);
bool env_eval_quote_tuple (s_env *env, s_tuple *tuple,
s_tag *dest);
bool env_eval_quote_unquote (s_env *env,
s_unquote *unquote,
s_tag *dest);
#endif /* LIBKC3_ENV_EVAL_QUOTE_H */