Class: Inversion::Template::IncludeTag
- Defined in:
- lib/inversion/template/includetag.rb
Overview
Inversion ‘include’ tag.
A tag that inserts other template files into the current template.
Example
<?include /an/absolute/path/to/a/different/template.tmpl ?>
<?include a/relative/path/to/a/different/template.tmpl ?>
Constant Summary
Constants inherited from Tag
Instance Attribute Summary collapse
-
#path ⇒ Object
readonly
The path of the included template.
Attributes inherited from Tag
Attributes inherited from Node
Instance Method Summary collapse
-
#after_appending(parsestate) ⇒ Object
Parser callback – append the nodes from the included template onto the tree of the including template.
-
#before_appending(parsestate) ⇒ Object
Parser callback – Load the included template and check for recursive includes.
-
#initialize(path, linenum = nil, colnum = nil) ⇒ IncludeTag
constructor
Create a new IncludeTag with the specified
path
.
Methods inherited from Tag
#as_comment_body, create, #derivatives, inherited, load, load_all, #tagname, types, #types
Methods included from MethodUtilities
#singleton_attr_accessor, #singleton_attr_reader, #singleton_attr_writer
Methods included from AbstractClass
Methods included from AbstractClass::ClassMethods
Methods inherited from Node
#after_rendering, #as_comment_body, #before_rendering, #is_container?, #location, #render
Constructor Details
#initialize(path, linenum = nil, colnum = nil) ⇒ IncludeTag
Create a new IncludeTag with the specified path
.
24 25 26 27 28 29 |
# File 'lib/inversion/template/includetag.rb', line 24 def initialize( path, linenum=nil, colnum=nil ) super self.log.debug "Body is: %p" % [ @body ] @path = @body @included_template = nil end |
Instance Attribute Details
#path ⇒ Object (readonly)
The path of the included template
37 38 39 |
# File 'lib/inversion/template/includetag.rb', line 37 def path @path end |
Instance Method Details
#after_appending(parsestate) ⇒ Object
Parser callback – append the nodes from the included template onto the tree of the including template.
48 49 50 |
# File 'lib/inversion/template/includetag.rb', line 48 def after_appending( parsestate ) parsestate.append_tree( @included_template.node_tree ) end |
#before_appending(parsestate) ⇒ Object
Parser callback – Load the included template and check for recursive includes.
41 42 43 |
# File 'lib/inversion/template/includetag.rb', line 41 def before_appending( parsestate ) @included_template = parsestate.load_subtemplate( self.path ) end |