From 8bbbbff9a25e74bb0de9cb4d5d02f05cf361eb65 Mon Sep 17 00:00:00 2001 From: Yuichi Nishiwaki Date: Mon, 15 Sep 2014 14:40:18 +0900 Subject: [PATCH] add pic_defined_p --- include/picrin.h | 1 + vm.c | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/include/picrin.h b/include/picrin.h index 3007db00..39b55161 100644 --- a/include/picrin.h +++ b/include/picrin.h @@ -144,6 +144,7 @@ void pic_close(pic_state *); void pic_add_feature(pic_state *, const char *); void pic_define(pic_state *, const char *, pic_value); /* automatic export */ +bool pic_defined_p(pic_state *, struct pic_lib *, const char *); pic_value pic_ref(pic_state *, struct pic_lib *, const char *); void pic_set(pic_state *, struct pic_lib *, const char *, pic_value); pic_value pic_funcall(pic_state *pic, const char *name, pic_list args); diff --git a/vm.c b/vm.c index f0139de6..ad265e9b 100644 --- a/vm.c +++ b/vm.c @@ -425,6 +425,12 @@ pic_define(pic_state *pic, const char *name, pic_value val) pic_export(pic, sym); } +bool +pic_defined_p(pic_state *pic, struct pic_lib *lib, const char *name) +{ + return pic_find_rename(pic, lib->env, pic_intern_cstr(pic, name), NULL); +} + pic_value pic_ref(pic_state *pic, struct pic_lib *lib, const char *name) {