Class: Arrow::Template::EscapeDirective
- Inherits:
 - 
      CallDirective
      
        
- Object
 - Arrow::Object
 - Node
 - Directive
 - AttributeDirective
 - CallDirective
 - Arrow::Template::EscapeDirective
 
 - Defined in:
 - lib/arrow/template/escape.rb
 
Overview
The Arrow::Template::EscapeDirective class, a derivative of Arrow::Template::CallDirective. This is the class which defines the behaviour of the ‘escape’ template directive., which HTML escapes the stringified version of its associated attribute/s.
Syntax
<pre><?escape data.to_yaml?></pre> <?escape some_string_with_htmlish_bits?>
Authors
Michael Granger
Please see the file LICENSE in the top-level directory for licensing details.
Constant Summary
- SVNRev =
          
SVN Revision
 %q$Rev$- SVNId =
          
SVN Id
 %q$Id$
Constants inherited from CallDirective
Constants inherited from AttributeDirective
Constants inherited from Directive
Constants inherited from Node
Constants included from Arrow::HTMLUtilities
ARRAY_HTML_CONTAINER, HASH_HTML_CONTAINER, HASH_PAIR_HTML, IMMEDIATE_OBJECT_HTML_CONTAINER, IVAR_HTML_FRAGMENT, OBJECT_HTML_CONTAINER, THREAD_DUMP_KEY
Instance Method Summary
- 
  
    
      - (Object) render(template, scope) 
    
    
  
  
  
  
  
  
  
    
Render the content and return it as HTML-escaped text.
 
Methods inherited from AttributeDirective
allows_format?, #before_rendering, #build_rendering_proc, #call_methodchain, #initialize, #inspect, #is_rendering_node?, #parse_directive_contents, #render_contents, #to_html
Methods inherited from Directive
create, derivativeDirs, #initialize, #inspect, #parse_directive_contents, #to_html
Methods inherited from Node
#add_to_template, #css_class, #initialize, #inspect, #is_rendering_node?, #to_a, #to_html, #to_s
Methods included from Arrow::HTMLUtilities
#escape_html, #make_html_for_object, #make_object_html_wrapper
Methods inherited from Arrow::Object
deprecate_class_method, deprecate_method, inherited
Methods included from Arrow::Loggable
Constructor Details
This class inherits a constructor from Arrow::Template::AttributeDirective
Instance Method Details
- (Object) render(template, scope)
Render the content and return it as HTML-escaped text.
      33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51  | 
    
      # File 'lib/arrow/template/escape.rb', line 33 def render( template, scope ) rawary = super rary = [] # Try our best to skip debugging comments if template._config[:debuggingComments] rary.push( rawary.shift ) if /^<!--.*-->$/ =~ rawary.first end rawary.each do |line| rary << line.to_s. gsub( /&/, '&' ). gsub( /</, '<' ). gsub( />/, '>' ). gsub( /"/, '"' ) end return rary end  |