# File lib/puppet/parser/lexer.rb, line 322 322: def find_string_token 323: # We know our longest string token is three chars, so try each size in turn 324: # until we either match or run out of chars. This way our worst-case is three 325: # tries, where it is otherwise the number of string token we have. Also, 326: # the lookups are optimized hash lookups, instead of regex scans. 327: # 328: s = @scanner.peek(3) 329: token = TOKENS.lookup(s[0,3]) || TOKENS.lookup(s[0,2]) || TOKENS.lookup(s[0,1]) 330: [ token, token && @scanner.scan(token.regex) ] 331: end