summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorshyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-02-23 17:44:50 +0000
committershyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-02-23 17:44:50 +0000
commitc3e9fe6a3a4a1ab3fdb6d2e5629a329cbdf7fc47 (patch)
treeb50070c2b88d1ee7f6400bb531701c418828ebd9 /lib
parentf9593a4fc4a68f0a48d6182c5183b701eb583776 (diff)
merge revision(s) 21432:
* lib/erb.rb (PercentScanner): remove PercentScanner. fixed % after %> bug. [ruby-dev:37751] [Bug #997] * test/erb/test_erb.rb: ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@22583 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib')
-rw-r--r--lib/erb.rb34
1 files changed, 0 insertions, 34 deletions
diff --git a/lib/erb.rb b/lib/erb.rb
index f1661f98cb..1ed3c60060 100644
--- a/lib/erb.rb
+++ b/lib/erb.rb
@@ -426,40 +426,6 @@ class ERB
end
Scanner.regist_scanner(SimpleScanner2, nil, false)
- class PercentScanner < Scanner # :nodoc:
- def scan(&blk)
- stag_reg = /(.*?)(^%%|^%|<%%|<%=|<%#|<%|\z)/m
- etag_reg = /(.*?)(%%>|%>|\z)/m
- scanner = StringScanner.new(@src)
- while ! scanner.eos?
- scanner.scan(@stag ? etag_reg : stag_reg)
- yield(scanner[1])
-
- elem = scanner[2]
- if elem == '%%'
- yield('%')
- inline_scan(scanner.scan(/.*?(\n|\z)/), &blk)
- elsif elem == '%'
- yield(PercentLine.new(scanner.scan(/.*?(\n|\z)/).chomp))
- else
- yield(elem)
- end
- end
- end
-
- def inline_scan(line)
- stag_reg = /(.*?)(<%%|<%=|<%#|<%|\z)/m
- etag_reg = /(.*?)(%%>|%>|\z)/m
- scanner = StringScanner.new(line)
- while ! scanner.eos?
- scanner.scan(@stag ? etag_reg : stag_reg)
- yield(scanner[1])
- yield(scanner[2])
- end
- end
- end
- Scanner.regist_scanner(PercentScanner, nil, true)
-
class ExplicitScanner < Scanner # :nodoc:
def scan
stag_reg = /(.*?)(^[ \t]*<%-|<%%|<%=|<%#|<%-|<%|\z)/m