Sha256: 8c6b3c9b3206779694504cf2c73d93c54d95a8471712859e45d3aef26897576b
Contents?: true
Size: 1.17 KB
Versions: 1
Compression:
Stored size: 1.17 KB
Contents
require 'erubis' module Waves module Renderers module Erubis Extension = :erb # extend Waves::Renderers::Mixin def self.included( app ) Waves::Views.renderers << self app.auto_eval :Views do auto_eval true do include ViewMethods end end end # def self.render( path, assigns={} ) # eruby = ::Erubis::Eruby.new( template( path ) ) # helper = helper( path ) # context = ::Erubis::Context.new( assigns ) # ( class << context ; self ; end ).module_eval do # include( helper ) # def << (s) ; s ; end # end # eruby.evaluate( context ) # end module ViewMethods def erb(string, assigns={}) eruby = ::Erubis::Eruby.new( string ) helper = Waves.main::Helpers[self.class.basename] context = ::Erubis::Context.new( assigns ) ( class << context ; self ; end ).module_eval do include( helper ) def << (s) ; s ; end end eruby.evaluate( context ) end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
waves-edge-2009.03.10.13.14 | lib/layers/renderers/erubis.rb |