Simple class to read lines out of a string
Return a copy of ourselves that can be modified without affecting us
# File rdoc/template.rb, line 112
def dup
LineReader.new(@lines.dup)
end
read the next line
# File rdoc/template.rb, line 92
def read
@lines.shift
end
Return a list of lines up to the line that matches a pattern. That last line is discarded.
# File rdoc/template.rb, line 98
def read_up_to(pattern)
res = []
while line = read
if pattern.match(line)
return LineReader.new(res)
else
res << line
end
end
raise "Missing end tag in template: #{pattern.source}"
end