From fc27f71289b84f700efc780ae79eea66f212c0c4 Mon Sep 17 00:00:00 2001 From: Yukihiro Matsumoto Date: Tue, 3 Jul 2012 21:52:11 +0900 Subject: add new function mrb_parser_free() --- include/mruby/compile.h | 1 + src/parse.y | 5 +++++ tools/mirb/mirb.c | 2 +- 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/include/mruby/compile.h b/include/mruby/compile.h index 8f65932ba..42820896e 100644 --- a/include/mruby/compile.h +++ b/include/mruby/compile.h @@ -98,6 +98,7 @@ struct mrb_parser_state { }; struct mrb_parser_state* mrb_parser_new(mrb_state*); +void mrb_parser_free(struct mrb_parser_state*); const char *mrb_parser_filename(struct mrb_parser_state*, const char*); void mrb_parser_parse(struct mrb_parser_state*,mrbc_context*); diff --git a/src/parse.y b/src/parse.y index 63d39ec5f..b0d399a98 100644 --- a/src/parse.y +++ b/src/parse.y @@ -4775,6 +4775,11 @@ mrb_parser_new(mrb_state *mrb) return p; } +void +mrb_parser_free(parser_state *p) { + mrb_pool_close(p->pool); +} + mrbc_context* mrbc_context_new(mrb_state *mrb) { diff --git a/tools/mirb/mirb.c b/tools/mirb/mirb.c index d46bcff3c..8b36cb5a6 100644 --- a/tools/mirb/mirb.c +++ b/tools/mirb/mirb.c @@ -231,7 +231,7 @@ main(void) memset(ruby_code, 0, sizeof(*ruby_code)); memset(ruby_code, 0, sizeof(*last_code_line)); } - mrb_pool_close(parser->pool); + mrb_parser_free(parser); } } mrbc_context_free(mrb, cxt); -- cgit v1.2.3