Class: ERB::Compiler::Scanner
- Inherits:
-
Object
- Object
- ERB::Compiler::Scanner
- Defined in:
- lib/erb/compiler.rb
Overview
:nodoc:
Direct Known Subclasses
Constant Summary collapse
- DEFAULT_STAGS =
%w(<%% <%= <%# <%).freeze
- DEFAULT_ETAGS =
%w(%%> %>).freeze
Instance Attribute Summary collapse
-
#etags ⇒ Object
readonly
Returns the value of attribute etags.
-
#stag ⇒ Object
Returns the value of attribute stag.
-
#stags ⇒ Object
readonly
Returns the value of attribute stags.
Class Method Summary collapse
- .default_scanner=(klass) ⇒ Object
- .make_scanner(src, trim_mode, percent) ⇒ Object
- .register_scanner(klass, trim_mode, percent) ⇒ Object (also: regist_scanner)
Instance Method Summary collapse
-
#initialize(src, trim_mode, percent) ⇒ Scanner
constructor
A new instance of Scanner.
- #scan ⇒ Object
Constructor Details
#initialize(src, trim_mode, percent) ⇒ Scanner
Returns a new instance of Scanner.
102 103 104 105 106 107 |
# File 'lib/erb/compiler.rb', line 102 def initialize(src, trim_mode, percent) @src = src @stag = nil @stags = DEFAULT_STAGS @etags = DEFAULT_ETAGS end |
Instance Attribute Details
#etags ⇒ Object (readonly)
Returns the value of attribute etags.
109 110 111 |
# File 'lib/erb/compiler.rb', line 109 def @etags end |
#stag ⇒ Object
Returns the value of attribute stag.
108 109 110 |
# File 'lib/erb/compiler.rb', line 108 def stag @stag end |
#stags ⇒ Object (readonly)
Returns the value of attribute stags.
109 110 111 |
# File 'lib/erb/compiler.rb', line 109 def @stags end |
Class Method Details
.default_scanner=(klass) ⇒ Object
91 92 93 |
# File 'lib/erb/compiler.rb', line 91 def self.default_scanner=(klass) @default_scanner = klass end |
.make_scanner(src, trim_mode, percent) ⇒ Object
95 96 97 98 |
# File 'lib/erb/compiler.rb', line 95 def self.make_scanner(src, trim_mode, percent) klass = @scanner_map.fetch([trim_mode, percent], @default_scanner) klass.new(src, trim_mode, percent) end |
.register_scanner(klass, trim_mode, percent) ⇒ Object Also known as: regist_scanner
85 86 87 |
# File 'lib/erb/compiler.rb', line 85 def register_scanner(klass, trim_mode, percent) @scanner_map[[trim_mode, percent]] = klass end |
Instance Method Details
#scan ⇒ Object
111 |
# File 'lib/erb/compiler.rb', line 111 def scan; end |