aboutsummaryrefslogtreecommitdiff
path: root/env.h
diff options
context:
space:
mode:
Diffstat (limited to 'env.h')
-rw-r--r--env.h19
1 files changed, 11 insertions, 8 deletions
diff --git a/env.h b/env.h
index 6fcf8cc..744424d 100644
--- a/env.h
+++ b/env.h
@@ -1,16 +1,19 @@
#ifndef ENV_H
#define ENV_H
-struct list;
+#include <sys/queue.h>
+
+struct kv;
+LIST_HEAD(env, kv);
+
struct atom;
-struct list *env_new();
-struct atom *env_lookup(struct list *env, const char *symbol);
-struct list *env_extend(struct list *env, int count, ...); //const char *symbol, struct atom *value
-// struct list *env_extend_env(struct list *enva, struct list *envb);
-int env_set(struct list *env, const char *symbol,
+struct env *env_new();
+struct atom *env_lookup(struct env *env, const char *symbol);
+struct env *env_extend(struct env *env, int count, ...);
+int env_set(struct env *env, const char *symbol,
struct atom *value);
-void env_free(struct list *env);
-struct list *env_clone(struct list *env);
+void env_free(struct env *env);
+struct env *env_clone(struct env *env);
#endif