Module Waves::Views
In: lib/views/errors.rb
lib/views/mixin.rb

Methods

Classes and Modules

Module Waves::Views::Mixin
Class Waves::Views::Base
Class Waves::Views::Errors

Public Class methods

[Source]

    # File lib/views/mixin.rb, line 15
15:     def self.render( path, assigns = {} )
16:       template = Views.renderer_for(path) 
17:       raise NoTemplateError.new( path ) if template.nil?
18:       template.render( path, assigns )
19:     end

[Source]

    # File lib/views/mixin.rb, line 9
 9:     def self.renderer_for(path)
10:       @renderers.find do |renderer|
11:         File.extname( path ) == ".#{renderer::Extension}" or File.exists?( renderer.filename( path ) )
12:       end
13:     end

A class method that returns the known Renderers, which is any module that is defined within Waves::Renderers and includes the Renderers::Mixin. You can define new Renderers simply be reopening Waves::Renderers and defining a module that mixes in Renderers::Mixin.

[Source]

   # File lib/views/mixin.rb, line 7
7:     def self.renderers ; @renderers ||= [] ; end

[Validate]