diff options
| author | take_cheeze <[email protected]> | 2013-09-01 22:43:17 +0900 |
|---|---|---|
| committer | take_cheeze <[email protected]> | 2013-09-02 00:48:06 +0900 |
| commit | 3d1fffbd6bce3a6f9a77af3116078574ce8d5fe9 (patch) | |
| tree | 35d6c58a23442ca055671c3b9e34f736153bc4ec /src/parse.y | |
| parent | bc131350d416409220fd3294d2ffcea3ae73027d (diff) | |
| download | mruby-3d1fffbd6bce3a6f9a77af3116078574ce8d5fe9.tar.gz mruby-3d1fffbd6bce3a6f9a77af3116078574ce8d5fe9.zip | |
support multiple filename in irep
Diffstat (limited to 'src/parse.y')
| -rw-r--r-- | src/parse.y | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/parse.y b/src/parse.y index bbad88949..9ebcd5d98 100644 --- a/src/parse.y +++ b/src/parse.y @@ -120,6 +120,7 @@ cons_gen(parser_state *p, node *car, node *cdr) c->car = car; c->cdr = cdr; c->lineno = p->lineno; + c->filename = p->filename; return c; } #define cons(a,b) cons_gen(p,(a),(b)) @@ -5179,6 +5180,13 @@ mrbc_partial_hook(mrb_state *mrb, mrbc_context *c, int (*func)(struct mrb_parser c->partial_data = data; } +void +mrb_parser_set_filename(struct mrb_parser_state* p, char const* f) +{ + p->filename = mrbc_filename(p->mrb, p->cxt, f); + p->lineno = 1; +} + #ifdef ENABLE_STDIO parser_state* mrb_parse_file(mrb_state *mrb, FILE *f, mrbc_context *c) |
