Sha256: d3fe614925739388604b3cc532c5dc17408538cc068004d632af8a3cb31f9a79
Contents?: true
Size: 902 Bytes
Versions: 6
Compression:
Stored size: 902 Bytes
Contents
require "erb" module MVCLI class ERB def initialize @compiler = ::ERB::Compiler.new("<>") @compiler.pre_cmd = [""] @compiler.put_cmd = "@_erbout <<" @compiler.insert_cmd = "@_erbout <<" @compiler.post_cmd = ["nil"] end def compile(string, filename = '(erb)') code, enc = @compiler.compile string Template.new code, enc, filename end class Template def initialize(code, enc, filename) @code, @enc, @filename = code, enc, filename end def call(context, output) binding = context.instance_eval do @_erbout = output Kernel.binding end eval @code, binding, @filename, 1 ensure context.remove_instance_variable(:@_erbout) end def to_proc proc do |context, output| call context, output end end end end end
Version data entries
6 entries across 6 versions & 1 rubygems
Version | Path |
---|---|
mvcli-0.0.7 | lib/mvcli/erb.rb |
mvcli-0.0.6 | lib/mvcli/erb.rb |
mvcli-0.0.5 | lib/mvcli/erb.rb |
mvcli-0.0.4 | lib/mvcli/erb.rb |
mvcli-0.0.3 | lib/mvcli/erb.rb |
mvcli-0.0.2 | lib/mvcli/erb.rb |