diff --git a/ChangeLog b/ChangeLog index cc44a05083..54115c3d36 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Wed Dec 10 18:07:25 2003 Minero Aoki + + * lib/erb.rb: new method ERB#filename(=). [ruby-dev:22208] + Wed Dec 10 17:54:51 2003 Nobuyoshi Nakada * ext/stringio/stringio.c (strio_read): do not set EOF flag when diff --git a/lib/erb.rb b/lib/erb.rb index 1b712c92c2..4e3aaf4a86 100644 --- a/lib/erb.rb +++ b/lib/erb.rb @@ -387,8 +387,10 @@ class ERB compiler = ERB::Compiler.new(trim_mode) set_eoutvar(compiler, eoutvar) @src = compiler.compile(str) + @filename = nil end - attr :src + attr_reader :src + attr_accessor :filename def set_eoutvar(compiler, eoutvar = '_erbout') compiler.put_cmd = "#{eoutvar}.concat" @@ -416,7 +418,7 @@ class ERB } return th.value else - return eval(@src, b) + return eval(@src, b, (@filename || '(erb)'), 1) end end