21 lines
556 B
C
21 lines
556 B
C
#ifndef NODE_T_
|
|
#define NODE_T_
|
|
|
|
#include "data.h"
|
|
|
|
node_t *create_node(node_type_t type);
|
|
node_t *create_symbol_node(const char *symbol);
|
|
node_t *create_string_node(const char *string);
|
|
node_t *create_number_node(double number);
|
|
node_t *create_boolean_node(bool value);
|
|
node_t *create_list_node(void);
|
|
node_t *create_function_ref_node(const char *function_name);
|
|
node_t *create_function_call_node(const char *function_name);
|
|
|
|
void free_node(node_t *node);
|
|
node_t *copy_node(node_t *src);
|
|
|
|
node_t *evaluate_node(exec_context_t *ctx, node_t *node);
|
|
|
|
#endif
|