Module: Parsr::Rules::RawString

Defined in:
lib/parsr/rules/raw_string.rb

Defined Under Namespace

Classes: Unterminated

Class Method Summary collapse

Class Method Details

.match(scanner) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
# File 'lib/parsr/rules/raw_string.rb', line 9

def match(scanner)
  if scanner.scan(/'/)
    buffer = ''
    while chunk = (parse_content(scanner) || parse_escape(scanner))
      buffer << chunk
    end
    raise Unterminated.new(scanner) unless terminated?(scanner)
    return Parsr::Token.new(buffer)
  end
  nil
end