Last active
October 14, 2016 12:24
-
-
Save JimPanic/806807432bb30fbd043ca9799bcf0ee4 to your computer and use it in GitHub Desktop.
A less entangled and coupled lexer for Coffeescript and the token stream output for itself
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
### | |
A set of functions to tokenize a string. | |
`lexer` is meant to be the entry point to analyse a string. It takes two | |
parameters, a string containing code and an associated (file) name, and returns | |
the created set of tokens. | |
The set of tokens returned by `lexer` is aggregated in `tokenize`, which is | |
called initially with the result of `initialToken`. This is necessary for the | |
subsequent tokenize functions as they all need a reference to the previous token | |
and its location information. `initialToken` takes care of this by providing the | |
location zero and an empty token holding that information. | |
All the tokenize functions adhere to the signature `TokenStream` -> | |
`TokenStream` in any case. The basic trail of execution is as follows: | |
- take stream and see if a token of form X can be found at its beginning | |
- return the stream as-is if not | |
- form a new token with location information based on the last token of the | |
stream and the matched data in code | |
- return a new stream object containing the new set of tokens and the code | |
without the newly generated token's value | |
`tokenize` calls each tokenize function in a specific order, compares their | |
argument with the return value and restarts that process if a token has been | |
added. (This was recursive but node unfortunately does not support TCO yet. | |
That's why the `tokenize` function looks so awful - it's mimicking recursion | |
ugh.) | |
### | |
F = require 'fundament/lib/function' | |
A = require 'fundament/lib/array' | |
{isString} = require 'fundament/lib/types' | |
Sequence = F.sequence | |
Token = { | |
type: undefined | |
value: undefined | |
length: undefined | |
start: undefined | |
end: undefined | |
} | |
Location = { | |
file: undefined | |
line: 0 | |
column: 0 | |
index: 0 | |
} | |
TokenStream = { | |
code: undefined | |
tokens: [] | |
} | |
# Template for tokenize functions: | |
### | |
tokenizefunctionname = (stream) -> | |
match = CHANGEME.exec stream.code | |
return stream unless match | |
[value, ...] = match | |
[..., previous] = stream.tokens | |
[start, end] = advance previous, value | |
token = Instance Token, previous, { | |
start | |
end | |
type: 'changeme' | |
value: value | |
length: value.length | |
} | |
{ | |
code: code[value.length..], | |
tokens: [tokens..., token] | |
} | |
### | |
Tokenizer = (type, expression) -> | |
callableType = { | |
false: () -> type | |
true: type | |
}[type.constructor.name is 'Function'] | |
(stream) -> | |
match = expression.exec stream.code | |
return stream unless match | |
[value, ...] = match | |
[..., previous] = stream.tokens | |
[start, end] = advance previous, value | |
t = callableType(value, previous) | |
return stream unless t | |
token = Instance Token, previous, { | |
start | |
end | |
type: t | |
value: value | |
length: value.length | |
} | |
{ | |
code: stream.code[value.length..] | |
tokens: [stream.tokens..., token] | |
} | |
# This is supposed to be(come) the generalized version of the tokenize functions | |
# for blocks. | |
BlockTokenizer = (type, offset, fn, condition) -> | |
(stream) -> | |
return stream unless condition stream | |
endIndex = offset + consume stream.code[offset - 1..], 1, fn | |
return stream unless endIndex? | |
endLocation = blockEndLocation(stream.code[..endIndex - 1]) | |
[..., previous] = stream.tokens | |
[start, end] = advanceBlock previous, endLocation | |
token = Instance Token, previous, { | |
start | |
end | |
type: type | |
value: stream.code[..endIndex - 1] | |
length: end.index - start.index | |
} | |
{ | |
code: stream.code[endIndex..] | |
tokens: [stream.tokens..., token] | |
} | |
# This function has been extracted from `identifiers` because it handles a very | |
# unique concern with logic that might be solved differently in the future. | |
# | |
# Returns what type of identifier given token is based on current and previous | |
# token type/value. | |
# | |
# NOTE: This may not be necessary here, but since it is mostly not context | |
# sensitive, there is no harm done keeping it here. | |
identifierType = (identifier, previous) -> | |
types_as_is = RELATION.concat words 'unless import export when' | |
return 'unary' if identifier in UNARY | |
return 'logic' if identifier in LOGIC | |
return 'bool' if identifier in BOOL | |
return 'statement' if identifier in STATEMENTS | |
return identifier if identifier in types_as_is | |
'identifier' | |
lines = (stream) -> | |
return stream unless stream.code[0] is '\n' | |
[..., previous] = stream.tokens | |
[start, end] = advance previous, stream.code[0] | |
end.line += 1 | |
end.column = 0 | |
token = Instance Token, previous, { | |
start | |
end | |
type: 'newline' | |
value: stream.code[0] | |
length: 1 | |
} | |
{ | |
code: stream.code[1..] | |
tokens: [stream.tokens..., token] | |
} | |
strings = (stream) -> | |
# Make sure blockStrings is called *before* strings. strings will not take | |
# triplets into account. | |
return stream unless stream.code[0] in INLINE_STRING_QUOTES | |
quote = stream.code[0] | |
escaped_quote = '\\' + stream.code[0] | |
endIndex = consume stream.code, 1, (last, lastN, next, index, code) -> | |
last is quote and ( | |
lastN isnt escaped_quote or | |
code[index - 2..index - 1] is '\\\\' | |
) | |
return stream unless endIndex? | |
endLocation = blockEndLocation stream.code[..endIndex] | |
[..., previous] = stream.tokens | |
[start, end] = advanceBlock previous, endLocation | |
token = Instance Token, previous, { | |
start | |
end | |
type: 'string-literal' | |
value: stream.code[..endIndex] | |
length: endIndex + 1 | |
} | |
{ | |
code: stream.code[token.length..] | |
tokens: [stream.tokens..., token] | |
} | |
blockStrings = (stream) -> | |
return stream unless stream.code[..2] in BLOCK_STRING | |
endIndex = consume stream.code, 3, (last, lastN) -> lastN in BLOCK_STRING | |
return stream unless endIndex? | |
endLocation = blockEndLocation stream.code[..endIndex] | |
[..., previous] = stream.tokens | |
[start, end] = advanceBlock previous, endLocation | |
token = Instance Token, previous, { | |
start | |
end | |
type: 'block-string' | |
value: stream.code[..endIndex] | |
length: end.index - start.index | |
} | |
{ | |
code: stream.code[token.length..] | |
tokens: [stream.tokens..., token] | |
} | |
accessors = (stream) -> | |
isAccessor = (stream.code[0] is '.' or | |
stream.code[0] is '@' or | |
stream.code[..1] is '::') and | |
(stream.code[..1] isnt '..' and | |
stream.code[..2] isnt '...') | |
return stream unless isAccessor | |
[..., previous] = stream.tokens | |
[start, end] = advance previous, stream.code[0] | |
value = stream.code[0] | |
value += stream.code[1] if stream.code[..1] is '::' | |
token = Instance Token, previous, { | |
start | |
end | |
type: ACCESSOR_TYPE[value] | |
value: value | |
length: value.length | |
} | |
{ | |
code: stream.code[value.length..] | |
tokens: [stream.tokens..., token] | |
} | |
operatorType = (operator, previous) -> | |
return 'colon' if operator is ':' | |
return 'terminator' if operator is ';' | |
return 'asterisk' if operator is '*' | |
return 'existential' if operator is '?' | |
return 'suppress-newline' if operator is '\\' | |
return 'assignment' if operator is '=' | |
return 'compare' if operator in COMPARE | |
return 'compound-assignment' if operator in COMPOUND_ASSIGN | |
return 'math' if operator in MATH | |
return 'unary' if operator in UNARY | |
return 'unary-math' if operator in UNARY_MATH | |
return 'shift' if operator in SHIFT | |
return 'logic' if operator in LOGIC | |
return BRACKET_TYPE[operator] if operator in Object.keys BRACKET_TYPE | |
return 'splat-or-range' if operator in Object.keys RANGES | |
undefined | |
## Helper functions | |
# Function that always returns a new "instance" of the parameters passed. This | |
# is only to be used with and for data objects. (I don't know what happens if | |
# you pass more complex objects to it.) | |
Instance = (args...) -> Object.assign {}, args... | |
# Remove BOM from the beginning if there is one | |
stripBOM = (code) -> | |
return code.slice(1) if code.charCodeAt(0) is BOM | |
code | |
# Remove trailing spaces (NOTE: Why exactly is this necessary?) | |
stripTrailingSpaces = (code) -> code.replace(TRAILING_SPACES, '') | |
# Remove carriage returns | |
stripCarriageReturns = (code) -> code.replace(/\r/g, '') | |
clean = Sequence stripBOM, | |
stripTrailingSpaces, | |
stripCarriageReturns | |
# Utility function to split up a string by whitespaces. Used for all the | |
# following literals. Similar to `%w()` in Ruby.` | |
# | |
# Takes a string and returns an array with each word as an element. | |
words = (string) -> string.split(/\s/).filter (string) -> string isnt '' | |
# Make sure there is always a token to get initial location data from in all | |
# other tokenizing functions. | |
# | |
# Takes a string and a filename, returns a tuple of the form `[code, tokens...]` | |
initialToken = (code, filename) -> | |
location = { | |
file: filename | |
index: 0 | |
column: 1 | |
line: 1 | |
} | |
token = Instance Token, { | |
start: Instance Location, location | |
end: Instance Location, location | |
type: 'initial' | |
value: '' | |
length: 0 | |
} | |
{ code: code, tokens: [token] } | |
# Function to create start and end location objects. It is only usable for | |
# tokens without newlines. | |
# | |
# Takes the previous token and the value of the current token to determine new | |
# index and column values, merged with the previous token's end location. | |
advance = (previous, value) -> | |
start = previous.end | |
end = Instance Location, start, { | |
column: start.column + value.length | |
index: start.index + value.length | |
} | |
[start, end] | |
# Function to create start and end location objects. Usable only for tokens | |
# possibly spanning over multiple lines. | |
# | |
# Takes the previous token and the end position of the current token. This end | |
# position is usually gathered by `blockEndLocation`. | |
advanceBlock = (previous, {index, line, column}) -> | |
start = previous.end | |
end = Instance Location, start, { | |
index: start.index + index | |
line: start.line + line | |
column: start.column + (column - 1) | |
} | |
[start, end] | |
# Function to calculate the end position of a value possibly spanning multiple | |
# lines. | |
# | |
# Takes the value and uses a `reduce` operation to go through every char, | |
# aggregating line, column and index values. Returns an object resembling parts | |
# of a `Location` object. | |
blockEndLocation = (value) -> | |
countNewlines = (seed, char, index) -> | |
seed.index = index | |
if char is "\n" | |
seed.line += 1 | |
seed.column = 0 | |
else | |
seed.column += 1 | |
seed | |
value.split('').reduce countNewlines, {index: 0, line: 0, column: 0}, | |
# Consume characters in code from given startIndex until the passed condition is | |
# met or the index falls out of bounds. | |
# | |
# Return either the index at which the condition was met or undefined if the | |
# condition was not met at the end of the code string. | |
consume = (code, start, condition) -> | |
for index in [start..code.length - 1] | |
next = code[index + 1] if index <= (code.length - start) | |
last = code[index] | |
lastN = code[(index - start)..index] | |
return index if condition last, lastN, next, index, code | |
return undefined | |
# Consume one character at a time, either into a previous token of type invalid | |
# or into a new one. If consecutive invalid characters are found, the previous | |
# token is updated with the new end position and value. | |
# | |
# This function does *not* check boundaries of the parameters. This is to be | |
# done by the tokenize function. | |
consumeUnknown = (stream) -> | |
[..., previous] = stream.tokens | |
if previous.type is 'unknown' | |
previous.end.index += 1 | |
previous.end.column += 1 | |
previous.value += stream.code[0] | |
return Instance stream, { code: stream.code[1..] } | |
[start, end] = advance previous, stream.code[0] | |
token = Instance Token, previous, { | |
start: start | |
end: end | |
type: 'unknown' | |
value: stream.code[0] | |
} | |
{ | |
code: stream.code[1..] | |
tokens: [stream.tokens..., token] | |
} | |
## Constants | |
BOM = 65279 | |
TRAILING_SPACES = /\s+$/ | |
IDENTIFIER = /// ^ | |
(?!\d) | |
( (?: (?!\s)[$\w\x7f-\uffff] )+ ) | |
/// | |
OPERATOR = /// ^ ( | |
?: [-=]> # function | |
| [-+*/%<>&|^!?=]= # compound assign / compare | |
| >>>=? # zero-fill right shift | |
| ([-+:])\1 # doubles | |
| ([&|<>*/%])\2=? # logic / shift / power / floor division / modulo | |
| \?(\.|::) # soak access | |
| \.{2,3} # range or splat | |
| . # any other character | |
) /// | |
NUMBER = /// | |
^ 0b[01]+ | # binary | |
^ 0o[0-7]+ | # octal | |
^ 0x[\da-f]+ | # hex | |
^ \d*\.?\d+ (?:e[+-]?\d+)? # decimal | |
///i | |
REGEX = /// ^ | |
/ (?!/) (( | |
?: [^ [ / \n \\ ] # every other thing | |
| \\[^\n] # anything but newlines escaped | |
| \[ # character class | |
(?: \\[^\n] | [^ \] \n \\ ] )* | |
\] | |
)*) (/)? | |
/// | |
REGEX_MODIFIER = /^[imgy]+/ | |
FUNCTION = /^[-=]>/ | |
COMMA = /^,/ | |
# Unary tokens | |
UNARY = words 'new typeof delete do' | |
UNARY_MATH = words '! ~ not' | |
# Logical tokens | |
LOGIC = words '&& || & | ^' | |
# Bit-shifting tokens | |
SHIFT = words '<< >> >>>' | |
# Comparison tokens | |
COMPARE = words '== != < > <= >=' | |
# Mathematical tokens | |
MATH = words '+ - * / % // %%' | |
# Relational tokens that are negatable with the unary not token | |
RELATION = words 'in of instanceof' | |
# Boolean tokens | |
BOOL = words 'true false yes no' | |
COMMENT = /^#[^#\n]*/ | |
BLOCK_COMMENT = /^###.*###$/ | |
INLINE_STRING_QUOTES = ['"', "'"] | |
INLINE_STRING_ESCAPED_QUOTES = ['\\"', "\\'"] | |
BLOCK_STRING = ['"""', "'''"] | |
STATEMENTS = words 'break continue debugger' | |
COMPOUND_ASSIGN = words \ | |
'-= += /= *= %= ||= &&= ?= <<= >>= >>>= &= ^= |= **= //= %%=' | |
ACCESSOR_TYPE = { | |
'.': 'property-accessor' | |
'@': 'this-accessor' | |
'::': 'prototype-accessor' | |
} | |
BRACKET_TYPE = { | |
'(': 'open-round-bracket' | |
')': 'close-round-bracket' | |
'[': 'open-square-bracket' | |
']': 'close-square-bracket' | |
'{': 'open-curly-bracket' | |
'}': 'close-curly-bracket' | |
} | |
RANGES = { | |
'..': 'range-exclusive' | |
'...': 'range-inclusive' | |
} | |
SPLAT = '...' | |
WHITESPACE = /^[^\n\S]+/ | |
identifiers = Tokenizer identifierType, IDENTIFIER | |
operators = Tokenizer operatorType, OPERATOR | |
comments = Tokenizer 'comment', COMMENT | |
numbers = Tokenizer 'number', NUMBER | |
whitespaces = Tokenizer 'whitespace', WHITESPACE | |
regexModifier = Tokenizer 'regex-modifier', REGEX_MODIFIER | |
commas = Tokenizer 'comma', COMMA | |
functions = Tokenizer 'function-arrow', FUNCTION | |
blockComments = \ | |
BlockTokenizer 'multi-line-comment', | |
3, | |
((_, __, next, index, code) -> \ | |
code[index - 2..index] is '###' and next isnt '#'), | |
((stream) -> stream.code[..2] is '###') | |
javascript = \ | |
BlockTokenizer 'javascript', | |
1, | |
((last, lastN) -> last is '`' and lastN isnt '\\`'), | |
((stream) -> stream.code[0] is '`') | |
regexConsumer = (last, lastN, _, index, code) -> | |
last is '/' and | |
(lastN isnt '\\/' or code[index - 2..index - 1] is '\\\\/') | |
regexNoModifier = BlockTokenizer \ | |
'regex', | |
1, | |
regexConsumer, | |
((stream) -> (REGEX.exec stream.code)? ) | |
blockRegexConsumer = (_, ___, next, index, code) -> | |
code[index - 2..index] is '///' | |
blockRegexNoModifier = \ | |
BlockTokenizer 'block-regex', | |
3, | |
blockRegexConsumer, | |
((stream) -> stream.code[..2] is '///') | |
regex = (stream) -> regexModifier regexNoModifier stream | |
blockRegex = (stream) -> regexModifier blockRegexNoModifier stream | |
# Main entry point for the lexer | |
# | |
# Takes a string and an optional filename, returns an array of token objects. | |
lexer = (code, filename) -> | |
stream = tokenize initialToken code, filename | |
stream.tokens | |
# Turn code and a stream of tokens into a stream of tokens recursively | |
# tokenizing the string. | |
# | |
# This function will call all tokenize functions in specific order and then | |
# itself until no more code is available or a complete lexing pass has not | |
# changed the string to analyse. | |
tokenize = (stream) -> | |
newStream = stream | |
while newStream.code.length | |
[..., last] = stream.tokens | |
oldStream = newStream | |
# This is a hack. But it does work for now. | |
newStream = identifiers oldStream; continue if newStream isnt oldStream | |
newStream = blockComments newStream; continue if newStream isnt oldStream | |
newStream = comments newStream; continue if newStream isnt oldStream | |
newStream = whitespaces newStream; continue if newStream isnt oldStream | |
newStream = lines newStream; continue if newStream isnt oldStream | |
newStream = blockStrings newStream; continue if newStream isnt oldStream | |
newStream = strings newStream; continue if newStream isnt oldStream | |
newStream = numbers newStream; continue if newStream isnt oldStream | |
newStream = blockRegex newStream; continue if newStream isnt oldStream | |
newStream = regex newStream; continue if newStream isnt oldStream | |
newStream = javascript newStream; continue if newStream isnt oldStream | |
newStream = functions newStream; continue if newStream isnt oldStream | |
newStream = commas newStream; continue if newStream isnt oldStream | |
newStream = operators newStream; continue if newStream isnt oldStream | |
newStream = accessors newStream; continue if newStream isnt oldStream | |
# No tokenize function found a valid string. Consume one character at a time | |
# into a token with type 'unknown' until a valid one is found or the end of | |
# the source has been reached. | |
if newStream.tokens.length is oldStream.tokens.length | |
newStream = consumeUnknown oldStream | |
newStream | |
module.exports = { | |
lexer | |
tokenize | |
identifiers | |
identifierType | |
blockComments | |
comments | |
whitespaces | |
lines | |
blockStrings | |
strings | |
numbers | |
blockRegex | |
regex | |
javascript | |
functions | |
commas | |
operators | |
operatorType | |
accessors | |
Token | |
Location | |
TokenStream | |
IDENTIFIER | |
OPERATOR | |
UNARY | |
UNARY_MATH | |
LOGIC | |
SHIFT | |
COMPARE | |
MATH | |
RELATION | |
BOOL | |
COMMENT | |
BLOCK_COMMENT | |
INLINE_STRING_QUOTES | |
STATEMENTS | |
WHITESPACE | |
helper: { | |
clean | |
stripBOM | |
stripTrailingSpaces | |
stripCarriageReturns | |
words | |
initialToken | |
advance | |
advanceBlock | |
blockEndLocation | |
consumeUnknown | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Let the lexer analyse itself. | |
fs = require 'fs' | |
coffee = require './src/new_lexer' | |
filename = 'src/new_lexer' | |
code = fs.readFileSync("#{filename}.coffee").toString() | |
tokens = coffee.lexer code, filename | |
shortTokens = tokens.map (token) -> | |
[ | |
token.type | |
token.start.line, token.end.line | |
token.value.replace(/\n/g, '\\n').replace(/\s/g, '˽') | |
] | |
process.stdout.write JSON.stringify shortTokens |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- initial, 1, 1, | |
- multi-line-comment, 1, 31, ###\n\nA˽set˽of˽functions˽to˽tokenize˽a˽string.\n\n`lexer`˽is˽meant˽to˽be˽the˽entry˽point˽to˽analyse˽a˽string.˽It˽takes˽two\nparameters,˽a˽string˽containing˽code˽and˽an˽associated˽(file)˽name,˽and˽returns\nthe˽created˽set˽of˽tokens.\n\nThe˽set˽of˽tokens˽returned˽by˽`lexer`˽is˽aggregated˽in˽`tokenize`,˽which˽is\ncalled˽initially˽with˽the˽result˽of˽`initialToken`.˽This˽is˽necessary˽for˽the\nsubsequent˽tokenize˽functions˽as˽they˽all˽need˽a˽reference˽to˽the˽previous˽token\nand˽its˽location˽information.˽`initialToken`˽takes˽care˽of˽this˽by˽providing˽the\nlocation˽zero˽and˽an˽empty˽token˽holding˽that˽information.\n\nAll˽the˽tokenize˽functions˽adhere˽to˽the˽signature˽`TokenStream`˽->\n`TokenStream`˽in˽any˽case.˽The˽basic˽trail˽of˽execution˽is˽as˽follows:\n\n˽-˽take˽stream˽and˽see˽if˽a˽token˽of˽form˽X˽can˽be˽found˽at˽its˽beginning\n˽-˽return˽the˽stream˽as-is˽if˽not\n˽-˽form˽a˽new˽token˽with˽location˽information˽based˽on˽the˽last˽token˽of˽the\n˽˽˽stream˽and˽the˽matched˽data˽in˽code\n˽-˽return˽a˽new˽stream˽object˽containing˽the˽new˽set˽of˽tokens˽and˽the˽code\n˽˽˽without˽the˽newly˽generated˽token's˽value\n\n`tokenize`˽calls˽each˽tokenize˽function˽in˽a˽specific˽order,˽compares˽their\nargument˽with˽the˽return˽value˽and˽restarts˽that˽process˽if˽a˽token˽has˽been\nadded.˽(This˽was˽recursive˽but˽node˽unfortunately˽does˽not˽support˽TCO˽yet.\nThat's˽why˽the˽`tokenize`˽function˽looks˽so˽awful˽-˽it's˽mimicking˽recursion\nugh.)\n\n### | |
- newline, 31, 32, \n | |
- newline, 32, 33, \n | |
- identifier, 33, 33, F | |
- whitespace, 33, 33, ˽˽˽˽˽˽˽˽˽˽ | |
- assignment, 33, 33, = | |
- whitespace, 33, 33, ˽ | |
- identifier, 33, 33, require | |
- whitespace, 33, 33, ˽ | |
- string-literal, 33, 33, 'fundament/lib/function' | |
- newline, 33, 34, \n | |
- identifier, 34, 34, A | |
- whitespace, 34, 34, ˽˽˽˽˽˽˽˽˽˽ | |
- assignment, 34, 34, = | |
- whitespace, 34, 34, ˽ | |
- identifier, 34, 34, require | |
- whitespace, 34, 34, ˽ | |
- string-literal, 34, 34, 'fundament/lib/array' | |
- newline, 34, 35, \n | |
- open-curly-bracket, 35, 35, { | |
- identifier, 35, 35, isString | |
- close-curly-bracket, 35, 35, } | |
- whitespace, 35, 35, ˽ | |
- assignment, 35, 35, = | |
- whitespace, 35, 35, ˽ | |
- identifier, 35, 35, require | |
- whitespace, 35, 35, ˽ | |
- string-literal, 35, 35, 'fundament/lib/types' | |
- newline, 35, 36, \n | |
- newline, 36, 37, \n | |
- identifier, 37, 37, Sequence | |
- whitespace, 37, 37, ˽ | |
- assignment, 37, 37, = | |
- whitespace, 37, 37, ˽ | |
- identifier, 37, 37, F | |
- property-accessor, 37, 37, . | |
- identifier, 37, 37, sequence | |
- newline, 37, 38, \n | |
- newline, 38, 39, \n | |
- identifier, 39, 39, Token | |
- whitespace, 39, 39, ˽ | |
- assignment, 39, 39, = | |
- whitespace, 39, 39, ˽ | |
- open-curly-bracket, 39, 39, { | |
- newline, 39, 40, \n | |
- whitespace, 40, 40, ˽˽ | |
- identifier, 40, 40, type | |
- colon, 40, 40, : | |
- whitespace, 40, 40, ˽˽˽ | |
- identifier, 40, 40, undefined | |
- newline, 40, 41, \n | |
- whitespace, 41, 41, ˽˽ | |
- identifier, 41, 41, value | |
- colon, 41, 41, : | |
- whitespace, 41, 41, ˽˽ | |
- identifier, 41, 41, undefined | |
- newline, 41, 42, \n | |
- whitespace, 42, 42, ˽˽ | |
- identifier, 42, 42, length | |
- colon, 42, 42, : | |
- whitespace, 42, 42, ˽ | |
- identifier, 42, 42, undefined | |
- newline, 42, 43, \n | |
- whitespace, 43, 43, ˽˽ | |
- identifier, 43, 43, start | |
- colon, 43, 43, : | |
- whitespace, 43, 43, ˽˽ | |
- identifier, 43, 43, undefined | |
- newline, 43, 44, \n | |
- whitespace, 44, 44, ˽˽ | |
- identifier, 44, 44, end | |
- colon, 44, 44, : | |
- whitespace, 44, 44, ˽˽˽˽ | |
- identifier, 44, 44, undefined | |
- newline, 44, 45, \n | |
- close-curly-bracket, 45, 45, } | |
- newline, 45, 46, \n | |
- newline, 46, 47, \n | |
- identifier, 47, 47, Location | |
- whitespace, 47, 47, ˽ | |
- assignment, 47, 47, = | |
- whitespace, 47, 47, ˽ | |
- open-curly-bracket, 47, 47, { | |
- newline, 47, 48, \n | |
- whitespace, 48, 48, ˽˽ | |
- identifier, 48, 48, file | |
- colon, 48, 48, : | |
- whitespace, 48, 48, ˽˽˽ | |
- identifier, 48, 48, undefined | |
- newline, 48, 49, \n | |
- whitespace, 49, 49, ˽˽ | |
- identifier, 49, 49, line | |
- colon, 49, 49, : | |
- whitespace, 49, 49, ˽˽˽ | |
- number, 49, 49, 0 | |
- newline, 49, 50, \n | |
- whitespace, 50, 50, ˽˽ | |
- identifier, 50, 50, column | |
- colon, 50, 50, : | |
- whitespace, 50, 50, ˽ | |
- number, 50, 50, 0 | |
- newline, 50, 51, \n | |
- whitespace, 51, 51, ˽˽ | |
- identifier, 51, 51, index | |
- colon, 51, 51, : | |
- whitespace, 51, 51, ˽˽ | |
- number, 51, 51, 0 | |
- newline, 51, 52, \n | |
- close-curly-bracket, 52, 52, } | |
- newline, 52, 53, \n | |
- newline, 53, 54, \n | |
- identifier, 54, 54, TokenStream | |
- whitespace, 54, 54, ˽ | |
- assignment, 54, 54, = | |
- whitespace, 54, 54, ˽ | |
- open-curly-bracket, 54, 54, { | |
- newline, 54, 55, \n | |
- whitespace, 55, 55, ˽˽ | |
- identifier, 55, 55, code | |
- colon, 55, 55, : | |
- whitespace, 55, 55, ˽˽˽ | |
- identifier, 55, 55, undefined | |
- newline, 55, 56, \n | |
- whitespace, 56, 56, ˽˽ | |
- identifier, 56, 56, tokens | |
- colon, 56, 56, : | |
- whitespace, 56, 56, ˽ | |
- open-square-bracket, 56, 56, [ | |
- close-square-bracket, 56, 56, ] | |
- newline, 56, 57, \n | |
- close-curly-bracket, 57, 57, } | |
- newline, 57, 58, \n | |
- newline, 58, 59, \n | |
- comment, 59, 59, #˽Template˽for˽tokenize˽functions: | |
- newline, 59, 60, \n | |
- multi-line-comment, 60, 82, ###\ntokenizefunctionname˽=˽(stream)˽->\n˽˽match˽=˽CHANGEME.exec˽stream.code\n\n˽˽return˽stream˽unless˽match\n\n˽˽[value,˽...]˽˽˽˽=˽match\n˽˽[...,˽previous]˽=˽stream.tokens\n˽˽[start,˽end]˽˽˽˽=˽advance˽previous,˽value\n\n˽˽token˽=˽Instance˽Token,˽previous,˽{\n˽˽˽˽start\n˽˽˽˽end\n˽˽˽˽type:˽˽˽˽˽'changeme'\n˽˽˽˽value:˽˽˽˽value\n˽˽˽˽length:˽˽˽value.length\n˽˽}\n\n˽˽{\n˽˽˽˽code:˽code[value.length..],\n˽˽˽˽tokens:˽[tokens...,˽token]\n˽˽}\n### | |
- newline, 82, 83, \n | |
- newline, 83, 84, \n | |
- identifier, 84, 84, Tokenizer | |
- whitespace, 84, 84, ˽ | |
- assignment, 84, 84, = | |
- whitespace, 84, 84, ˽ | |
- open-round-bracket, 84, 84, ( | |
- identifier, 84, 84, type | |
- comma, 84, 84, , | |
- whitespace, 84, 84, ˽ | |
- identifier, 84, 84, expression | |
- close-round-bracket, 84, 84, ) | |
- whitespace, 84, 84, ˽ | |
- function-arrow, 84, 84, -> | |
- newline, 84, 85, \n | |
- whitespace, 85, 85, ˽˽ | |
- identifier, 85, 85, callableType | |
- whitespace, 85, 85, ˽ | |
- assignment, 85, 85, = | |
- whitespace, 85, 85, ˽ | |
- open-curly-bracket, 85, 85, { | |
- newline, 85, 86, \n | |
- whitespace, 86, 86, ˽˽˽˽ | |
- bool, 86, 86, false | |
- colon, 86, 86, : | |
- whitespace, 86, 86, ˽˽ | |
- open-round-bracket, 86, 86, ( | |
- close-round-bracket, 86, 86, ) | |
- whitespace, 86, 86, ˽ | |
- function-arrow, 86, 86, -> | |
- whitespace, 86, 86, ˽ | |
- identifier, 86, 86, type | |
- newline, 86, 87, \n | |
- whitespace, 87, 87, ˽˽˽˽ | |
- bool, 87, 87, true | |
- colon, 87, 87, : | |
- whitespace, 87, 87, ˽ | |
- identifier, 87, 87, type | |
- newline, 87, 88, \n | |
- whitespace, 88, 88, ˽˽ | |
- close-curly-bracket, 88, 88, } | |
- open-square-bracket, 88, 88, [ | |
- identifier, 88, 88, type | |
- property-accessor, 88, 88, . | |
- identifier, 88, 88, constructor | |
- property-accessor, 88, 88, . | |
- identifier, 88, 88, name | |
- whitespace, 88, 88, ˽ | |
- identifier, 88, 88, is | |
- whitespace, 88, 88, ˽ | |
- string-literal, 88, 88, 'Function' | |
- close-square-bracket, 88, 88, ] | |
- newline, 88, 89, \n | |
- newline, 89, 90, \n | |
- whitespace, 90, 90, ˽˽ | |
- open-round-bracket, 90, 90, ( | |
- identifier, 90, 90, stream | |
- close-round-bracket, 90, 90, ) | |
- whitespace, 90, 90, ˽ | |
- function-arrow, 90, 90, -> | |
- newline, 90, 91, \n | |
- whitespace, 91, 91, ˽˽˽˽ | |
- identifier, 91, 91, match | |
- whitespace, 91, 91, ˽ | |
- assignment, 91, 91, = | |
- whitespace, 91, 91, ˽ | |
- identifier, 91, 91, expression | |
- property-accessor, 91, 91, . | |
- identifier, 91, 91, exec | |
- whitespace, 91, 91, ˽ | |
- identifier, 91, 91, stream | |
- property-accessor, 91, 91, . | |
- identifier, 91, 91, code | |
- newline, 91, 92, \n | |
- newline, 92, 93, \n | |
- whitespace, 93, 93, ˽˽˽˽ | |
- identifier, 93, 93, return | |
- whitespace, 93, 93, ˽ | |
- identifier, 93, 93, stream | |
- whitespace, 93, 93, ˽ | |
- unless, 93, 93, unless | |
- whitespace, 93, 93, ˽ | |
- identifier, 93, 93, match | |
- newline, 93, 94, \n | |
- newline, 94, 95, \n | |
- whitespace, 95, 95, ˽˽˽˽ | |
- open-square-bracket, 95, 95, [ | |
- identifier, 95, 95, value | |
- comma, 95, 95, , | |
- whitespace, 95, 95, ˽ | |
- splat-or-range, 95, 95, ... | |
- close-square-bracket, 95, 95, ] | |
- whitespace, 95, 95, ˽˽˽˽ | |
- assignment, 95, 95, = | |
- whitespace, 95, 95, ˽ | |
- identifier, 95, 95, match | |
- newline, 95, 96, \n | |
- whitespace, 96, 96, ˽˽˽˽ | |
- open-square-bracket, 96, 96, [ | |
- splat-or-range, 96, 96, ... | |
- comma, 96, 96, , | |
- whitespace, 96, 96, ˽ | |
- identifier, 96, 96, previous | |
- close-square-bracket, 96, 96, ] | |
- whitespace, 96, 96, ˽ | |
- assignment, 96, 96, = | |
- whitespace, 96, 96, ˽ | |
- identifier, 96, 96, stream | |
- property-accessor, 96, 96, . | |
- identifier, 96, 96, tokens | |
- newline, 96, 97, \n | |
- whitespace, 97, 97, ˽˽˽˽ | |
- open-square-bracket, 97, 97, [ | |
- identifier, 97, 97, start | |
- comma, 97, 97, , | |
- whitespace, 97, 97, ˽ | |
- identifier, 97, 97, end | |
- close-square-bracket, 97, 97, ] | |
- whitespace, 97, 97, ˽˽˽˽ | |
- assignment, 97, 97, = | |
- whitespace, 97, 97, ˽ | |
- identifier, 97, 97, advance | |
- whitespace, 97, 97, ˽ | |
- identifier, 97, 97, previous | |
- comma, 97, 97, , | |
- whitespace, 97, 97, ˽ | |
- identifier, 97, 97, value | |
- newline, 97, 98, \n | |
- newline, 98, 99, \n | |
- whitespace, 99, 99, ˽˽˽˽ | |
- identifier, 99, 99, t | |
- whitespace, 99, 99, ˽ | |
- assignment, 99, 99, = | |
- whitespace, 99, 99, ˽ | |
- identifier, 99, 99, callableType | |
- open-round-bracket, 99, 99, ( | |
- identifier, 99, 99, value | |
- comma, 99, 99, , | |
- whitespace, 99, 99, ˽ | |
- identifier, 99, 99, previous | |
- close-round-bracket, 99, 99, ) | |
- newline, 99, 100, \n | |
- newline, 100, 101, \n | |
- whitespace, 101, 101, ˽˽˽˽ | |
- identifier, 101, 101, return | |
- whitespace, 101, 101, ˽ | |
- identifier, 101, 101, stream | |
- whitespace, 101, 101, ˽ | |
- unless, 101, 101, unless | |
- whitespace, 101, 101, ˽ | |
- identifier, 101, 101, t | |
- newline, 101, 102, \n | |
- newline, 102, 103, \n | |
- whitespace, 103, 103, ˽˽˽˽ | |
- identifier, 103, 103, token | |
- whitespace, 103, 103, ˽ | |
- assignment, 103, 103, = | |
- whitespace, 103, 103, ˽ | |
- identifier, 103, 103, Instance | |
- whitespace, 103, 103, ˽ | |
- identifier, 103, 103, Token | |
- comma, 103, 103, , | |
- whitespace, 103, 103, ˽ | |
- identifier, 103, 103, previous | |
- comma, 103, 103, , | |
- whitespace, 103, 103, ˽ | |
- open-curly-bracket, 103, 103, { | |
- newline, 103, 104, \n | |
- whitespace, 104, 104, ˽˽˽˽˽˽ | |
- identifier, 104, 104, start | |
- newline, 104, 105, \n | |
- whitespace, 105, 105, ˽˽˽˽˽˽ | |
- identifier, 105, 105, end | |
- newline, 105, 106, \n | |
- whitespace, 106, 106, ˽˽˽˽˽˽ | |
- identifier, 106, 106, type | |
- colon, 106, 106, : | |
- whitespace, 106, 106, ˽˽˽ | |
- identifier, 106, 106, t | |
- newline, 106, 107, \n | |
- whitespace, 107, 107, ˽˽˽˽˽˽ | |
- identifier, 107, 107, value | |
- colon, 107, 107, : | |
- whitespace, 107, 107, ˽˽ | |
- identifier, 107, 107, value | |
- newline, 107, 108, \n | |
- whitespace, 108, 108, ˽˽˽˽˽˽ | |
- identifier, 108, 108, length | |
- colon, 108, 108, : | |
- whitespace, 108, 108, ˽ | |
- identifier, 108, 108, value | |
- property-accessor, 108, 108, . | |
- identifier, 108, 108, length | |
- newline, 108, 109, \n | |
- whitespace, 109, 109, ˽˽˽˽ | |
- close-curly-bracket, 109, 109, } | |
- newline, 109, 110, \n | |
- newline, 110, 111, \n | |
- whitespace, 111, 111, ˽˽˽˽ | |
- open-curly-bracket, 111, 111, { | |
- newline, 111, 112, \n | |
- whitespace, 112, 112, ˽˽˽˽˽˽ | |
- identifier, 112, 112, code | |
- colon, 112, 112, : | |
- whitespace, 112, 112, ˽˽˽ | |
- identifier, 112, 112, stream | |
- property-accessor, 112, 112, . | |
- identifier, 112, 112, code | |
- open-square-bracket, 112, 112, [ | |
- identifier, 112, 112, value | |
- property-accessor, 112, 112, . | |
- identifier, 112, 112, length | |
- splat-or-range, 112, 112, .. | |
- close-square-bracket, 112, 112, ] | |
- newline, 112, 113, \n | |
- whitespace, 113, 113, ˽˽˽˽˽˽ | |
- identifier, 113, 113, tokens | |
- colon, 113, 113, : | |
- whitespace, 113, 113, ˽ | |
- open-square-bracket, 113, 113, [ | |
- identifier, 113, 113, stream | |
- property-accessor, 113, 113, . | |
- identifier, 113, 113, tokens | |
- splat-or-range, 113, 113, ... | |
- comma, 113, 113, , | |
- whitespace, 113, 113, ˽ | |
- identifier, 113, 113, token | |
- close-square-bracket, 113, 113, ] | |
- newline, 113, 114, \n | |
- whitespace, 114, 114, ˽˽˽˽ | |
- close-curly-bracket, 114, 114, } | |
- newline, 114, 115, \n | |
- newline, 115, 116, \n | |
- comment, 116, 116, #˽This˽is˽supposed˽to˽be(come)˽the˽generalized˽version˽of˽the˽tokenize˽functions | |
- newline, 116, 117, \n | |
- comment, 117, 117, #˽for˽blocks. | |
- newline, 117, 118, \n | |
- identifier, 118, 118, BlockTokenizer | |
- whitespace, 118, 118, ˽ | |
- assignment, 118, 118, = | |
- whitespace, 118, 118, ˽ | |
- open-round-bracket, 118, 118, ( | |
- identifier, 118, 118, type | |
- comma, 118, 118, , | |
- whitespace, 118, 118, ˽ | |
- identifier, 118, 118, offset | |
- comma, 118, 118, , | |
- whitespace, 118, 118, ˽ | |
- identifier, 118, 118, fn | |
- comma, 118, 118, , | |
- whitespace, 118, 118, ˽ | |
- identifier, 118, 118, condition | |
- close-round-bracket, 118, 118, ) | |
- whitespace, 118, 118, ˽ | |
- function-arrow, 118, 118, -> | |
- newline, 118, 119, \n | |
- whitespace, 119, 119, ˽˽ | |
- open-round-bracket, 119, 119, ( | |
- identifier, 119, 119, stream | |
- close-round-bracket, 119, 119, ) | |
- whitespace, 119, 119, ˽ | |
- function-arrow, 119, 119, -> | |
- newline, 119, 120, \n | |
- whitespace, 120, 120, ˽˽˽˽ | |
- identifier, 120, 120, return | |
- whitespace, 120, 120, ˽ | |
- identifier, 120, 120, stream | |
- whitespace, 120, 120, ˽ | |
- unless, 120, 120, unless | |
- whitespace, 120, 120, ˽ | |
- identifier, 120, 120, condition | |
- whitespace, 120, 120, ˽ | |
- identifier, 120, 120, stream | |
- newline, 120, 121, \n | |
- newline, 121, 122, \n | |
- whitespace, 122, 122, ˽˽˽˽ | |
- identifier, 122, 122, endIndex | |
- whitespace, 122, 122, ˽ | |
- assignment, 122, 122, = | |
- whitespace, 122, 122, ˽ | |
- identifier, 122, 122, offset | |
- whitespace, 122, 122, ˽ | |
- math, 122, 122, + | |
- whitespace, 122, 122, ˽ | |
- identifier, 122, 122, consume | |
- whitespace, 122, 122, ˽ | |
- identifier, 122, 122, stream | |
- property-accessor, 122, 122, . | |
- identifier, 122, 122, code | |
- open-square-bracket, 122, 122, [ | |
- identifier, 122, 122, offset | |
- whitespace, 122, 122, ˽ | |
- math, 122, 122, - | |
- whitespace, 122, 122, ˽ | |
- number, 122, 122, 1 | |
- splat-or-range, 122, 122, .. | |
- close-square-bracket, 122, 122, ] | |
- comma, 122, 122, , | |
- whitespace, 122, 122, ˽ | |
- number, 122, 122, 1 | |
- comma, 122, 122, , | |
- whitespace, 122, 122, ˽ | |
- identifier, 122, 122, fn | |
- newline, 122, 123, \n | |
- newline, 123, 124, \n | |
- whitespace, 124, 124, ˽˽˽˽ | |
- identifier, 124, 124, return | |
- whitespace, 124, 124, ˽ | |
- identifier, 124, 124, stream | |
- whitespace, 124, 124, ˽ | |
- unless, 124, 124, unless | |
- whitespace, 124, 124, ˽ | |
- identifier, 124, 124, endIndex | |
- existential, 124, 124, ? | |
- newline, 124, 125, \n | |
- newline, 125, 126, \n | |
- whitespace, 126, 126, ˽˽˽˽ | |
- identifier, 126, 126, endLocation | |
- whitespace, 126, 126, ˽˽˽˽˽ | |
- assignment, 126, 126, = | |
- whitespace, 126, 126, ˽ | |
- identifier, 126, 126, blockEndLocation | |
- open-round-bracket, 126, 126, ( | |
- identifier, 126, 126, stream | |
- property-accessor, 126, 126, . | |
- identifier, 126, 126, code | |
- open-square-bracket, 126, 126, [ | |
- splat-or-range, 126, 126, .. | |
- identifier, 126, 126, endIndex | |
- whitespace, 126, 126, ˽ | |
- math, 126, 126, - | |
- whitespace, 126, 126, ˽ | |
- number, 126, 126, 1 | |
- close-square-bracket, 126, 126, ] | |
- close-round-bracket, 126, 126, ) | |
- newline, 126, 127, \n | |
- whitespace, 127, 127, ˽˽˽˽ | |
- open-square-bracket, 127, 127, [ | |
- splat-or-range, 127, 127, ... | |
- comma, 127, 127, , | |
- whitespace, 127, 127, ˽ | |
- identifier, 127, 127, previous | |
- close-square-bracket, 127, 127, ] | |
- whitespace, 127, 127, ˽ | |
- assignment, 127, 127, = | |
- whitespace, 127, 127, ˽ | |
- identifier, 127, 127, stream | |
- property-accessor, 127, 127, . | |
- identifier, 127, 127, tokens | |
- newline, 127, 128, \n | |
- whitespace, 128, 128, ˽˽˽˽ | |
- open-square-bracket, 128, 128, [ | |
- identifier, 128, 128, start | |
- comma, 128, 128, , | |
- whitespace, 128, 128, ˽ | |
- identifier, 128, 128, end | |
- close-square-bracket, 128, 128, ] | |
- whitespace, 128, 128, ˽˽˽˽ | |
- assignment, 128, 128, = | |
- whitespace, 128, 128, ˽ | |
- identifier, 128, 128, advanceBlock | |
- whitespace, 128, 128, ˽ | |
- identifier, 128, 128, previous | |
- comma, 128, 128, , | |
- whitespace, 128, 128, ˽ | |
- identifier, 128, 128, endLocation | |
- newline, 128, 129, \n | |
- newline, 129, 130, \n | |
- whitespace, 130, 130, ˽˽˽˽ | |
- identifier, 130, 130, token | |
- whitespace, 130, 130, ˽ | |
- assignment, 130, 130, = | |
- whitespace, 130, 130, ˽ | |
- identifier, 130, 130, Instance | |
- whitespace, 130, 130, ˽ | |
- identifier, 130, 130, Token | |
- comma, 130, 130, , | |
- whitespace, 130, 130, ˽ | |
- identifier, 130, 130, previous | |
- comma, 130, 130, , | |
- whitespace, 130, 130, ˽ | |
- open-curly-bracket, 130, 130, { | |
- newline, 130, 131, \n | |
- whitespace, 131, 131, ˽˽˽˽˽˽ | |
- identifier, 131, 131, start | |
- newline, 131, 132, \n | |
- whitespace, 132, 132, ˽˽˽˽˽˽ | |
- identifier, 132, 132, end | |
- newline, 132, 133, \n | |
- whitespace, 133, 133, ˽˽˽˽˽˽ | |
- identifier, 133, 133, type | |
- colon, 133, 133, : | |
- whitespace, 133, 133, ˽˽˽ | |
- identifier, 133, 133, type | |
- newline, 133, 134, \n | |
- whitespace, 134, 134, ˽˽˽˽˽˽ | |
- identifier, 134, 134, value | |
- colon, 134, 134, : | |
- whitespace, 134, 134, ˽˽ | |
- identifier, 134, 134, stream | |
- property-accessor, 134, 134, . | |
- identifier, 134, 134, code | |
- open-square-bracket, 134, 134, [ | |
- splat-or-range, 134, 134, .. | |
- identifier, 134, 134, endIndex | |
- whitespace, 134, 134, ˽ | |
- math, 134, 134, - | |
- whitespace, 134, 134, ˽ | |
- number, 134, 134, 1 | |
- close-square-bracket, 134, 134, ] | |
- newline, 134, 135, \n | |
- whitespace, 135, 135, ˽˽˽˽˽˽ | |
- identifier, 135, 135, length | |
- colon, 135, 135, : | |
- whitespace, 135, 135, ˽ | |
- identifier, 135, 135, end | |
- property-accessor, 135, 135, . | |
- identifier, 135, 135, index | |
- whitespace, 135, 135, ˽ | |
- math, 135, 135, - | |
- whitespace, 135, 135, ˽ | |
- identifier, 135, 135, start | |
- property-accessor, 135, 135, . | |
- identifier, 135, 135, index | |
- newline, 135, 136, \n | |
- whitespace, 136, 136, ˽˽˽˽ | |
- close-curly-bracket, 136, 136, } | |
- newline, 136, 137, \n | |
- newline, 137, 138, \n | |
- whitespace, 138, 138, ˽˽˽˽ | |
- open-curly-bracket, 138, 138, { | |
- newline, 138, 139, \n | |
- whitespace, 139, 139, ˽˽˽˽˽˽ | |
- identifier, 139, 139, code | |
- colon, 139, 139, : | |
- whitespace, 139, 139, ˽˽˽ | |
- identifier, 139, 139, stream | |
- property-accessor, 139, 139, . | |
- identifier, 139, 139, code | |
- open-square-bracket, 139, 139, [ | |
- identifier, 139, 139, endIndex | |
- splat-or-range, 139, 139, .. | |
- close-square-bracket, 139, 139, ] | |
- newline, 139, 140, \n | |
- whitespace, 140, 140, ˽˽˽˽˽˽ | |
- identifier, 140, 140, tokens | |
- colon, 140, 140, : | |
- whitespace, 140, 140, ˽ | |
- open-square-bracket, 140, 140, [ | |
- identifier, 140, 140, stream | |
- property-accessor, 140, 140, . | |
- identifier, 140, 140, tokens | |
- splat-or-range, 140, 140, ... | |
- comma, 140, 140, , | |
- whitespace, 140, 140, ˽ | |
- identifier, 140, 140, token | |
- close-square-bracket, 140, 140, ] | |
- newline, 140, 141, \n | |
- whitespace, 141, 141, ˽˽˽˽ | |
- close-curly-bracket, 141, 141, } | |
- newline, 141, 142, \n | |
- newline, 142, 143, \n | |
- comment, 143, 143, #˽This˽function˽has˽been˽extracted˽from˽`identifiers`˽because˽it˽handles˽a˽very | |
- newline, 143, 144, \n | |
- comment, 144, 144, #˽unique˽concern˽with˽logic˽that˽might˽be˽solved˽differently˽in˽the˽future. | |
- newline, 144, 145, \n | |
- comment, 145, 145, # | |
- newline, 145, 146, \n | |
- comment, 146, 146, #˽Returns˽what˽type˽of˽identifier˽given˽token˽is˽based˽on˽current˽and˽previous | |
- newline, 146, 147, \n | |
- comment, 147, 147, #˽token˽type/value. | |
- newline, 147, 148, \n | |
- comment, 148, 148, # | |
- newline, 148, 149, \n | |
- comment, 149, 149, #˽NOTE:˽This˽may˽not˽be˽necessary˽here,˽but˽since˽it˽is˽mostly˽not˽context | |
- newline, 149, 150, \n | |
- comment, 150, 150, #˽˽˽˽˽˽˽sensitive,˽there˽is˽no˽harm˽done˽keeping˽it˽here. | |
- newline, 150, 151, \n | |
- identifier, 151, 151, identifierType | |
- whitespace, 151, 151, ˽ | |
- assignment, 151, 151, = | |
- whitespace, 151, 151, ˽ | |
- open-round-bracket, 151, 151, ( | |
- identifier, 151, 151, identifier | |
- comma, 151, 151, , | |
- whitespace, 151, 151, ˽ | |
- identifier, 151, 151, previous | |
- close-round-bracket, 151, 151, ) | |
- whitespace, 151, 151, ˽ | |
- function-arrow, 151, 151, -> | |
- newline, 151, 152, \n | |
- whitespace, 152, 152, ˽˽ | |
- identifier, 152, 152, types_as_is | |
- whitespace, 152, 152, ˽ | |
- assignment, 152, 152, = | |
- whitespace, 152, 152, ˽ | |
- identifier, 152, 152, RELATION | |
- property-accessor, 152, 152, . | |
- identifier, 152, 152, concat | |
- whitespace, 152, 152, ˽ | |
- identifier, 152, 152, words | |
- whitespace, 152, 152, ˽ | |
- string-literal, 152, 152, 'unless˽import˽export˽when' | |
- newline, 152, 153, \n | |
- newline, 153, 154, \n | |
- whitespace, 154, 154, ˽˽ | |
- identifier, 154, 154, return | |
- whitespace, 154, 154, ˽ | |
- string-literal, 154, 154, 'unary' | |
- whitespace, 154, 154, ˽˽˽˽˽ | |
- identifier, 154, 154, if | |
- whitespace, 154, 154, ˽ | |
- identifier, 154, 154, identifier | |
- whitespace, 154, 154, ˽ | |
- in, 154, 154, in | |
- whitespace, 154, 154, ˽ | |
- identifier, 154, 154, UNARY | |
- newline, 154, 155, \n | |
- whitespace, 155, 155, ˽˽ | |
- identifier, 155, 155, return | |
- whitespace, 155, 155, ˽ | |
- string-literal, 155, 155, 'logic' | |
- whitespace, 155, 155, ˽˽˽˽˽ | |
- identifier, 155, 155, if | |
- whitespace, 155, 155, ˽ | |
- identifier, 155, 155, identifier | |
- whitespace, 155, 155, ˽ | |
- in, 155, 155, in | |
- whitespace, 155, 155, ˽ | |
- identifier, 155, 155, LOGIC | |
- newline, 155, 156, \n | |
- whitespace, 156, 156, ˽˽ | |
- identifier, 156, 156, return | |
- whitespace, 156, 156, ˽ | |
- string-literal, 156, 156, 'bool' | |
- whitespace, 156, 156, ˽˽˽˽˽˽ | |
- identifier, 156, 156, if | |
- whitespace, 156, 156, ˽ | |
- identifier, 156, 156, identifier | |
- whitespace, 156, 156, ˽ | |
- in, 156, 156, in | |
- whitespace, 156, 156, ˽ | |
- identifier, 156, 156, BOOL | |
- newline, 156, 157, \n | |
- whitespace, 157, 157, ˽˽ | |
- identifier, 157, 157, return | |
- whitespace, 157, 157, ˽ | |
- string-literal, 157, 157, 'statement' | |
- whitespace, 157, 157, ˽ | |
- identifier, 157, 157, if | |
- whitespace, 157, 157, ˽ | |
- identifier, 157, 157, identifier | |
- whitespace, 157, 157, ˽ | |
- in, 157, 157, in | |
- whitespace, 157, 157, ˽ | |
- identifier, 157, 157, STATEMENTS | |
- newline, 157, 158, \n | |
- whitespace, 158, 158, ˽˽ | |
- identifier, 158, 158, return | |
- whitespace, 158, 158, ˽ | |
- identifier, 158, 158, identifier | |
- whitespace, 158, 158, ˽˽ | |
- identifier, 158, 158, if | |
- whitespace, 158, 158, ˽ | |
- identifier, 158, 158, identifier | |
- whitespace, 158, 158, ˽ | |
- in, 158, 158, in | |
- whitespace, 158, 158, ˽ | |
- identifier, 158, 158, types_as_is | |
- newline, 158, 159, \n | |
- newline, 159, 160, \n | |
- whitespace, 160, 160, ˽˽ | |
- string-literal, 160, 160, 'identifier' | |
- newline, 160, 161, \n | |
- newline, 161, 162, \n | |
- identifier, 162, 162, lines | |
- whitespace, 162, 162, ˽ | |
- assignment, 162, 162, = | |
- whitespace, 162, 162, ˽ | |
- open-round-bracket, 162, 162, ( | |
- identifier, 162, 162, stream | |
- close-round-bracket, 162, 162, ) | |
- whitespace, 162, 162, ˽ | |
- function-arrow, 162, 162, -> | |
- newline, 162, 163, \n | |
- whitespace, 163, 163, ˽˽ | |
- identifier, 163, 163, return | |
- whitespace, 163, 163, ˽ | |
- identifier, 163, 163, stream | |
- whitespace, 163, 163, ˽ | |
- unless, 163, 163, unless | |
- whitespace, 163, 163, ˽ | |
- identifier, 163, 163, stream | |
- property-accessor, 163, 163, . | |
- identifier, 163, 163, code | |
- open-square-bracket, 163, 163, [ | |
- number, 163, 163, 0 | |
- close-square-bracket, 163, 163, ] | |
- whitespace, 163, 163, ˽ | |
- identifier, 163, 163, is | |
- whitespace, 163, 163, ˽ | |
- string-literal, 163, 163, '\n' | |
- newline, 163, 164, \n | |
- newline, 164, 165, \n | |
- whitespace, 165, 165, ˽˽ | |
- open-square-bracket, 165, 165, [ | |
- splat-or-range, 165, 165, ... | |
- comma, 165, 165, , | |
- whitespace, 165, 165, ˽ | |
- identifier, 165, 165, previous | |
- close-square-bracket, 165, 165, ] | |
- whitespace, 165, 165, ˽ | |
- assignment, 165, 165, = | |
- whitespace, 165, 165, ˽ | |
- identifier, 165, 165, stream | |
- property-accessor, 165, 165, . | |
- identifier, 165, 165, tokens | |
- newline, 165, 166, \n | |
- whitespace, 166, 166, ˽˽ | |
- open-square-bracket, 166, 166, [ | |
- identifier, 166, 166, start | |
- comma, 166, 166, , | |
- whitespace, 166, 166, ˽ | |
- identifier, 166, 166, end | |
- close-square-bracket, 166, 166, ] | |
- whitespace, 166, 166, ˽˽˽˽ | |
- assignment, 166, 166, = | |
- whitespace, 166, 166, ˽ | |
- identifier, 166, 166, advance | |
- whitespace, 166, 166, ˽ | |
- identifier, 166, 166, previous | |
- comma, 166, 166, , | |
- whitespace, 166, 166, ˽ | |
- identifier, 166, 166, stream | |
- property-accessor, 166, 166, . | |
- identifier, 166, 166, code | |
- open-square-bracket, 166, 166, [ | |
- number, 166, 166, 0 | |
- close-square-bracket, 166, 166, ] | |
- newline, 166, 167, \n | |
- newline, 167, 168, \n | |
- whitespace, 168, 168, ˽˽ | |
- identifier, 168, 168, end | |
- property-accessor, 168, 168, . | |
- identifier, 168, 168, line | |
- whitespace, 168, 168, ˽˽ | |
- compound-assignment, 168, 168, += | |
- whitespace, 168, 168, ˽ | |
- number, 168, 168, 1 | |
- newline, 168, 169, \n | |
- whitespace, 169, 169, ˽˽ | |
- identifier, 169, 169, end | |
- property-accessor, 169, 169, . | |
- identifier, 169, 169, column | |
- whitespace, 169, 169, ˽ | |
- assignment, 169, 169, = | |
- whitespace, 169, 169, ˽ | |
- number, 169, 169, 0 | |
- newline, 169, 170, \n | |
- newline, 170, 171, \n | |
- whitespace, 171, 171, ˽˽ | |
- identifier, 171, 171, token | |
- whitespace, 171, 171, ˽ | |
- assignment, 171, 171, = | |
- whitespace, 171, 171, ˽ | |
- identifier, 171, 171, Instance | |
- whitespace, 171, 171, ˽ | |
- identifier, 171, 171, Token | |
- comma, 171, 171, , | |
- whitespace, 171, 171, ˽ | |
- identifier, 171, 171, previous | |
- comma, 171, 171, , | |
- whitespace, 171, 171, ˽ | |
- open-curly-bracket, 171, 171, { | |
- newline, 171, 172, \n | |
- whitespace, 172, 172, ˽˽˽˽ | |
- identifier, 172, 172, start | |
- newline, 172, 173, \n | |
- whitespace, 173, 173, ˽˽˽˽ | |
- identifier, 173, 173, end | |
- newline, 173, 174, \n | |
- whitespace, 174, 174, ˽˽˽˽ | |
- identifier, 174, 174, type | |
- colon, 174, 174, : | |
- whitespace, 174, 174, ˽˽˽ | |
- string-literal, 174, 174, 'newline' | |
- newline, 174, 175, \n | |
- whitespace, 175, 175, ˽˽˽˽ | |
- identifier, 175, 175, value | |
- colon, 175, 175, : | |
- whitespace, 175, 175, ˽˽ | |
- identifier, 175, 175, stream | |
- property-accessor, 175, 175, . | |
- identifier, 175, 175, code | |
- open-square-bracket, 175, 175, [ | |
- number, 175, 175, 0 | |
- close-square-bracket, 175, 175, ] | |
- newline, 175, 176, \n | |
- whitespace, 176, 176, ˽˽˽˽ | |
- identifier, 176, 176, length | |
- colon, 176, 176, : | |
- whitespace, 176, 176, ˽ | |
- number, 176, 176, 1 | |
- newline, 176, 177, \n | |
- whitespace, 177, 177, ˽˽ | |
- close-curly-bracket, 177, 177, } | |
- newline, 177, 178, \n | |
- newline, 178, 179, \n | |
- whitespace, 179, 179, ˽˽ | |
- open-curly-bracket, 179, 179, { | |
- newline, 179, 180, \n | |
- whitespace, 180, 180, ˽˽˽˽ | |
- identifier, 180, 180, code | |
- colon, 180, 180, : | |
- whitespace, 180, 180, ˽˽˽ | |
- identifier, 180, 180, stream | |
- property-accessor, 180, 180, . | |
- identifier, 180, 180, code | |
- open-square-bracket, 180, 180, [ | |
- number, 180, 180, 1 | |
- splat-or-range, 180, 180, .. | |
- close-square-bracket, 180, 180, ] | |
- newline, 180, 181, \n | |
- whitespace, 181, 181, ˽˽˽˽ | |
- identifier, 181, 181, tokens | |
- colon, 181, 181, : | |
- whitespace, 181, 181, ˽ | |
- open-square-bracket, 181, 181, [ | |
- identifier, 181, 181, stream | |
- property-accessor, 181, 181, . | |
- identifier, 181, 181, tokens | |
- splat-or-range, 181, 181, ... | |
- comma, 181, 181, , | |
- whitespace, 181, 181, ˽ | |
- identifier, 181, 181, token | |
- close-square-bracket, 181, 181, ] | |
- newline, 181, 182, \n | |
- whitespace, 182, 182, ˽˽ | |
- close-curly-bracket, 182, 182, } | |
- newline, 182, 183, \n | |
- newline, 183, 184, \n | |
- identifier, 184, 184, strings | |
- whitespace, 184, 184, ˽ | |
- assignment, 184, 184, = | |
- whitespace, 184, 184, ˽ | |
- open-round-bracket, 184, 184, ( | |
- identifier, 184, 184, stream | |
- close-round-bracket, 184, 184, ) | |
- whitespace, 184, 184, ˽ | |
- function-arrow, 184, 184, -> | |
- newline, 184, 185, \n | |
- whitespace, 185, 185, ˽˽ | |
- comment, 185, 185, #˽Make˽sure˽blockStrings˽is˽called˽*before*˽strings.˽strings˽will˽not˽take | |
- newline, 185, 186, \n | |
- whitespace, 186, 186, ˽˽ | |
- comment, 186, 186, #˽triplets˽into˽account. | |
- newline, 186, 187, \n | |
- whitespace, 187, 187, ˽˽ | |
- identifier, 187, 187, return | |
- whitespace, 187, 187, ˽ | |
- identifier, 187, 187, stream | |
- whitespace, 187, 187, ˽ | |
- unless, 187, 187, unless | |
- whitespace, 187, 187, ˽ | |
- identifier, 187, 187, stream | |
- property-accessor, 187, 187, . | |
- identifier, 187, 187, code | |
- open-square-bracket, 187, 187, [ | |
- number, 187, 187, 0 | |
- close-square-bracket, 187, 187, ] | |
- whitespace, 187, 187, ˽ | |
- in, 187, 187, in | |
- whitespace, 187, 187, ˽ | |
- identifier, 187, 187, INLINE_STRING_QUOTES | |
- newline, 187, 188, \n | |
- newline, 188, 189, \n | |
- whitespace, 189, 189, ˽˽ | |
- identifier, 189, 189, quote | |
- whitespace, 189, 189, ˽˽˽˽˽˽˽˽˽ | |
- assignment, 189, 189, = | |
- whitespace, 189, 189, ˽ | |
- identifier, 189, 189, stream | |
- property-accessor, 189, 189, . | |
- identifier, 189, 189, code | |
- open-square-bracket, 189, 189, [ | |
- number, 189, 189, 0 | |
- close-square-bracket, 189, 189, ] | |
- newline, 189, 190, \n | |
- whitespace, 190, 190, ˽˽ | |
- identifier, 190, 190, escaped_quote | |
- whitespace, 190, 190, ˽ | |
- assignment, 190, 190, = | |
- whitespace, 190, 190, ˽ | |
- string-literal, 190, 190, '\\' | |
- whitespace, 190, 190, ˽ | |
- math, 190, 190, + | |
- whitespace, 190, 190, ˽ | |
- identifier, 190, 190, stream | |
- property-accessor, 190, 190, . | |
- identifier, 190, 190, code | |
- open-square-bracket, 190, 190, [ | |
- number, 190, 190, 0 | |
- close-square-bracket, 190, 190, ] | |
- newline, 190, 191, \n | |
- newline, 191, 192, \n | |
- whitespace, 192, 192, ˽˽ | |
- identifier, 192, 192, endIndex | |
- whitespace, 192, 192, ˽ | |
- assignment, 192, 192, = | |
- whitespace, 192, 192, ˽ | |
- identifier, 192, 192, consume | |
- whitespace, 192, 192, ˽ | |
- identifier, 192, 192, stream | |
- property-accessor, 192, 192, . | |
- identifier, 192, 192, code | |
- comma, 192, 192, , | |
- whitespace, 192, 192, ˽ | |
- number, 192, 192, 1 | |
- comma, 192, 192, , | |
- whitespace, 192, 192, ˽ | |
- open-round-bracket, 192, 192, ( | |
- identifier, 192, 192, last | |
- comma, 192, 192, , | |
- whitespace, 192, 192, ˽ | |
- identifier, 192, 192, lastN | |
- comma, 192, 192, , | |
- whitespace, 192, 192, ˽ | |
- identifier, 192, 192, next | |
- comma, 192, 192, , | |
- whitespace, 192, 192, ˽ | |
- identifier, 192, 192, index | |
- comma, 192, 192, , | |
- whitespace, 192, 192, ˽ | |
- identifier, 192, 192, code | |
- close-round-bracket, 192, 192, ) | |
- whitespace, 192, 192, ˽ | |
- function-arrow, 192, 192, -> | |
- newline, 192, 193, \n | |
- whitespace, 193, 193, ˽˽˽˽ | |
- identifier, 193, 193, last | |
- whitespace, 193, 193, ˽ | |
- identifier, 193, 193, is | |
- whitespace, 193, 193, ˽ | |
- identifier, 193, 193, quote | |
- whitespace, 193, 193, ˽ | |
- identifier, 193, 193, and | |
- whitespace, 193, 193, ˽ | |
- open-round-bracket, 193, 193, ( | |
- newline, 193, 194, \n | |
- whitespace, 194, 194, ˽˽˽˽˽˽ | |
- identifier, 194, 194, lastN | |
- whitespace, 194, 194, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 194, 194, isnt | |
- whitespace, 194, 194, ˽ | |
- identifier, 194, 194, escaped_quote | |
- whitespace, 194, 194, ˽ | |
- identifier, 194, 194, or | |
- newline, 194, 195, \n | |
- whitespace, 195, 195, ˽˽˽˽˽˽ | |
- identifier, 195, 195, code | |
- open-square-bracket, 195, 195, [ | |
- identifier, 195, 195, index | |
- whitespace, 195, 195, ˽ | |
- math, 195, 195, - | |
- whitespace, 195, 195, ˽ | |
- number, 195, 195, 2 | |
- splat-or-range, 195, 195, .. | |
- identifier, 195, 195, index | |
- whitespace, 195, 195, ˽ | |
- math, 195, 195, - | |
- whitespace, 195, 195, ˽ | |
- number, 195, 195, 1 | |
- close-square-bracket, 195, 195, ] | |
- whitespace, 195, 195, ˽ | |
- identifier, 195, 195, is | |
- whitespace, 195, 195, ˽˽˽ | |
- string-literal, 195, 195, '\\\\' | |
- newline, 195, 196, \n | |
- whitespace, 196, 196, ˽˽˽˽ | |
- close-round-bracket, 196, 196, ) | |
- newline, 196, 197, \n | |
- newline, 197, 198, \n | |
- whitespace, 198, 198, ˽˽ | |
- identifier, 198, 198, return | |
- whitespace, 198, 198, ˽ | |
- identifier, 198, 198, stream | |
- whitespace, 198, 198, ˽ | |
- unless, 198, 198, unless | |
- whitespace, 198, 198, ˽ | |
- identifier, 198, 198, endIndex | |
- existential, 198, 198, ? | |
- newline, 198, 199, \n | |
- newline, 199, 200, \n | |
- whitespace, 200, 200, ˽˽ | |
- identifier, 200, 200, endLocation | |
- whitespace, 200, 200, ˽˽˽˽˽ | |
- assignment, 200, 200, = | |
- whitespace, 200, 200, ˽ | |
- identifier, 200, 200, blockEndLocation | |
- whitespace, 200, 200, ˽ | |
- identifier, 200, 200, stream | |
- property-accessor, 200, 200, . | |
- identifier, 200, 200, code | |
- open-square-bracket, 200, 200, [ | |
- splat-or-range, 200, 200, .. | |
- identifier, 200, 200, endIndex | |
- close-square-bracket, 200, 200, ] | |
- newline, 200, 201, \n | |
- whitespace, 201, 201, ˽˽ | |
- open-square-bracket, 201, 201, [ | |
- splat-or-range, 201, 201, ... | |
- comma, 201, 201, , | |
- whitespace, 201, 201, ˽ | |
- identifier, 201, 201, previous | |
- close-square-bracket, 201, 201, ] | |
- whitespace, 201, 201, ˽ | |
- assignment, 201, 201, = | |
- whitespace, 201, 201, ˽ | |
- identifier, 201, 201, stream | |
- property-accessor, 201, 201, . | |
- identifier, 201, 201, tokens | |
- newline, 201, 202, \n | |
- whitespace, 202, 202, ˽˽ | |
- open-square-bracket, 202, 202, [ | |
- identifier, 202, 202, start | |
- comma, 202, 202, , | |
- whitespace, 202, 202, ˽ | |
- identifier, 202, 202, end | |
- close-square-bracket, 202, 202, ] | |
- whitespace, 202, 202, ˽˽˽˽ | |
- assignment, 202, 202, = | |
- whitespace, 202, 202, ˽ | |
- identifier, 202, 202, advanceBlock | |
- whitespace, 202, 202, ˽ | |
- identifier, 202, 202, previous | |
- comma, 202, 202, , | |
- whitespace, 202, 202, ˽ | |
- identifier, 202, 202, endLocation | |
- newline, 202, 203, \n | |
- newline, 203, 204, \n | |
- whitespace, 204, 204, ˽˽ | |
- identifier, 204, 204, token | |
- whitespace, 204, 204, ˽ | |
- assignment, 204, 204, = | |
- whitespace, 204, 204, ˽ | |
- identifier, 204, 204, Instance | |
- whitespace, 204, 204, ˽ | |
- identifier, 204, 204, Token | |
- comma, 204, 204, , | |
- whitespace, 204, 204, ˽ | |
- identifier, 204, 204, previous | |
- comma, 204, 204, , | |
- whitespace, 204, 204, ˽ | |
- open-curly-bracket, 204, 204, { | |
- newline, 204, 205, \n | |
- whitespace, 205, 205, ˽˽˽˽ | |
- identifier, 205, 205, start | |
- newline, 205, 206, \n | |
- whitespace, 206, 206, ˽˽˽˽ | |
- identifier, 206, 206, end | |
- newline, 206, 207, \n | |
- whitespace, 207, 207, ˽˽˽˽ | |
- identifier, 207, 207, type | |
- colon, 207, 207, : | |
- whitespace, 207, 207, ˽˽˽ | |
- string-literal, 207, 207, 'string-literal' | |
- newline, 207, 208, \n | |
- whitespace, 208, 208, ˽˽˽˽ | |
- identifier, 208, 208, value | |
- colon, 208, 208, : | |
- whitespace, 208, 208, ˽˽ | |
- identifier, 208, 208, stream | |
- property-accessor, 208, 208, . | |
- identifier, 208, 208, code | |
- open-square-bracket, 208, 208, [ | |
- splat-or-range, 208, 208, .. | |
- identifier, 208, 208, endIndex | |
- close-square-bracket, 208, 208, ] | |
- newline, 208, 209, \n | |
- whitespace, 209, 209, ˽˽˽˽ | |
- identifier, 209, 209, length | |
- colon, 209, 209, : | |
- whitespace, 209, 209, ˽ | |
- identifier, 209, 209, endIndex | |
- whitespace, 209, 209, ˽ | |
- math, 209, 209, + | |
- whitespace, 209, 209, ˽ | |
- number, 209, 209, 1 | |
- newline, 209, 210, \n | |
- whitespace, 210, 210, ˽˽ | |
- close-curly-bracket, 210, 210, } | |
- newline, 210, 211, \n | |
- newline, 211, 212, \n | |
- whitespace, 212, 212, ˽˽ | |
- open-curly-bracket, 212, 212, { | |
- newline, 212, 213, \n | |
- whitespace, 213, 213, ˽˽˽˽ | |
- identifier, 213, 213, code | |
- colon, 213, 213, : | |
- whitespace, 213, 213, ˽˽˽ | |
- identifier, 213, 213, stream | |
- property-accessor, 213, 213, . | |
- identifier, 213, 213, code | |
- open-square-bracket, 213, 213, [ | |
- identifier, 213, 213, token | |
- property-accessor, 213, 213, . | |
- identifier, 213, 213, length | |
- splat-or-range, 213, 213, .. | |
- close-square-bracket, 213, 213, ] | |
- newline, 213, 214, \n | |
- whitespace, 214, 214, ˽˽˽˽ | |
- identifier, 214, 214, tokens | |
- colon, 214, 214, : | |
- whitespace, 214, 214, ˽ | |
- open-square-bracket, 214, 214, [ | |
- identifier, 214, 214, stream | |
- property-accessor, 214, 214, . | |
- identifier, 214, 214, tokens | |
- splat-or-range, 214, 214, ... | |
- comma, 214, 214, , | |
- whitespace, 214, 214, ˽ | |
- identifier, 214, 214, token | |
- close-square-bracket, 214, 214, ] | |
- newline, 214, 215, \n | |
- whitespace, 215, 215, ˽˽ | |
- close-curly-bracket, 215, 215, } | |
- newline, 215, 216, \n | |
- newline, 216, 217, \n | |
- identifier, 217, 217, blockStrings | |
- whitespace, 217, 217, ˽ | |
- assignment, 217, 217, = | |
- whitespace, 217, 217, ˽ | |
- open-round-bracket, 217, 217, ( | |
- identifier, 217, 217, stream | |
- close-round-bracket, 217, 217, ) | |
- whitespace, 217, 217, ˽ | |
- function-arrow, 217, 217, -> | |
- newline, 217, 218, \n | |
- whitespace, 218, 218, ˽˽ | |
- identifier, 218, 218, return | |
- whitespace, 218, 218, ˽ | |
- identifier, 218, 218, stream | |
- whitespace, 218, 218, ˽ | |
- unless, 218, 218, unless | |
- whitespace, 218, 218, ˽ | |
- identifier, 218, 218, stream | |
- property-accessor, 218, 218, . | |
- identifier, 218, 218, code | |
- open-square-bracket, 218, 218, [ | |
- splat-or-range, 218, 218, .. | |
- number, 218, 218, 2 | |
- close-square-bracket, 218, 218, ] | |
- whitespace, 218, 218, ˽ | |
- in, 218, 218, in | |
- whitespace, 218, 218, ˽ | |
- identifier, 218, 218, BLOCK_STRING | |
- newline, 218, 219, \n | |
- newline, 219, 220, \n | |
- whitespace, 220, 220, ˽˽ | |
- identifier, 220, 220, endIndex | |
- whitespace, 220, 220, ˽ | |
- assignment, 220, 220, = | |
- whitespace, 220, 220, ˽ | |
- identifier, 220, 220, consume | |
- whitespace, 220, 220, ˽ | |
- identifier, 220, 220, stream | |
- property-accessor, 220, 220, . | |
- identifier, 220, 220, code | |
- comma, 220, 220, , | |
- whitespace, 220, 220, ˽ | |
- number, 220, 220, 3 | |
- comma, 220, 220, , | |
- whitespace, 220, 220, ˽ | |
- open-round-bracket, 220, 220, ( | |
- identifier, 220, 220, last | |
- comma, 220, 220, , | |
- whitespace, 220, 220, ˽ | |
- identifier, 220, 220, lastN | |
- close-round-bracket, 220, 220, ) | |
- whitespace, 220, 220, ˽ | |
- function-arrow, 220, 220, -> | |
- whitespace, 220, 220, ˽ | |
- identifier, 220, 220, lastN | |
- whitespace, 220, 220, ˽ | |
- in, 220, 220, in | |
- whitespace, 220, 220, ˽ | |
- identifier, 220, 220, BLOCK_STRING | |
- newline, 220, 221, \n | |
- newline, 221, 222, \n | |
- whitespace, 222, 222, ˽˽ | |
- identifier, 222, 222, return | |
- whitespace, 222, 222, ˽ | |
- identifier, 222, 222, stream | |
- whitespace, 222, 222, ˽ | |
- unless, 222, 222, unless | |
- whitespace, 222, 222, ˽ | |
- identifier, 222, 222, endIndex | |
- existential, 222, 222, ? | |
- newline, 222, 223, \n | |
- newline, 223, 224, \n | |
- whitespace, 224, 224, ˽˽ | |
- identifier, 224, 224, endLocation | |
- whitespace, 224, 224, ˽˽˽˽˽ | |
- assignment, 224, 224, = | |
- whitespace, 224, 224, ˽ | |
- identifier, 224, 224, blockEndLocation | |
- whitespace, 224, 224, ˽ | |
- identifier, 224, 224, stream | |
- property-accessor, 224, 224, . | |
- identifier, 224, 224, code | |
- open-square-bracket, 224, 224, [ | |
- splat-or-range, 224, 224, .. | |
- identifier, 224, 224, endIndex | |
- close-square-bracket, 224, 224, ] | |
- newline, 224, 225, \n | |
- whitespace, 225, 225, ˽˽ | |
- open-square-bracket, 225, 225, [ | |
- splat-or-range, 225, 225, ... | |
- comma, 225, 225, , | |
- whitespace, 225, 225, ˽ | |
- identifier, 225, 225, previous | |
- close-square-bracket, 225, 225, ] | |
- whitespace, 225, 225, ˽ | |
- assignment, 225, 225, = | |
- whitespace, 225, 225, ˽ | |
- identifier, 225, 225, stream | |
- property-accessor, 225, 225, . | |
- identifier, 225, 225, tokens | |
- newline, 225, 226, \n | |
- whitespace, 226, 226, ˽˽ | |
- open-square-bracket, 226, 226, [ | |
- identifier, 226, 226, start | |
- comma, 226, 226, , | |
- whitespace, 226, 226, ˽ | |
- identifier, 226, 226, end | |
- close-square-bracket, 226, 226, ] | |
- whitespace, 226, 226, ˽˽˽˽ | |
- assignment, 226, 226, = | |
- whitespace, 226, 226, ˽ | |
- identifier, 226, 226, advanceBlock | |
- whitespace, 226, 226, ˽ | |
- identifier, 226, 226, previous | |
- comma, 226, 226, , | |
- whitespace, 226, 226, ˽ | |
- identifier, 226, 226, endLocation | |
- newline, 226, 227, \n | |
- newline, 227, 228, \n | |
- newline, 228, 229, \n | |
- whitespace, 229, 229, ˽˽ | |
- identifier, 229, 229, token | |
- whitespace, 229, 229, ˽ | |
- assignment, 229, 229, = | |
- whitespace, 229, 229, ˽ | |
- identifier, 229, 229, Instance | |
- whitespace, 229, 229, ˽ | |
- identifier, 229, 229, Token | |
- comma, 229, 229, , | |
- whitespace, 229, 229, ˽ | |
- identifier, 229, 229, previous | |
- comma, 229, 229, , | |
- whitespace, 229, 229, ˽ | |
- open-curly-bracket, 229, 229, { | |
- newline, 229, 230, \n | |
- whitespace, 230, 230, ˽˽˽˽ | |
- identifier, 230, 230, start | |
- newline, 230, 231, \n | |
- whitespace, 231, 231, ˽˽˽˽ | |
- identifier, 231, 231, end | |
- newline, 231, 232, \n | |
- whitespace, 232, 232, ˽˽˽˽ | |
- identifier, 232, 232, type | |
- colon, 232, 232, : | |
- whitespace, 232, 232, ˽˽˽ | |
- string-literal, 232, 232, 'block-string' | |
- newline, 232, 233, \n | |
- whitespace, 233, 233, ˽˽˽˽ | |
- identifier, 233, 233, value | |
- colon, 233, 233, : | |
- whitespace, 233, 233, ˽˽ | |
- identifier, 233, 233, stream | |
- property-accessor, 233, 233, . | |
- identifier, 233, 233, code | |
- open-square-bracket, 233, 233, [ | |
- splat-or-range, 233, 233, .. | |
- identifier, 233, 233, endIndex | |
- close-square-bracket, 233, 233, ] | |
- newline, 233, 234, \n | |
- whitespace, 234, 234, ˽˽˽˽ | |
- identifier, 234, 234, length | |
- colon, 234, 234, : | |
- whitespace, 234, 234, ˽ | |
- identifier, 234, 234, end | |
- property-accessor, 234, 234, . | |
- identifier, 234, 234, index | |
- whitespace, 234, 234, ˽ | |
- math, 234, 234, - | |
- whitespace, 234, 234, ˽ | |
- identifier, 234, 234, start | |
- property-accessor, 234, 234, . | |
- identifier, 234, 234, index | |
- newline, 234, 235, \n | |
- whitespace, 235, 235, ˽˽ | |
- close-curly-bracket, 235, 235, } | |
- newline, 235, 236, \n | |
- newline, 236, 237, \n | |
- whitespace, 237, 237, ˽˽ | |
- open-curly-bracket, 237, 237, { | |
- newline, 237, 238, \n | |
- whitespace, 238, 238, ˽˽˽˽ | |
- identifier, 238, 238, code | |
- colon, 238, 238, : | |
- whitespace, 238, 238, ˽˽˽ | |
- identifier, 238, 238, stream | |
- property-accessor, 238, 238, . | |
- identifier, 238, 238, code | |
- open-square-bracket, 238, 238, [ | |
- identifier, 238, 238, token | |
- property-accessor, 238, 238, . | |
- identifier, 238, 238, length | |
- splat-or-range, 238, 238, .. | |
- close-square-bracket, 238, 238, ] | |
- newline, 238, 239, \n | |
- whitespace, 239, 239, ˽˽˽˽ | |
- identifier, 239, 239, tokens | |
- colon, 239, 239, : | |
- whitespace, 239, 239, ˽ | |
- open-square-bracket, 239, 239, [ | |
- identifier, 239, 239, stream | |
- property-accessor, 239, 239, . | |
- identifier, 239, 239, tokens | |
- splat-or-range, 239, 239, ... | |
- comma, 239, 239, , | |
- whitespace, 239, 239, ˽ | |
- identifier, 239, 239, token | |
- close-square-bracket, 239, 239, ] | |
- newline, 239, 240, \n | |
- whitespace, 240, 240, ˽˽ | |
- close-curly-bracket, 240, 240, } | |
- newline, 240, 241, \n | |
- newline, 241, 242, \n | |
- identifier, 242, 242, accessors | |
- whitespace, 242, 242, ˽ | |
- assignment, 242, 242, = | |
- whitespace, 242, 242, ˽ | |
- open-round-bracket, 242, 242, ( | |
- identifier, 242, 242, stream | |
- close-round-bracket, 242, 242, ) | |
- whitespace, 242, 242, ˽ | |
- function-arrow, 242, 242, -> | |
- newline, 242, 243, \n | |
- whitespace, 243, 243, ˽˽ | |
- identifier, 243, 243, isAccessor | |
- whitespace, 243, 243, ˽ | |
- assignment, 243, 243, = | |
- whitespace, 243, 243, ˽ | |
- open-round-bracket, 243, 243, ( | |
- identifier, 243, 243, stream | |
- property-accessor, 243, 243, . | |
- identifier, 243, 243, code | |
- open-square-bracket, 243, 243, [ | |
- number, 243, 243, 0 | |
- close-square-bracket, 243, 243, ] | |
- whitespace, 243, 243, ˽˽˽ | |
- identifier, 243, 243, is | |
- whitespace, 243, 243, ˽ | |
- string-literal, 243, 243, '.' | |
- whitespace, 243, 243, ˽˽˽˽ | |
- identifier, 243, 243, or | |
- newline, 243, 244, \n | |
- whitespace, 244, 244, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 244, 244, stream | |
- property-accessor, 244, 244, . | |
- identifier, 244, 244, code | |
- open-square-bracket, 244, 244, [ | |
- number, 244, 244, 0 | |
- close-square-bracket, 244, 244, ] | |
- whitespace, 244, 244, ˽˽˽ | |
- identifier, 244, 244, is | |
- whitespace, 244, 244, ˽ | |
- string-literal, 244, 244, '@' | |
- whitespace, 244, 244, ˽˽˽˽ | |
- identifier, 244, 244, or | |
- newline, 244, 245, \n | |
- whitespace, 245, 245, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 245, 245, stream | |
- property-accessor, 245, 245, . | |
- identifier, 245, 245, code | |
- open-square-bracket, 245, 245, [ | |
- splat-or-range, 245, 245, .. | |
- number, 245, 245, 1 | |
- close-square-bracket, 245, 245, ] | |
- whitespace, 245, 245, ˽ | |
- identifier, 245, 245, is | |
- whitespace, 245, 245, ˽ | |
- string-literal, 245, 245, '::' | |
- close-round-bracket, 245, 245, ) | |
- whitespace, 245, 245, ˽˽ | |
- identifier, 245, 245, and | |
- newline, 245, 246, \n | |
- whitespace, 246, 246, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- open-round-bracket, 246, 246, ( | |
- identifier, 246, 246, stream | |
- property-accessor, 246, 246, . | |
- identifier, 246, 246, code | |
- open-square-bracket, 246, 246, [ | |
- splat-or-range, 246, 246, .. | |
- number, 246, 246, 1 | |
- close-square-bracket, 246, 246, ] | |
- whitespace, 246, 246, ˽ | |
- identifier, 246, 246, isnt | |
- whitespace, 246, 246, ˽ | |
- string-literal, 246, 246, '..' | |
- whitespace, 246, 246, ˽ | |
- identifier, 246, 246, and | |
- newline, 246, 247, \n | |
- whitespace, 247, 247, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 247, 247, stream | |
- property-accessor, 247, 247, . | |
- identifier, 247, 247, code | |
- open-square-bracket, 247, 247, [ | |
- splat-or-range, 247, 247, .. | |
- number, 247, 247, 2 | |
- close-square-bracket, 247, 247, ] | |
- whitespace, 247, 247, ˽ | |
- identifier, 247, 247, isnt | |
- whitespace, 247, 247, ˽ | |
- string-literal, 247, 247, '...' | |
- close-round-bracket, 247, 247, ) | |
- newline, 247, 248, \n | |
- newline, 248, 249, \n | |
- whitespace, 249, 249, ˽˽ | |
- identifier, 249, 249, return | |
- whitespace, 249, 249, ˽ | |
- identifier, 249, 249, stream | |
- whitespace, 249, 249, ˽ | |
- unless, 249, 249, unless | |
- whitespace, 249, 249, ˽ | |
- identifier, 249, 249, isAccessor | |
- newline, 249, 250, \n | |
- newline, 250, 251, \n | |
- whitespace, 251, 251, ˽˽ | |
- open-square-bracket, 251, 251, [ | |
- splat-or-range, 251, 251, ... | |
- comma, 251, 251, , | |
- whitespace, 251, 251, ˽ | |
- identifier, 251, 251, previous | |
- close-square-bracket, 251, 251, ] | |
- whitespace, 251, 251, ˽ | |
- assignment, 251, 251, = | |
- whitespace, 251, 251, ˽ | |
- identifier, 251, 251, stream | |
- property-accessor, 251, 251, . | |
- identifier, 251, 251, tokens | |
- newline, 251, 252, \n | |
- whitespace, 252, 252, ˽˽ | |
- open-square-bracket, 252, 252, [ | |
- identifier, 252, 252, start | |
- comma, 252, 252, , | |
- whitespace, 252, 252, ˽ | |
- identifier, 252, 252, end | |
- close-square-bracket, 252, 252, ] | |
- whitespace, 252, 252, ˽˽˽˽ | |
- assignment, 252, 252, = | |
- whitespace, 252, 252, ˽ | |
- identifier, 252, 252, advance | |
- whitespace, 252, 252, ˽ | |
- identifier, 252, 252, previous | |
- comma, 252, 252, , | |
- whitespace, 252, 252, ˽ | |
- identifier, 252, 252, stream | |
- property-accessor, 252, 252, . | |
- identifier, 252, 252, code | |
- open-square-bracket, 252, 252, [ | |
- number, 252, 252, 0 | |
- close-square-bracket, 252, 252, ] | |
- newline, 252, 253, \n | |
- newline, 253, 254, \n | |
- whitespace, 254, 254, ˽˽ | |
- identifier, 254, 254, value | |
- whitespace, 254, 254, ˽˽ | |
- assignment, 254, 254, = | |
- whitespace, 254, 254, ˽ | |
- identifier, 254, 254, stream | |
- property-accessor, 254, 254, . | |
- identifier, 254, 254, code | |
- open-square-bracket, 254, 254, [ | |
- number, 254, 254, 0 | |
- close-square-bracket, 254, 254, ] | |
- newline, 254, 255, \n | |
- whitespace, 255, 255, ˽˽ | |
- identifier, 255, 255, value | |
- whitespace, 255, 255, ˽ | |
- compound-assignment, 255, 255, += | |
- whitespace, 255, 255, ˽ | |
- identifier, 255, 255, stream | |
- property-accessor, 255, 255, . | |
- identifier, 255, 255, code | |
- open-square-bracket, 255, 255, [ | |
- number, 255, 255, 1 | |
- close-square-bracket, 255, 255, ] | |
- whitespace, 255, 255, ˽ | |
- identifier, 255, 255, if | |
- whitespace, 255, 255, ˽ | |
- identifier, 255, 255, stream | |
- property-accessor, 255, 255, . | |
- identifier, 255, 255, code | |
- open-square-bracket, 255, 255, [ | |
- splat-or-range, 255, 255, .. | |
- number, 255, 255, 1 | |
- close-square-bracket, 255, 255, ] | |
- whitespace, 255, 255, ˽ | |
- identifier, 255, 255, is | |
- whitespace, 255, 255, ˽ | |
- string-literal, 255, 255, '::' | |
- newline, 255, 256, \n | |
- newline, 256, 257, \n | |
- whitespace, 257, 257, ˽˽ | |
- identifier, 257, 257, token | |
- whitespace, 257, 257, ˽ | |
- assignment, 257, 257, = | |
- whitespace, 257, 257, ˽ | |
- identifier, 257, 257, Instance | |
- whitespace, 257, 257, ˽ | |
- identifier, 257, 257, Token | |
- comma, 257, 257, , | |
- whitespace, 257, 257, ˽ | |
- identifier, 257, 257, previous | |
- comma, 257, 257, , | |
- whitespace, 257, 257, ˽ | |
- open-curly-bracket, 257, 257, { | |
- newline, 257, 258, \n | |
- whitespace, 258, 258, ˽˽˽˽ | |
- identifier, 258, 258, start | |
- newline, 258, 259, \n | |
- whitespace, 259, 259, ˽˽˽˽ | |
- identifier, 259, 259, end | |
- newline, 259, 260, \n | |
- whitespace, 260, 260, ˽˽˽˽ | |
- identifier, 260, 260, type | |
- colon, 260, 260, : | |
- whitespace, 260, 260, ˽˽˽ | |
- identifier, 260, 260, ACCESSOR_TYPE | |
- open-square-bracket, 260, 260, [ | |
- identifier, 260, 260, value | |
- close-square-bracket, 260, 260, ] | |
- newline, 260, 261, \n | |
- whitespace, 261, 261, ˽˽˽˽ | |
- identifier, 261, 261, value | |
- colon, 261, 261, : | |
- whitespace, 261, 261, ˽˽ | |
- identifier, 261, 261, value | |
- newline, 261, 262, \n | |
- whitespace, 262, 262, ˽˽˽˽ | |
- identifier, 262, 262, length | |
- colon, 262, 262, : | |
- whitespace, 262, 262, ˽ | |
- identifier, 262, 262, value | |
- property-accessor, 262, 262, . | |
- identifier, 262, 262, length | |
- newline, 262, 263, \n | |
- whitespace, 263, 263, ˽˽ | |
- close-curly-bracket, 263, 263, } | |
- newline, 263, 264, \n | |
- newline, 264, 265, \n | |
- whitespace, 265, 265, ˽˽ | |
- open-curly-bracket, 265, 265, { | |
- newline, 265, 266, \n | |
- whitespace, 266, 266, ˽˽˽˽ | |
- identifier, 266, 266, code | |
- colon, 266, 266, : | |
- whitespace, 266, 266, ˽˽˽ | |
- identifier, 266, 266, stream | |
- property-accessor, 266, 266, . | |
- identifier, 266, 266, code | |
- open-square-bracket, 266, 266, [ | |
- identifier, 266, 266, value | |
- property-accessor, 266, 266, . | |
- identifier, 266, 266, length | |
- splat-or-range, 266, 266, .. | |
- close-square-bracket, 266, 266, ] | |
- newline, 266, 267, \n | |
- whitespace, 267, 267, ˽˽˽˽ | |
- identifier, 267, 267, tokens | |
- colon, 267, 267, : | |
- whitespace, 267, 267, ˽ | |
- open-square-bracket, 267, 267, [ | |
- identifier, 267, 267, stream | |
- property-accessor, 267, 267, . | |
- identifier, 267, 267, tokens | |
- splat-or-range, 267, 267, ... | |
- comma, 267, 267, , | |
- whitespace, 267, 267, ˽ | |
- identifier, 267, 267, token | |
- close-square-bracket, 267, 267, ] | |
- newline, 267, 268, \n | |
- whitespace, 268, 268, ˽˽ | |
- close-curly-bracket, 268, 268, } | |
- newline, 268, 269, \n | |
- newline, 269, 270, \n | |
- identifier, 270, 270, operatorType | |
- whitespace, 270, 270, ˽ | |
- assignment, 270, 270, = | |
- whitespace, 270, 270, ˽ | |
- open-round-bracket, 270, 270, ( | |
- identifier, 270, 270, operator | |
- comma, 270, 270, , | |
- whitespace, 270, 270, ˽ | |
- identifier, 270, 270, previous | |
- close-round-bracket, 270, 270, ) | |
- whitespace, 270, 270, ˽ | |
- function-arrow, 270, 270, -> | |
- newline, 270, 271, \n | |
- whitespace, 271, 271, ˽˽ | |
- identifier, 271, 271, return | |
- whitespace, 271, 271, ˽ | |
- string-literal, 271, 271, 'colon' | |
- whitespace, 271, 271, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 271, 271, if | |
- whitespace, 271, 271, ˽ | |
- identifier, 271, 271, operator | |
- whitespace, 271, 271, ˽ | |
- identifier, 271, 271, is | |
- whitespace, 271, 271, ˽ | |
- string-literal, 271, 271, ':' | |
- newline, 271, 272, \n | |
- whitespace, 272, 272, ˽˽ | |
- identifier, 272, 272, return | |
- whitespace, 272, 272, ˽ | |
- string-literal, 272, 272, 'terminator' | |
- whitespace, 272, 272, ˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 272, 272, if | |
- whitespace, 272, 272, ˽ | |
- identifier, 272, 272, operator | |
- whitespace, 272, 272, ˽ | |
- identifier, 272, 272, is | |
- whitespace, 272, 272, ˽ | |
- string-literal, 272, 272, ';' | |
- newline, 272, 273, \n | |
- whitespace, 273, 273, ˽˽ | |
- identifier, 273, 273, return | |
- whitespace, 273, 273, ˽ | |
- string-literal, 273, 273, 'asterisk' | |
- whitespace, 273, 273, ˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 273, 273, if | |
- whitespace, 273, 273, ˽ | |
- identifier, 273, 273, operator | |
- whitespace, 273, 273, ˽ | |
- identifier, 273, 273, is | |
- whitespace, 273, 273, ˽ | |
- string-literal, 273, 273, '*' | |
- newline, 273, 274, \n | |
- whitespace, 274, 274, ˽˽ | |
- identifier, 274, 274, return | |
- whitespace, 274, 274, ˽ | |
- string-literal, 274, 274, 'existential' | |
- whitespace, 274, 274, ˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 274, 274, if | |
- whitespace, 274, 274, ˽ | |
- identifier, 274, 274, operator | |
- whitespace, 274, 274, ˽ | |
- identifier, 274, 274, is | |
- whitespace, 274, 274, ˽ | |
- string-literal, 274, 274, '?' | |
- newline, 274, 275, \n | |
- whitespace, 275, 275, ˽˽ | |
- identifier, 275, 275, return | |
- whitespace, 275, 275, ˽ | |
- string-literal, 275, 275, 'suppress-newline' | |
- whitespace, 275, 275, ˽˽˽˽˽ | |
- identifier, 275, 275, if | |
- whitespace, 275, 275, ˽ | |
- identifier, 275, 275, operator | |
- whitespace, 275, 275, ˽ | |
- identifier, 275, 275, is | |
- whitespace, 275, 275, ˽ | |
- string-literal, 275, 275, '\\' | |
- newline, 275, 276, \n | |
- whitespace, 276, 276, ˽˽ | |
- identifier, 276, 276, return | |
- whitespace, 276, 276, ˽ | |
- string-literal, 276, 276, 'assignment' | |
- whitespace, 276, 276, ˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 276, 276, if | |
- whitespace, 276, 276, ˽ | |
- identifier, 276, 276, operator | |
- whitespace, 276, 276, ˽ | |
- identifier, 276, 276, is | |
- whitespace, 276, 276, ˽ | |
- string-literal, 276, 276, '=' | |
- newline, 276, 277, \n | |
- whitespace, 277, 277, ˽˽ | |
- identifier, 277, 277, return | |
- whitespace, 277, 277, ˽ | |
- string-literal, 277, 277, 'compare' | |
- whitespace, 277, 277, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 277, 277, if | |
- whitespace, 277, 277, ˽ | |
- identifier, 277, 277, operator | |
- whitespace, 277, 277, ˽ | |
- in, 277, 277, in | |
- whitespace, 277, 277, ˽ | |
- identifier, 277, 277, COMPARE | |
- newline, 277, 278, \n | |
- whitespace, 278, 278, ˽˽ | |
- identifier, 278, 278, return | |
- whitespace, 278, 278, ˽ | |
- string-literal, 278, 278, 'compound-assignment' | |
- whitespace, 278, 278, ˽˽ | |
- identifier, 278, 278, if | |
- whitespace, 278, 278, ˽ | |
- identifier, 278, 278, operator | |
- whitespace, 278, 278, ˽ | |
- in, 278, 278, in | |
- whitespace, 278, 278, ˽ | |
- identifier, 278, 278, COMPOUND_ASSIGN | |
- newline, 278, 279, \n | |
- whitespace, 279, 279, ˽˽ | |
- identifier, 279, 279, return | |
- whitespace, 279, 279, ˽ | |
- string-literal, 279, 279, 'math' | |
- whitespace, 279, 279, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 279, 279, if | |
- whitespace, 279, 279, ˽ | |
- identifier, 279, 279, operator | |
- whitespace, 279, 279, ˽ | |
- in, 279, 279, in | |
- whitespace, 279, 279, ˽ | |
- identifier, 279, 279, MATH | |
- newline, 279, 280, \n | |
- whitespace, 280, 280, ˽˽ | |
- identifier, 280, 280, return | |
- whitespace, 280, 280, ˽ | |
- string-literal, 280, 280, 'unary' | |
- whitespace, 280, 280, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 280, 280, if | |
- whitespace, 280, 280, ˽ | |
- identifier, 280, 280, operator | |
- whitespace, 280, 280, ˽ | |
- in, 280, 280, in | |
- whitespace, 280, 280, ˽ | |
- identifier, 280, 280, UNARY | |
- newline, 280, 281, \n | |
- whitespace, 281, 281, ˽˽ | |
- identifier, 281, 281, return | |
- whitespace, 281, 281, ˽ | |
- string-literal, 281, 281, 'unary-math' | |
- whitespace, 281, 281, ˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 281, 281, if | |
- whitespace, 281, 281, ˽ | |
- identifier, 281, 281, operator | |
- whitespace, 281, 281, ˽ | |
- in, 281, 281, in | |
- whitespace, 281, 281, ˽ | |
- identifier, 281, 281, UNARY_MATH | |
- newline, 281, 282, \n | |
- whitespace, 282, 282, ˽˽ | |
- identifier, 282, 282, return | |
- whitespace, 282, 282, ˽ | |
- string-literal, 282, 282, 'shift' | |
- whitespace, 282, 282, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 282, 282, if | |
- whitespace, 282, 282, ˽ | |
- identifier, 282, 282, operator | |
- whitespace, 282, 282, ˽ | |
- in, 282, 282, in | |
- whitespace, 282, 282, ˽ | |
- identifier, 282, 282, SHIFT | |
- newline, 282, 283, \n | |
- whitespace, 283, 283, ˽˽ | |
- identifier, 283, 283, return | |
- whitespace, 283, 283, ˽ | |
- string-literal, 283, 283, 'logic' | |
- whitespace, 283, 283, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 283, 283, if | |
- whitespace, 283, 283, ˽ | |
- identifier, 283, 283, operator | |
- whitespace, 283, 283, ˽ | |
- in, 283, 283, in | |
- whitespace, 283, 283, ˽ | |
- identifier, 283, 283, LOGIC | |
- newline, 283, 284, \n | |
- whitespace, 284, 284, ˽˽ | |
- identifier, 284, 284, return | |
- whitespace, 284, 284, ˽ | |
- identifier, 284, 284, BRACKET_TYPE | |
- open-square-bracket, 284, 284, [ | |
- identifier, 284, 284, operator | |
- close-square-bracket, 284, 284, ] | |
- whitespace, 284, 284, ˽ | |
- identifier, 284, 284, if | |
- whitespace, 284, 284, ˽ | |
- identifier, 284, 284, operator | |
- whitespace, 284, 284, ˽ | |
- in, 284, 284, in | |
- whitespace, 284, 284, ˽ | |
- identifier, 284, 284, Object | |
- property-accessor, 284, 284, . | |
- identifier, 284, 284, keys | |
- whitespace, 284, 284, ˽ | |
- identifier, 284, 284, BRACKET_TYPE | |
- newline, 284, 285, \n | |
- whitespace, 285, 285, ˽˽ | |
- identifier, 285, 285, return | |
- whitespace, 285, 285, ˽ | |
- string-literal, 285, 285, 'splat-or-range' | |
- whitespace, 285, 285, ˽˽˽˽˽˽˽ | |
- identifier, 285, 285, if | |
- whitespace, 285, 285, ˽ | |
- identifier, 285, 285, operator | |
- whitespace, 285, 285, ˽ | |
- in, 285, 285, in | |
- whitespace, 285, 285, ˽ | |
- identifier, 285, 285, Object | |
- property-accessor, 285, 285, . | |
- identifier, 285, 285, keys | |
- whitespace, 285, 285, ˽ | |
- identifier, 285, 285, RANGES | |
- newline, 285, 286, \n | |
- newline, 286, 287, \n | |
- whitespace, 287, 287, ˽˽ | |
- identifier, 287, 287, undefined | |
- newline, 287, 288, \n | |
- newline, 288, 289, \n | |
- comment, 289, 289, # | |
- comment, 289, 289, #˽Helper˽functions | |
- newline, 289, 290, \n | |
- newline, 290, 291, \n | |
- comment, 291, 291, #˽Function˽that˽always˽returns˽a˽new˽"instance"˽of˽the˽parameters˽passed.˽This | |
- newline, 291, 292, \n | |
- comment, 292, 292, #˽is˽only˽to˽be˽used˽with˽and˽for˽data˽objects.˽(I˽don't˽know˽what˽happens˽if | |
- newline, 292, 293, \n | |
- comment, 293, 293, #˽you˽pass˽more˽complex˽objects˽to˽it.) | |
- newline, 293, 294, \n | |
- identifier, 294, 294, Instance | |
- whitespace, 294, 294, ˽ | |
- assignment, 294, 294, = | |
- whitespace, 294, 294, ˽ | |
- open-round-bracket, 294, 294, ( | |
- identifier, 294, 294, args | |
- splat-or-range, 294, 294, ... | |
- close-round-bracket, 294, 294, ) | |
- whitespace, 294, 294, ˽ | |
- function-arrow, 294, 294, -> | |
- whitespace, 294, 294, ˽ | |
- identifier, 294, 294, Object | |
- property-accessor, 294, 294, . | |
- identifier, 294, 294, assign | |
- whitespace, 294, 294, ˽ | |
- open-curly-bracket, 294, 294, { | |
- close-curly-bracket, 294, 294, } | |
- comma, 294, 294, , | |
- whitespace, 294, 294, ˽ | |
- identifier, 294, 294, args | |
- splat-or-range, 294, 294, ... | |
- newline, 294, 295, \n | |
- newline, 295, 296, \n | |
- comment, 296, 296, #˽Remove˽BOM˽from˽the˽beginning˽if˽there˽is˽one | |
- newline, 296, 297, \n | |
- identifier, 297, 297, stripBOM | |
- whitespace, 297, 297, ˽ | |
- assignment, 297, 297, = | |
- whitespace, 297, 297, ˽ | |
- open-round-bracket, 297, 297, ( | |
- identifier, 297, 297, code | |
- close-round-bracket, 297, 297, ) | |
- whitespace, 297, 297, ˽ | |
- function-arrow, 297, 297, -> | |
- newline, 297, 298, \n | |
- whitespace, 298, 298, ˽˽ | |
- identifier, 298, 298, return | |
- whitespace, 298, 298, ˽ | |
- identifier, 298, 298, code | |
- property-accessor, 298, 298, . | |
- identifier, 298, 298, slice | |
- open-round-bracket, 298, 298, ( | |
- number, 298, 298, 1 | |
- close-round-bracket, 298, 298, ) | |
- whitespace, 298, 298, ˽ | |
- identifier, 298, 298, if | |
- whitespace, 298, 298, ˽ | |
- identifier, 298, 298, code | |
- property-accessor, 298, 298, . | |
- identifier, 298, 298, charCodeAt | |
- open-round-bracket, 298, 298, ( | |
- number, 298, 298, 0 | |
- close-round-bracket, 298, 298, ) | |
- whitespace, 298, 298, ˽ | |
- identifier, 298, 298, is | |
- whitespace, 298, 298, ˽ | |
- identifier, 298, 298, BOM | |
- newline, 298, 299, \n | |
- whitespace, 299, 299, ˽˽ | |
- identifier, 299, 299, code | |
- newline, 299, 300, \n | |
- newline, 300, 301, \n | |
- comment, 301, 301, #˽Remove˽trailing˽spaces˽(NOTE:˽Why˽exactly˽is˽this˽necessary?) | |
- newline, 301, 302, \n | |
- identifier, 302, 302, stripTrailingSpaces | |
- whitespace, 302, 302, ˽ | |
- assignment, 302, 302, = | |
- whitespace, 302, 302, ˽ | |
- open-round-bracket, 302, 302, ( | |
- identifier, 302, 302, code | |
- close-round-bracket, 302, 302, ) | |
- whitespace, 302, 302, ˽ | |
- function-arrow, 302, 302, -> | |
- whitespace, 302, 302, ˽ | |
- identifier, 302, 302, code | |
- property-accessor, 302, 302, . | |
- identifier, 302, 302, replace | |
- open-round-bracket, 302, 302, ( | |
- identifier, 302, 302, TRAILING_SPACES | |
- comma, 302, 302, , | |
- whitespace, 302, 302, ˽ | |
- string-literal, 302, 302, '' | |
- close-round-bracket, 302, 302, ) | |
- newline, 302, 303, \n | |
- newline, 303, 304, \n | |
- comment, 304, 304, #˽Remove˽carriage˽returns | |
- newline, 304, 305, \n | |
- identifier, 305, 305, stripCarriageReturns | |
- whitespace, 305, 305, ˽ | |
- assignment, 305, 305, = | |
- whitespace, 305, 305, ˽ | |
- open-round-bracket, 305, 305, ( | |
- identifier, 305, 305, code | |
- close-round-bracket, 305, 305, ) | |
- whitespace, 305, 305, ˽ | |
- function-arrow, 305, 305, -> | |
- whitespace, 305, 305, ˽ | |
- identifier, 305, 305, code | |
- property-accessor, 305, 305, . | |
- identifier, 305, 305, replace | |
- open-round-bracket, 305, 305, ( | |
- regex, 305, 305, /\r/ | |
- regex-modifier, 305, 305, g | |
- comma, 305, 305, , | |
- whitespace, 305, 305, ˽ | |
- string-literal, 305, 305, '' | |
- close-round-bracket, 305, 305, ) | |
- newline, 305, 306, \n | |
- newline, 306, 307, \n | |
- identifier, 307, 307, clean | |
- whitespace, 307, 307, ˽ | |
- assignment, 307, 307, = | |
- whitespace, 307, 307, ˽ | |
- identifier, 307, 307, Sequence | |
- whitespace, 307, 307, ˽ | |
- identifier, 307, 307, stripBOM | |
- comma, 307, 307, , | |
- newline, 307, 308, \n | |
- whitespace, 308, 308, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 308, 308, stripTrailingSpaces | |
- comma, 308, 308, , | |
- newline, 308, 309, \n | |
- whitespace, 309, 309, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 309, 309, stripCarriageReturns | |
- newline, 309, 310, \n | |
- newline, 310, 311, \n | |
- comment, 311, 311, #˽Utility˽function˽to˽split˽up˽a˽string˽by˽whitespaces.˽Used˽for˽all˽the | |
- newline, 311, 312, \n | |
- comment, 312, 312, #˽following˽literals.˽Similar˽to˽`%w()`˽in˽Ruby.` | |
- newline, 312, 313, \n | |
- comment, 313, 313, # | |
- newline, 313, 314, \n | |
- comment, 314, 314, #˽Takes˽a˽string˽and˽returns˽an˽array˽with˽each˽word˽as˽an˽element. | |
- newline, 314, 315, \n | |
- identifier, 315, 315, words | |
- whitespace, 315, 315, ˽ | |
- assignment, 315, 315, = | |
- whitespace, 315, 315, ˽ | |
- open-round-bracket, 315, 315, ( | |
- identifier, 315, 315, string | |
- close-round-bracket, 315, 315, ) | |
- whitespace, 315, 315, ˽ | |
- function-arrow, 315, 315, -> | |
- whitespace, 315, 315, ˽ | |
- identifier, 315, 315, string | |
- property-accessor, 315, 315, . | |
- identifier, 315, 315, split | |
- open-round-bracket, 315, 315, ( | |
- regex, 315, 315, /\s/ | |
- close-round-bracket, 315, 315, ) | |
- property-accessor, 315, 315, . | |
- identifier, 315, 315, filter | |
- whitespace, 315, 315, ˽ | |
- open-round-bracket, 315, 315, ( | |
- identifier, 315, 315, string | |
- close-round-bracket, 315, 315, ) | |
- whitespace, 315, 315, ˽ | |
- function-arrow, 315, 315, -> | |
- whitespace, 315, 315, ˽ | |
- identifier, 315, 315, string | |
- whitespace, 315, 315, ˽ | |
- identifier, 315, 315, isnt | |
- whitespace, 315, 315, ˽ | |
- string-literal, 315, 315, '' | |
- newline, 315, 316, \n | |
- newline, 316, 317, \n | |
- comment, 317, 317, #˽Make˽sure˽there˽is˽always˽a˽token˽to˽get˽initial˽location˽data˽from˽in˽all | |
- newline, 317, 318, \n | |
- comment, 318, 318, #˽other˽tokenizing˽functions. | |
- newline, 318, 319, \n | |
- comment, 319, 319, # | |
- newline, 319, 320, \n | |
- comment, 320, 320, #˽Takes˽a˽string˽and˽a˽filename,˽returns˽a˽tuple˽of˽the˽form˽`[code,˽tokens...]` | |
- newline, 320, 321, \n | |
- identifier, 321, 321, initialToken | |
- whitespace, 321, 321, ˽ | |
- assignment, 321, 321, = | |
- whitespace, 321, 321, ˽ | |
- open-round-bracket, 321, 321, ( | |
- identifier, 321, 321, code | |
- comma, 321, 321, , | |
- whitespace, 321, 321, ˽ | |
- identifier, 321, 321, filename | |
- close-round-bracket, 321, 321, ) | |
- whitespace, 321, 321, ˽ | |
- function-arrow, 321, 321, -> | |
- newline, 321, 322, \n | |
- whitespace, 322, 322, ˽˽ | |
- identifier, 322, 322, location | |
- whitespace, 322, 322, ˽ | |
- assignment, 322, 322, = | |
- whitespace, 322, 322, ˽ | |
- open-curly-bracket, 322, 322, { | |
- newline, 322, 323, \n | |
- whitespace, 323, 323, ˽˽˽˽ | |
- identifier, 323, 323, file | |
- colon, 323, 323, : | |
- whitespace, 323, 323, ˽˽˽ | |
- identifier, 323, 323, filename | |
- newline, 323, 324, \n | |
- whitespace, 324, 324, ˽˽˽˽ | |
- identifier, 324, 324, index | |
- colon, 324, 324, : | |
- whitespace, 324, 324, ˽˽ | |
- number, 324, 324, 0 | |
- newline, 324, 325, \n | |
- whitespace, 325, 325, ˽˽˽˽ | |
- identifier, 325, 325, column | |
- colon, 325, 325, : | |
- whitespace, 325, 325, ˽ | |
- number, 325, 325, 1 | |
- newline, 325, 326, \n | |
- whitespace, 326, 326, ˽˽˽˽ | |
- identifier, 326, 326, line | |
- colon, 326, 326, : | |
- whitespace, 326, 326, ˽˽˽ | |
- number, 326, 326, 1 | |
- newline, 326, 327, \n | |
- whitespace, 327, 327, ˽˽ | |
- close-curly-bracket, 327, 327, } | |
- newline, 327, 328, \n | |
- newline, 328, 329, \n | |
- whitespace, 329, 329, ˽˽ | |
- identifier, 329, 329, token | |
- whitespace, 329, 329, ˽ | |
- assignment, 329, 329, = | |
- whitespace, 329, 329, ˽ | |
- identifier, 329, 329, Instance | |
- whitespace, 329, 329, ˽ | |
- identifier, 329, 329, Token | |
- comma, 329, 329, , | |
- whitespace, 329, 329, ˽ | |
- open-curly-bracket, 329, 329, { | |
- newline, 329, 330, \n | |
- whitespace, 330, 330, ˽˽˽˽ | |
- identifier, 330, 330, start | |
- colon, 330, 330, : | |
- whitespace, 330, 330, ˽˽ | |
- identifier, 330, 330, Instance | |
- whitespace, 330, 330, ˽ | |
- identifier, 330, 330, Location | |
- comma, 330, 330, , | |
- whitespace, 330, 330, ˽ | |
- identifier, 330, 330, location | |
- newline, 330, 331, \n | |
- whitespace, 331, 331, ˽˽˽˽ | |
- identifier, 331, 331, end | |
- colon, 331, 331, : | |
- whitespace, 331, 331, ˽˽˽˽ | |
- identifier, 331, 331, Instance | |
- whitespace, 331, 331, ˽ | |
- identifier, 331, 331, Location | |
- comma, 331, 331, , | |
- whitespace, 331, 331, ˽ | |
- identifier, 331, 331, location | |
- newline, 331, 332, \n | |
- whitespace, 332, 332, ˽˽˽˽ | |
- identifier, 332, 332, type | |
- colon, 332, 332, : | |
- whitespace, 332, 332, ˽˽˽ | |
- string-literal, 332, 332, 'initial' | |
- newline, 332, 333, \n | |
- whitespace, 333, 333, ˽˽˽˽ | |
- identifier, 333, 333, value | |
- colon, 333, 333, : | |
- whitespace, 333, 333, ˽˽ | |
- string-literal, 333, 333, '' | |
- newline, 333, 334, \n | |
- whitespace, 334, 334, ˽˽˽˽ | |
- identifier, 334, 334, length | |
- colon, 334, 334, : | |
- whitespace, 334, 334, ˽ | |
- number, 334, 334, 0 | |
- newline, 334, 335, \n | |
- whitespace, 335, 335, ˽˽ | |
- close-curly-bracket, 335, 335, } | |
- newline, 335, 336, \n | |
- newline, 336, 337, \n | |
- whitespace, 337, 337, ˽˽ | |
- open-curly-bracket, 337, 337, { | |
- whitespace, 337, 337, ˽ | |
- identifier, 337, 337, code | |
- colon, 337, 337, : | |
- whitespace, 337, 337, ˽ | |
- identifier, 337, 337, code | |
- comma, 337, 337, , | |
- whitespace, 337, 337, ˽ | |
- identifier, 337, 337, tokens | |
- colon, 337, 337, : | |
- whitespace, 337, 337, ˽ | |
- open-square-bracket, 337, 337, [ | |
- identifier, 337, 337, token | |
- close-square-bracket, 337, 337, ] | |
- whitespace, 337, 337, ˽ | |
- close-curly-bracket, 337, 337, } | |
- newline, 337, 338, \n | |
- newline, 338, 339, \n | |
- comment, 339, 339, #˽Function˽to˽create˽start˽and˽end˽location˽objects.˽It˽is˽only˽usable˽for | |
- newline, 339, 340, \n | |
- comment, 340, 340, #˽tokens˽without˽newlines. | |
- newline, 340, 341, \n | |
- comment, 341, 341, # | |
- newline, 341, 342, \n | |
- comment, 342, 342, #˽Takes˽the˽previous˽token˽and˽the˽value˽of˽the˽current˽token˽to˽determine˽new | |
- newline, 342, 343, \n | |
- comment, 343, 343, #˽index˽and˽column˽values,˽merged˽with˽the˽previous˽token's˽end˽location. | |
- newline, 343, 344, \n | |
- identifier, 344, 344, advance | |
- whitespace, 344, 344, ˽ | |
- assignment, 344, 344, = | |
- whitespace, 344, 344, ˽ | |
- open-round-bracket, 344, 344, ( | |
- identifier, 344, 344, previous | |
- comma, 344, 344, , | |
- whitespace, 344, 344, ˽ | |
- identifier, 344, 344, value | |
- close-round-bracket, 344, 344, ) | |
- whitespace, 344, 344, ˽ | |
- function-arrow, 344, 344, -> | |
- newline, 344, 345, \n | |
- whitespace, 345, 345, ˽˽ | |
- identifier, 345, 345, start | |
- whitespace, 345, 345, ˽ | |
- assignment, 345, 345, = | |
- whitespace, 345, 345, ˽ | |
- identifier, 345, 345, previous | |
- property-accessor, 345, 345, . | |
- identifier, 345, 345, end | |
- newline, 345, 346, \n | |
- whitespace, 346, 346, ˽˽ | |
- identifier, 346, 346, end | |
- whitespace, 346, 346, ˽ | |
- assignment, 346, 346, = | |
- whitespace, 346, 346, ˽ | |
- identifier, 346, 346, Instance | |
- whitespace, 346, 346, ˽ | |
- identifier, 346, 346, Location | |
- comma, 346, 346, , | |
- whitespace, 346, 346, ˽ | |
- identifier, 346, 346, start | |
- comma, 346, 346, , | |
- whitespace, 346, 346, ˽ | |
- open-curly-bracket, 346, 346, { | |
- newline, 346, 347, \n | |
- whitespace, 347, 347, ˽˽˽˽ | |
- identifier, 347, 347, column | |
- colon, 347, 347, : | |
- whitespace, 347, 347, ˽ | |
- identifier, 347, 347, start | |
- property-accessor, 347, 347, . | |
- identifier, 347, 347, column | |
- whitespace, 347, 347, ˽ | |
- math, 347, 347, + | |
- whitespace, 347, 347, ˽ | |
- identifier, 347, 347, value | |
- property-accessor, 347, 347, . | |
- identifier, 347, 347, length | |
- newline, 347, 348, \n | |
- whitespace, 348, 348, ˽˽˽˽ | |
- identifier, 348, 348, index | |
- colon, 348, 348, : | |
- whitespace, 348, 348, ˽˽ | |
- identifier, 348, 348, start | |
- property-accessor, 348, 348, . | |
- identifier, 348, 348, index | |
- whitespace, 348, 348, ˽˽ | |
- math, 348, 348, + | |
- whitespace, 348, 348, ˽ | |
- identifier, 348, 348, value | |
- property-accessor, 348, 348, . | |
- identifier, 348, 348, length | |
- newline, 348, 349, \n | |
- whitespace, 349, 349, ˽˽ | |
- close-curly-bracket, 349, 349, } | |
- newline, 349, 350, \n | |
- newline, 350, 351, \n | |
- whitespace, 351, 351, ˽˽ | |
- open-square-bracket, 351, 351, [ | |
- identifier, 351, 351, start | |
- comma, 351, 351, , | |
- whitespace, 351, 351, ˽ | |
- identifier, 351, 351, end | |
- close-square-bracket, 351, 351, ] | |
- newline, 351, 352, \n | |
- newline, 352, 353, \n | |
- comment, 353, 353, #˽Function˽to˽create˽start˽and˽end˽location˽objects.˽Usable˽only˽for˽tokens | |
- newline, 353, 354, \n | |
- comment, 354, 354, #˽possibly˽spanning˽over˽multiple˽lines. | |
- newline, 354, 355, \n | |
- comment, 355, 355, # | |
- newline, 355, 356, \n | |
- comment, 356, 356, #˽Takes˽the˽previous˽token˽and˽the˽end˽position˽of˽the˽current˽token.˽This˽end | |
- newline, 356, 357, \n | |
- comment, 357, 357, #˽position˽is˽usually˽gathered˽by˽`blockEndLocation`. | |
- newline, 357, 358, \n | |
- identifier, 358, 358, advanceBlock | |
- whitespace, 358, 358, ˽ | |
- assignment, 358, 358, = | |
- whitespace, 358, 358, ˽ | |
- open-round-bracket, 358, 358, ( | |
- identifier, 358, 358, previous | |
- comma, 358, 358, , | |
- whitespace, 358, 358, ˽ | |
- open-curly-bracket, 358, 358, { | |
- identifier, 358, 358, index | |
- comma, 358, 358, , | |
- whitespace, 358, 358, ˽ | |
- identifier, 358, 358, line | |
- comma, 358, 358, , | |
- whitespace, 358, 358, ˽ | |
- identifier, 358, 358, column | |
- close-curly-bracket, 358, 358, } | |
- close-round-bracket, 358, 358, ) | |
- whitespace, 358, 358, ˽ | |
- function-arrow, 358, 358, -> | |
- newline, 358, 359, \n | |
- whitespace, 359, 359, ˽˽ | |
- identifier, 359, 359, start | |
- whitespace, 359, 359, ˽ | |
- assignment, 359, 359, = | |
- whitespace, 359, 359, ˽ | |
- identifier, 359, 359, previous | |
- property-accessor, 359, 359, . | |
- identifier, 359, 359, end | |
- newline, 359, 360, \n | |
- whitespace, 360, 360, ˽˽ | |
- identifier, 360, 360, end | |
- whitespace, 360, 360, ˽˽˽ | |
- assignment, 360, 360, = | |
- whitespace, 360, 360, ˽ | |
- identifier, 360, 360, Instance | |
- whitespace, 360, 360, ˽ | |
- identifier, 360, 360, Location | |
- comma, 360, 360, , | |
- whitespace, 360, 360, ˽ | |
- identifier, 360, 360, start | |
- comma, 360, 360, , | |
- whitespace, 360, 360, ˽ | |
- open-curly-bracket, 360, 360, { | |
- newline, 360, 361, \n | |
- whitespace, 361, 361, ˽˽˽˽ | |
- identifier, 361, 361, index | |
- colon, 361, 361, : | |
- whitespace, 361, 361, ˽˽ | |
- identifier, 361, 361, start | |
- property-accessor, 361, 361, . | |
- identifier, 361, 361, index | |
- whitespace, 361, 361, ˽˽ | |
- math, 361, 361, + | |
- whitespace, 361, 361, ˽ | |
- identifier, 361, 361, index | |
- newline, 361, 362, \n | |
- whitespace, 362, 362, ˽˽˽˽ | |
- identifier, 362, 362, line | |
- colon, 362, 362, : | |
- whitespace, 362, 362, ˽˽˽ | |
- identifier, 362, 362, start | |
- property-accessor, 362, 362, . | |
- identifier, 362, 362, line | |
- whitespace, 362, 362, ˽˽˽ | |
- math, 362, 362, + | |
- whitespace, 362, 362, ˽ | |
- identifier, 362, 362, line | |
- newline, 362, 363, \n | |
- whitespace, 363, 363, ˽˽˽˽ | |
- identifier, 363, 363, column | |
- colon, 363, 363, : | |
- whitespace, 363, 363, ˽ | |
- identifier, 363, 363, start | |
- property-accessor, 363, 363, . | |
- identifier, 363, 363, column | |
- whitespace, 363, 363, ˽ | |
- math, 363, 363, + | |
- whitespace, 363, 363, ˽ | |
- open-round-bracket, 363, 363, ( | |
- identifier, 363, 363, column | |
- whitespace, 363, 363, ˽ | |
- math, 363, 363, - | |
- whitespace, 363, 363, ˽ | |
- number, 363, 363, 1 | |
- close-round-bracket, 363, 363, ) | |
- newline, 363, 364, \n | |
- whitespace, 364, 364, ˽˽ | |
- close-curly-bracket, 364, 364, } | |
- newline, 364, 365, \n | |
- newline, 365, 366, \n | |
- whitespace, 366, 366, ˽˽ | |
- open-square-bracket, 366, 366, [ | |
- identifier, 366, 366, start | |
- comma, 366, 366, , | |
- whitespace, 366, 366, ˽ | |
- identifier, 366, 366, end | |
- close-square-bracket, 366, 366, ] | |
- newline, 366, 367, \n | |
- newline, 367, 368, \n | |
- comment, 368, 368, #˽Function˽to˽calculate˽the˽end˽position˽of˽a˽value˽possibly˽spanning˽multiple | |
- newline, 368, 369, \n | |
- comment, 369, 369, #˽lines. | |
- newline, 369, 370, \n | |
- comment, 370, 370, # | |
- newline, 370, 371, \n | |
- comment, 371, 371, #˽Takes˽the˽value˽and˽uses˽a˽`reduce`˽operation˽to˽go˽through˽every˽char, | |
- newline, 371, 372, \n | |
- comment, 372, 372, #˽aggregating˽line,˽column˽and˽index˽values.˽Returns˽an˽object˽resembling˽parts | |
- newline, 372, 373, \n | |
- comment, 373, 373, #˽of˽a˽`Location`˽object. | |
- newline, 373, 374, \n | |
- identifier, 374, 374, blockEndLocation | |
- whitespace, 374, 374, ˽ | |
- assignment, 374, 374, = | |
- whitespace, 374, 374, ˽ | |
- open-round-bracket, 374, 374, ( | |
- identifier, 374, 374, value | |
- close-round-bracket, 374, 374, ) | |
- whitespace, 374, 374, ˽ | |
- function-arrow, 374, 374, -> | |
- newline, 374, 375, \n | |
- whitespace, 375, 375, ˽˽ | |
- identifier, 375, 375, countNewlines | |
- whitespace, 375, 375, ˽ | |
- assignment, 375, 375, = | |
- whitespace, 375, 375, ˽ | |
- open-round-bracket, 375, 375, ( | |
- identifier, 375, 375, seed | |
- comma, 375, 375, , | |
- whitespace, 375, 375, ˽ | |
- identifier, 375, 375, char | |
- comma, 375, 375, , | |
- whitespace, 375, 375, ˽ | |
- identifier, 375, 375, index | |
- close-round-bracket, 375, 375, ) | |
- whitespace, 375, 375, ˽ | |
- function-arrow, 375, 375, -> | |
- newline, 375, 376, \n | |
- whitespace, 376, 376, ˽˽˽˽ | |
- identifier, 376, 376, seed | |
- property-accessor, 376, 376, . | |
- identifier, 376, 376, index | |
- whitespace, 376, 376, ˽ | |
- assignment, 376, 376, = | |
- whitespace, 376, 376, ˽ | |
- identifier, 376, 376, index | |
- newline, 376, 377, \n | |
- newline, 377, 378, \n | |
- whitespace, 378, 378, ˽˽˽˽ | |
- identifier, 378, 378, if | |
- whitespace, 378, 378, ˽ | |
- identifier, 378, 378, char | |
- whitespace, 378, 378, ˽ | |
- identifier, 378, 378, is | |
- whitespace, 378, 378, ˽ | |
- string-literal, 378, 378, "\n" | |
- newline, 378, 379, \n | |
- whitespace, 379, 379, ˽˽˽˽˽˽ | |
- identifier, 379, 379, seed | |
- property-accessor, 379, 379, . | |
- identifier, 379, 379, line | |
- whitespace, 379, 379, ˽˽ | |
- compound-assignment, 379, 379, += | |
- whitespace, 379, 379, ˽ | |
- number, 379, 379, 1 | |
- newline, 379, 380, \n | |
- whitespace, 380, 380, ˽˽˽˽˽˽ | |
- identifier, 380, 380, seed | |
- property-accessor, 380, 380, . | |
- identifier, 380, 380, column | |
- whitespace, 380, 380, ˽ | |
- assignment, 380, 380, = | |
- whitespace, 380, 380, ˽ | |
- number, 380, 380, 0 | |
- newline, 380, 381, \n | |
- whitespace, 381, 381, ˽˽˽˽ | |
- identifier, 381, 381, else | |
- newline, 381, 382, \n | |
- whitespace, 382, 382, ˽˽˽˽˽˽ | |
- identifier, 382, 382, seed | |
- property-accessor, 382, 382, . | |
- identifier, 382, 382, column | |
- whitespace, 382, 382, ˽ | |
- compound-assignment, 382, 382, += | |
- whitespace, 382, 382, ˽ | |
- number, 382, 382, 1 | |
- newline, 382, 383, \n | |
- newline, 383, 384, \n | |
- whitespace, 384, 384, ˽˽˽˽ | |
- identifier, 384, 384, seed | |
- newline, 384, 385, \n | |
- newline, 385, 386, \n | |
- whitespace, 386, 386, ˽˽ | |
- identifier, 386, 386, value | |
- property-accessor, 386, 386, . | |
- identifier, 386, 386, split | |
- open-round-bracket, 386, 386, ( | |
- string-literal, 386, 386, '' | |
- close-round-bracket, 386, 386, ) | |
- property-accessor, 386, 386, . | |
- identifier, 386, 386, reduce | |
- whitespace, 386, 386, ˽ | |
- identifier, 386, 386, countNewlines | |
- comma, 386, 386, , | |
- whitespace, 386, 386, ˽ | |
- open-curly-bracket, 386, 386, { | |
- identifier, 386, 386, index | |
- colon, 386, 386, : | |
- whitespace, 386, 386, ˽ | |
- number, 386, 386, 0 | |
- comma, 386, 386, , | |
- whitespace, 386, 386, ˽ | |
- identifier, 386, 386, line | |
- colon, 386, 386, : | |
- whitespace, 386, 386, ˽ | |
- number, 386, 386, 0 | |
- comma, 386, 386, , | |
- whitespace, 386, 386, ˽ | |
- identifier, 386, 386, column | |
- colon, 386, 386, : | |
- whitespace, 386, 386, ˽ | |
- number, 386, 386, 0 | |
- close-curly-bracket, 386, 386, } | |
- comma, 386, 386, , | |
- newline, 386, 387, \n | |
- newline, 387, 388, \n | |
- comment, 388, 388, #˽Consume˽characters˽in˽code˽from˽given˽startIndex˽until˽the˽passed˽condition˽is | |
- newline, 388, 389, \n | |
- comment, 389, 389, #˽met˽or˽the˽index˽falls˽out˽of˽bounds. | |
- newline, 389, 390, \n | |
- comment, 390, 390, # | |
- newline, 390, 391, \n | |
- comment, 391, 391, #˽Return˽either˽the˽index˽at˽which˽the˽condition˽was˽met˽or˽undefined˽if˽the | |
- newline, 391, 392, \n | |
- comment, 392, 392, #˽condition˽was˽not˽met˽at˽the˽end˽of˽the˽code˽string. | |
- newline, 392, 393, \n | |
- identifier, 393, 393, consume | |
- whitespace, 393, 393, ˽ | |
- assignment, 393, 393, = | |
- whitespace, 393, 393, ˽ | |
- open-round-bracket, 393, 393, ( | |
- identifier, 393, 393, code | |
- comma, 393, 393, , | |
- whitespace, 393, 393, ˽ | |
- identifier, 393, 393, start | |
- comma, 393, 393, , | |
- whitespace, 393, 393, ˽ | |
- identifier, 393, 393, condition | |
- close-round-bracket, 393, 393, ) | |
- whitespace, 393, 393, ˽ | |
- function-arrow, 393, 393, -> | |
- newline, 393, 394, \n | |
- whitespace, 394, 394, ˽˽ | |
- identifier, 394, 394, for | |
- whitespace, 394, 394, ˽ | |
- identifier, 394, 394, index | |
- whitespace, 394, 394, ˽ | |
- in, 394, 394, in | |
- whitespace, 394, 394, ˽ | |
- open-square-bracket, 394, 394, [ | |
- identifier, 394, 394, start | |
- splat-or-range, 394, 394, .. | |
- identifier, 394, 394, code | |
- property-accessor, 394, 394, . | |
- identifier, 394, 394, length | |
- whitespace, 394, 394, ˽ | |
- math, 394, 394, - | |
- whitespace, 394, 394, ˽ | |
- number, 394, 394, 1 | |
- close-square-bracket, 394, 394, ] | |
- newline, 394, 395, \n | |
- whitespace, 395, 395, ˽˽˽˽ | |
- identifier, 395, 395, next | |
- whitespace, 395, 395, ˽˽ | |
- assignment, 395, 395, = | |
- whitespace, 395, 395, ˽ | |
- identifier, 395, 395, code | |
- open-square-bracket, 395, 395, [ | |
- identifier, 395, 395, index | |
- whitespace, 395, 395, ˽ | |
- math, 395, 395, + | |
- whitespace, 395, 395, ˽ | |
- number, 395, 395, 1 | |
- close-square-bracket, 395, 395, ] | |
- whitespace, 395, 395, ˽ | |
- identifier, 395, 395, if | |
- whitespace, 395, 395, ˽ | |
- identifier, 395, 395, index | |
- whitespace, 395, 395, ˽ | |
- compare, 395, 395, <= | |
- whitespace, 395, 395, ˽ | |
- open-round-bracket, 395, 395, ( | |
- identifier, 395, 395, code | |
- property-accessor, 395, 395, . | |
- identifier, 395, 395, length | |
- whitespace, 395, 395, ˽ | |
- math, 395, 395, - | |
- whitespace, 395, 395, ˽ | |
- identifier, 395, 395, start | |
- close-round-bracket, 395, 395, ) | |
- newline, 395, 396, \n | |
- whitespace, 396, 396, ˽˽˽˽ | |
- identifier, 396, 396, last | |
- whitespace, 396, 396, ˽˽ | |
- assignment, 396, 396, = | |
- whitespace, 396, 396, ˽ | |
- identifier, 396, 396, code | |
- open-square-bracket, 396, 396, [ | |
- identifier, 396, 396, index | |
- close-square-bracket, 396, 396, ] | |
- newline, 396, 397, \n | |
- whitespace, 397, 397, ˽˽˽˽ | |
- identifier, 397, 397, lastN | |
- whitespace, 397, 397, ˽ | |
- assignment, 397, 397, = | |
- whitespace, 397, 397, ˽ | |
- identifier, 397, 397, code | |
- open-square-bracket, 397, 397, [ | |
- open-round-bracket, 397, 397, ( | |
- identifier, 397, 397, index | |
- whitespace, 397, 397, ˽ | |
- math, 397, 397, - | |
- whitespace, 397, 397, ˽ | |
- identifier, 397, 397, start | |
- close-round-bracket, 397, 397, ) | |
- splat-or-range, 397, 397, .. | |
- identifier, 397, 397, index | |
- close-square-bracket, 397, 397, ] | |
- newline, 397, 398, \n | |
- newline, 398, 399, \n | |
- whitespace, 399, 399, ˽˽˽˽ | |
- identifier, 399, 399, return | |
- whitespace, 399, 399, ˽ | |
- identifier, 399, 399, index | |
- whitespace, 399, 399, ˽ | |
- identifier, 399, 399, if | |
- whitespace, 399, 399, ˽ | |
- identifier, 399, 399, condition | |
- whitespace, 399, 399, ˽ | |
- identifier, 399, 399, last | |
- comma, 399, 399, , | |
- whitespace, 399, 399, ˽ | |
- identifier, 399, 399, lastN | |
- comma, 399, 399, , | |
- whitespace, 399, 399, ˽ | |
- identifier, 399, 399, next | |
- comma, 399, 399, , | |
- whitespace, 399, 399, ˽ | |
- identifier, 399, 399, index | |
- comma, 399, 399, , | |
- whitespace, 399, 399, ˽ | |
- identifier, 399, 399, code | |
- newline, 399, 400, \n | |
- newline, 400, 401, \n | |
- whitespace, 401, 401, ˽˽ | |
- identifier, 401, 401, return | |
- whitespace, 401, 401, ˽ | |
- identifier, 401, 401, undefined | |
- newline, 401, 402, \n | |
- newline, 402, 403, \n | |
- comment, 403, 403, #˽Consume˽one˽character˽at˽a˽time,˽either˽into˽a˽previous˽token˽of˽type˽invalid | |
- newline, 403, 404, \n | |
- comment, 404, 404, #˽or˽into˽a˽new˽one.˽If˽consecutive˽invalid˽characters˽are˽found,˽the˽previous | |
- newline, 404, 405, \n | |
- comment, 405, 405, #˽token˽is˽updated˽with˽the˽new˽end˽position˽and˽value. | |
- newline, 405, 406, \n | |
- comment, 406, 406, # | |
- newline, 406, 407, \n | |
- comment, 407, 407, #˽This˽function˽does˽*not*˽check˽boundaries˽of˽the˽parameters.˽This˽is˽to˽be | |
- newline, 407, 408, \n | |
- comment, 408, 408, #˽done˽by˽the˽tokenize˽function. | |
- newline, 408, 409, \n | |
- identifier, 409, 409, consumeUnknown | |
- whitespace, 409, 409, ˽ | |
- assignment, 409, 409, = | |
- whitespace, 409, 409, ˽ | |
- open-round-bracket, 409, 409, ( | |
- identifier, 409, 409, stream | |
- close-round-bracket, 409, 409, ) | |
- whitespace, 409, 409, ˽ | |
- function-arrow, 409, 409, -> | |
- newline, 409, 410, \n | |
- whitespace, 410, 410, ˽˽ | |
- open-square-bracket, 410, 410, [ | |
- splat-or-range, 410, 410, ... | |
- comma, 410, 410, , | |
- whitespace, 410, 410, ˽ | |
- identifier, 410, 410, previous | |
- close-square-bracket, 410, 410, ] | |
- whitespace, 410, 410, ˽ | |
- assignment, 410, 410, = | |
- whitespace, 410, 410, ˽ | |
- identifier, 410, 410, stream | |
- property-accessor, 410, 410, . | |
- identifier, 410, 410, tokens | |
- newline, 410, 411, \n | |
- newline, 411, 412, \n | |
- whitespace, 412, 412, ˽˽ | |
- identifier, 412, 412, if | |
- whitespace, 412, 412, ˽ | |
- identifier, 412, 412, previous | |
- property-accessor, 412, 412, . | |
- identifier, 412, 412, type | |
- whitespace, 412, 412, ˽ | |
- identifier, 412, 412, is | |
- whitespace, 412, 412, ˽ | |
- string-literal, 412, 412, 'unknown' | |
- newline, 412, 413, \n | |
- whitespace, 413, 413, ˽˽˽˽ | |
- identifier, 413, 413, previous | |
- property-accessor, 413, 413, . | |
- identifier, 413, 413, end | |
- property-accessor, 413, 413, . | |
- identifier, 413, 413, index | |
- whitespace, 413, 413, ˽˽ | |
- compound-assignment, 413, 413, += | |
- whitespace, 413, 413, ˽ | |
- number, 413, 413, 1 | |
- newline, 413, 414, \n | |
- whitespace, 414, 414, ˽˽˽˽ | |
- identifier, 414, 414, previous | |
- property-accessor, 414, 414, . | |
- identifier, 414, 414, end | |
- property-accessor, 414, 414, . | |
- identifier, 414, 414, column | |
- whitespace, 414, 414, ˽ | |
- compound-assignment, 414, 414, += | |
- whitespace, 414, 414, ˽ | |
- number, 414, 414, 1 | |
- newline, 414, 415, \n | |
- whitespace, 415, 415, ˽˽˽˽ | |
- identifier, 415, 415, previous | |
- property-accessor, 415, 415, . | |
- identifier, 415, 415, value | |
- whitespace, 415, 415, ˽˽˽˽˽˽ | |
- compound-assignment, 415, 415, += | |
- whitespace, 415, 415, ˽ | |
- identifier, 415, 415, stream | |
- property-accessor, 415, 415, . | |
- identifier, 415, 415, code | |
- open-square-bracket, 415, 415, [ | |
- number, 415, 415, 0 | |
- close-square-bracket, 415, 415, ] | |
- newline, 415, 416, \n | |
- newline, 416, 417, \n | |
- whitespace, 417, 417, ˽˽˽˽ | |
- identifier, 417, 417, return | |
- whitespace, 417, 417, ˽ | |
- identifier, 417, 417, Instance | |
- whitespace, 417, 417, ˽ | |
- identifier, 417, 417, stream | |
- comma, 417, 417, , | |
- whitespace, 417, 417, ˽ | |
- open-curly-bracket, 417, 417, { | |
- whitespace, 417, 417, ˽ | |
- identifier, 417, 417, code | |
- colon, 417, 417, : | |
- whitespace, 417, 417, ˽ | |
- identifier, 417, 417, stream | |
- property-accessor, 417, 417, . | |
- identifier, 417, 417, code | |
- open-square-bracket, 417, 417, [ | |
- number, 417, 417, 1 | |
- splat-or-range, 417, 417, .. | |
- close-square-bracket, 417, 417, ] | |
- whitespace, 417, 417, ˽ | |
- close-curly-bracket, 417, 417, } | |
- newline, 417, 418, \n | |
- newline, 418, 419, \n | |
- whitespace, 419, 419, ˽˽ | |
- open-square-bracket, 419, 419, [ | |
- identifier, 419, 419, start | |
- comma, 419, 419, , | |
- whitespace, 419, 419, ˽ | |
- identifier, 419, 419, end | |
- close-square-bracket, 419, 419, ] | |
- whitespace, 419, 419, ˽ | |
- assignment, 419, 419, = | |
- whitespace, 419, 419, ˽ | |
- identifier, 419, 419, advance | |
- whitespace, 419, 419, ˽ | |
- identifier, 419, 419, previous | |
- comma, 419, 419, , | |
- whitespace, 419, 419, ˽ | |
- identifier, 419, 419, stream | |
- property-accessor, 419, 419, . | |
- identifier, 419, 419, code | |
- open-square-bracket, 419, 419, [ | |
- number, 419, 419, 0 | |
- close-square-bracket, 419, 419, ] | |
- newline, 419, 420, \n | |
- newline, 420, 421, \n | |
- whitespace, 421, 421, ˽˽ | |
- identifier, 421, 421, token | |
- whitespace, 421, 421, ˽ | |
- assignment, 421, 421, = | |
- whitespace, 421, 421, ˽ | |
- identifier, 421, 421, Instance | |
- whitespace, 421, 421, ˽ | |
- identifier, 421, 421, Token | |
- comma, 421, 421, , | |
- whitespace, 421, 421, ˽ | |
- identifier, 421, 421, previous | |
- comma, 421, 421, , | |
- whitespace, 421, 421, ˽ | |
- open-curly-bracket, 421, 421, { | |
- newline, 421, 422, \n | |
- whitespace, 422, 422, ˽˽˽˽ | |
- identifier, 422, 422, start | |
- colon, 422, 422, : | |
- whitespace, 422, 422, ˽ | |
- identifier, 422, 422, start | |
- newline, 422, 423, \n | |
- whitespace, 423, 423, ˽˽˽˽ | |
- identifier, 423, 423, end | |
- colon, 423, 423, : | |
- whitespace, 423, 423, ˽˽˽ | |
- identifier, 423, 423, end | |
- newline, 423, 424, \n | |
- whitespace, 424, 424, ˽˽˽˽ | |
- identifier, 424, 424, type | |
- colon, 424, 424, : | |
- whitespace, 424, 424, ˽˽ | |
- string-literal, 424, 424, 'unknown' | |
- newline, 424, 425, \n | |
- whitespace, 425, 425, ˽˽˽˽ | |
- identifier, 425, 425, value | |
- colon, 425, 425, : | |
- whitespace, 425, 425, ˽ | |
- identifier, 425, 425, stream | |
- property-accessor, 425, 425, . | |
- identifier, 425, 425, code | |
- open-square-bracket, 425, 425, [ | |
- number, 425, 425, 0 | |
- close-square-bracket, 425, 425, ] | |
- newline, 425, 426, \n | |
- whitespace, 426, 426, ˽˽ | |
- close-curly-bracket, 426, 426, } | |
- newline, 426, 427, \n | |
- newline, 427, 428, \n | |
- whitespace, 428, 428, ˽˽ | |
- open-curly-bracket, 428, 428, { | |
- newline, 428, 429, \n | |
- whitespace, 429, 429, ˽˽˽˽ | |
- identifier, 429, 429, code | |
- colon, 429, 429, : | |
- whitespace, 429, 429, ˽˽˽ | |
- identifier, 429, 429, stream | |
- property-accessor, 429, 429, . | |
- identifier, 429, 429, code | |
- open-square-bracket, 429, 429, [ | |
- number, 429, 429, 1 | |
- splat-or-range, 429, 429, .. | |
- close-square-bracket, 429, 429, ] | |
- newline, 429, 430, \n | |
- whitespace, 430, 430, ˽˽˽˽ | |
- identifier, 430, 430, tokens | |
- colon, 430, 430, : | |
- whitespace, 430, 430, ˽ | |
- open-square-bracket, 430, 430, [ | |
- identifier, 430, 430, stream | |
- property-accessor, 430, 430, . | |
- identifier, 430, 430, tokens | |
- splat-or-range, 430, 430, ... | |
- comma, 430, 430, , | |
- whitespace, 430, 430, ˽ | |
- identifier, 430, 430, token | |
- close-square-bracket, 430, 430, ] | |
- newline, 430, 431, \n | |
- whitespace, 431, 431, ˽˽ | |
- close-curly-bracket, 431, 431, } | |
- newline, 431, 432, \n | |
- newline, 432, 433, \n | |
- comment, 433, 433, # | |
- comment, 433, 433, #˽Constants | |
- newline, 433, 434, \n | |
- newline, 434, 435, \n | |
- identifier, 435, 435, BOM | |
- whitespace, 435, 435, ˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- assignment, 435, 435, = | |
- whitespace, 435, 435, ˽ | |
- number, 435, 435, 65279 | |
- newline, 435, 436, \n | |
- identifier, 436, 436, TRAILING_SPACES | |
- whitespace, 436, 436, ˽ | |
- assignment, 436, 436, = | |
- whitespace, 436, 436, ˽ | |
- regex, 436, 436, /\s+$/ | |
- newline, 436, 437, \n | |
- newline, 437, 438, \n | |
- identifier, 438, 438, IDENTIFIER | |
- whitespace, 438, 438, ˽ | |
- assignment, 438, 438, = | |
- whitespace, 438, 438, ˽ | |
- block-regex, 438, 441, ///˽^\n˽˽(?!\d)\n˽˽(˽(?:˽(?!\s)[$\w\x7f-\uffff]˽)+˽)\n/// | |
- newline, 441, 442, \n | |
- newline, 442, 443, \n | |
- identifier, 443, 443, OPERATOR | |
- whitespace, 443, 443, ˽ | |
- assignment, 443, 443, = | |
- whitespace, 443, 443, ˽ | |
- block-regex, 443, 452, ///˽^˽(\n˽˽?:˽[-=]>˽˽˽˽˽˽˽˽˽˽˽˽˽#˽function\n˽˽˽|˽[-+*/%<>&|^!?=]=˽˽#˽compound˽assign˽/˽compare\n˽˽˽|˽>>>=?˽˽˽˽˽˽˽˽˽˽˽˽˽#˽zero-fill˽right˽shift\n˽˽˽|˽([-+:])\1˽˽˽˽˽˽˽˽˽#˽doubles\n˽˽˽|˽([&|<>*/%])\2=?˽˽˽#˽logic˽/˽shift˽/˽power˽/˽floor˽division˽/˽modulo\n˽˽˽|˽\?(\.|::)˽˽˽˽˽˽˽˽˽#˽soak˽access\n˽˽˽|˽\.{2,3}˽˽˽˽˽˽˽˽˽˽˽#˽range˽or˽splat\n˽˽˽|˽.˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽#˽any˽other˽character\n)˽/// | |
- newline, 452, 453, \n | |
- newline, 453, 454, \n | |
- identifier, 454, 454, NUMBER | |
- whitespace, 454, 454, ˽ | |
- assignment, 454, 454, = | |
- whitespace, 454, 454, ˽ | |
- block-regex, 454, 459, ///\n˽˽^˽0b[01]+˽˽˽˽|˽˽˽˽˽˽˽˽˽˽˽˽˽˽#˽binary\n˽˽^˽0o[0-7]+˽˽˽|˽˽˽˽˽˽˽˽˽˽˽˽˽˽#˽octal\n˽˽^˽0x[\da-f]+˽|˽˽˽˽˽˽˽˽˽˽˽˽˽˽#˽hex\n˽˽^˽\d*\.?\d+˽(?:e[+-]?\d+)?˽˽#˽decimal\n/// | |
- regex-modifier, 459, 459, i | |
- newline, 459, 460, \n | |
- newline, 460, 461, \n | |
- identifier, 461, 461, REGEX | |
- whitespace, 461, 461, ˽ | |
- assignment, 461, 461, = | |
- whitespace, 461, 461, ˽ | |
- block-regex, 461, 469, ///˽^\n˽˽/˽(?!/)˽((\n˽˽?:˽[^˽[˽/˽\n˽\\˽]˽˽#˽every˽other˽thing\n˽˽˽|˽\\[^\n]˽˽˽˽˽˽˽˽˽#˽anything˽but˽newlines˽escaped\n˽˽˽|˽\[˽˽˽˽˽˽˽˽˽˽˽˽˽˽#˽character˽class\n˽˽˽˽˽˽˽(?:˽\\[^\n]˽|˽[^˽\]˽\n˽\\˽]˽)*\n˽˽˽˽˽\]\n˽˽)*)˽(/)?\n/// | |
- newline, 469, 470, \n | |
- newline, 470, 471, \n | |
- identifier, 471, 471, REGEX_MODIFIER | |
- whitespace, 471, 471, ˽ | |
- assignment, 471, 471, = | |
- whitespace, 471, 471, ˽ | |
- regex, 471, 471, /^[imgy]+/ | |
- newline, 471, 472, \n | |
- newline, 472, 473, \n | |
- identifier, 473, 473, FUNCTION | |
- whitespace, 473, 473, ˽ | |
- assignment, 473, 473, = | |
- whitespace, 473, 473, ˽ | |
- regex, 473, 473, /^[-=]>/ | |
- newline, 473, 474, \n | |
- identifier, 474, 474, COMMA | |
- whitespace, 474, 474, ˽ | |
- assignment, 474, 474, = | |
- whitespace, 474, 474, ˽ | |
- regex, 474, 474, /^,/ | |
- newline, 474, 475, \n | |
- newline, 475, 476, \n | |
- comment, 476, 476, #˽Unary˽tokens | |
- newline, 476, 477, \n | |
- identifier, 477, 477, UNARY | |
- whitespace, 477, 477, ˽ | |
- assignment, 477, 477, = | |
- whitespace, 477, 477, ˽ | |
- identifier, 477, 477, words | |
- whitespace, 477, 477, ˽ | |
- string-literal, 477, 477, 'new˽typeof˽delete˽do' | |
- newline, 477, 478, \n | |
- identifier, 478, 478, UNARY_MATH | |
- whitespace, 478, 478, ˽˽ | |
- assignment, 478, 478, = | |
- whitespace, 478, 478, ˽ | |
- identifier, 478, 478, words | |
- whitespace, 478, 478, ˽ | |
- string-literal, 478, 478, '!˽~˽not' | |
- newline, 478, 479, \n | |
- newline, 479, 480, \n | |
- comment, 480, 480, #˽Logical˽tokens | |
- newline, 480, 481, \n | |
- identifier, 481, 481, LOGIC | |
- whitespace, 481, 481, ˽ | |
- assignment, 481, 481, = | |
- whitespace, 481, 481, ˽ | |
- identifier, 481, 481, words | |
- whitespace, 481, 481, ˽ | |
- string-literal, 481, 481, '&&˽||˽&˽|˽^' | |
- newline, 481, 482, \n | |
- newline, 482, 483, \n | |
- comment, 483, 483, #˽Bit-shifting˽tokens | |
- newline, 483, 484, \n | |
- identifier, 484, 484, SHIFT | |
- whitespace, 484, 484, ˽ | |
- assignment, 484, 484, = | |
- whitespace, 484, 484, ˽ | |
- identifier, 484, 484, words | |
- whitespace, 484, 484, ˽ | |
- string-literal, 484, 484, '<<˽>>˽>>>' | |
- newline, 484, 485, \n | |
- newline, 485, 486, \n | |
- comment, 486, 486, #˽Comparison˽tokens | |
- newline, 486, 487, \n | |
- identifier, 487, 487, COMPARE | |
- whitespace, 487, 487, ˽ | |
- assignment, 487, 487, = | |
- whitespace, 487, 487, ˽ | |
- identifier, 487, 487, words | |
- whitespace, 487, 487, ˽ | |
- string-literal, 487, 487, '==˽!=˽<˽>˽<=˽>=' | |
- newline, 487, 488, \n | |
- newline, 488, 489, \n | |
- comment, 489, 489, #˽Mathematical˽tokens | |
- newline, 489, 490, \n | |
- identifier, 490, 490, MATH | |
- whitespace, 490, 490, ˽ | |
- assignment, 490, 490, = | |
- whitespace, 490, 490, ˽ | |
- identifier, 490, 490, words | |
- whitespace, 490, 490, ˽ | |
- string-literal, 490, 490, '+˽-˽*˽/˽%˽//˽%%' | |
- newline, 490, 491, \n | |
- newline, 491, 492, \n | |
- comment, 492, 492, #˽Relational˽tokens˽that˽are˽negatable˽with˽the˽unary˽not˽token | |
- newline, 492, 493, \n | |
- identifier, 493, 493, RELATION | |
- whitespace, 493, 493, ˽ | |
- assignment, 493, 493, = | |
- whitespace, 493, 493, ˽ | |
- identifier, 493, 493, words | |
- whitespace, 493, 493, ˽ | |
- string-literal, 493, 493, 'in˽of˽instanceof' | |
- newline, 493, 494, \n | |
- newline, 494, 495, \n | |
- comment, 495, 495, #˽Boolean˽tokens | |
- newline, 495, 496, \n | |
- identifier, 496, 496, BOOL | |
- whitespace, 496, 496, ˽ | |
- assignment, 496, 496, = | |
- whitespace, 496, 496, ˽ | |
- identifier, 496, 496, words | |
- whitespace, 496, 496, ˽ | |
- string-literal, 496, 496, 'true˽false˽yes˽no' | |
- newline, 496, 497, \n | |
- newline, 497, 498, \n | |
- identifier, 498, 498, COMMENT | |
- whitespace, 498, 498, ˽ | |
- assignment, 498, 498, = | |
- whitespace, 498, 498, ˽ | |
- regex, 498, 498, /^#[^#\n]*/ | |
- newline, 498, 499, \n | |
- identifier, 499, 499, BLOCK_COMMENT | |
- whitespace, 499, 499, ˽ | |
- assignment, 499, 499, = | |
- whitespace, 499, 499, ˽ | |
- regex, 499, 499, /^###.*###$/ | |
- newline, 499, 500, \n | |
- newline, 500, 501, \n | |
- identifier, 501, 501, INLINE_STRING_QUOTES | |
- whitespace, 501, 501, ˽˽˽˽˽˽˽˽˽ | |
- assignment, 501, 501, = | |
- whitespace, 501, 501, ˽ | |
- open-square-bracket, 501, 501, [ | |
- string-literal, 501, 501, '"' | |
- comma, 501, 501, , | |
- whitespace, 501, 501, ˽ | |
- string-literal, 501, 501, "'" | |
- close-square-bracket, 501, 501, ] | |
- newline, 501, 502, \n | |
- identifier, 502, 502, INLINE_STRING_ESCAPED_QUOTES | |
- whitespace, 502, 502, ˽ | |
- assignment, 502, 502, = | |
- whitespace, 502, 502, ˽ | |
- open-square-bracket, 502, 502, [ | |
- string-literal, 502, 502, '\\"' | |
- comma, 502, 502, , | |
- whitespace, 502, 502, ˽ | |
- string-literal, 502, 502, "\\'" | |
- close-square-bracket, 502, 502, ] | |
- newline, 502, 503, \n | |
- identifier, 503, 503, BLOCK_STRING | |
- whitespace, 503, 503, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- assignment, 503, 503, = | |
- whitespace, 503, 503, ˽ | |
- open-square-bracket, 503, 503, [ | |
- string-literal, 503, 503, '"""' | |
- comma, 503, 503, , | |
- whitespace, 503, 503, ˽ | |
- string-literal, 503, 503, "'''" | |
- close-square-bracket, 503, 503, ] | |
- newline, 503, 504, \n | |
- newline, 504, 505, \n | |
- newline, 505, 506, \n | |
- identifier, 506, 506, STATEMENTS | |
- whitespace, 506, 506, ˽ | |
- assignment, 506, 506, = | |
- whitespace, 506, 506, ˽ | |
- identifier, 506, 506, words | |
- whitespace, 506, 506, ˽ | |
- string-literal, 506, 506, 'break˽continue˽debugger' | |
- newline, 506, 507, \n | |
- newline, 507, 508, \n | |
- identifier, 508, 508, COMPOUND_ASSIGN | |
- whitespace, 508, 508, ˽ | |
- assignment, 508, 508, = | |
- whitespace, 508, 508, ˽ | |
- identifier, 508, 508, words | |
- whitespace, 508, 508, ˽ | |
- suppress-newline, 508, 508, \ | |
- newline, 508, 509, \n | |
- whitespace, 509, 509, ˽˽ | |
- string-literal, 509, 509, '-=˽+=˽/=˽*=˽%=˽||=˽&&=˽?=˽<<=˽>>=˽>>>=˽&=˽^=˽|=˽**=˽//=˽%%=' | |
- newline, 509, 510, \n | |
- newline, 510, 511, \n | |
- identifier, 511, 511, ACCESSOR_TYPE | |
- whitespace, 511, 511, ˽ | |
- assignment, 511, 511, = | |
- whitespace, 511, 511, ˽ | |
- open-curly-bracket, 511, 511, { | |
- newline, 511, 512, \n | |
- whitespace, 512, 512, ˽˽ | |
- string-literal, 512, 512, '.' | |
- colon, 512, 512, : | |
- whitespace, 512, 512, ˽˽ | |
- string-literal, 512, 512, 'property-accessor' | |
- newline, 512, 513, \n | |
- whitespace, 513, 513, ˽˽ | |
- string-literal, 513, 513, '@' | |
- colon, 513, 513, : | |
- whitespace, 513, 513, ˽˽ | |
- string-literal, 513, 513, 'this-accessor' | |
- newline, 513, 514, \n | |
- whitespace, 514, 514, ˽˽ | |
- string-literal, 514, 514, '::' | |
- colon, 514, 514, : | |
- whitespace, 514, 514, ˽ | |
- string-literal, 514, 514, 'prototype-accessor' | |
- newline, 514, 515, \n | |
- close-curly-bracket, 515, 515, } | |
- newline, 515, 516, \n | |
- newline, 516, 517, \n | |
- identifier, 517, 517, BRACKET_TYPE | |
- whitespace, 517, 517, ˽ | |
- assignment, 517, 517, = | |
- whitespace, 517, 517, ˽ | |
- open-curly-bracket, 517, 517, { | |
- newline, 517, 518, \n | |
- whitespace, 518, 518, ˽˽ | |
- string-literal, 518, 518, '(' | |
- colon, 518, 518, : | |
- whitespace, 518, 518, ˽ | |
- string-literal, 518, 518, 'open-round-bracket' | |
- newline, 518, 519, \n | |
- whitespace, 519, 519, ˽˽ | |
- string-literal, 519, 519, ')' | |
- colon, 519, 519, : | |
- whitespace, 519, 519, ˽ | |
- string-literal, 519, 519, 'close-round-bracket' | |
- newline, 519, 520, \n | |
- whitespace, 520, 520, ˽˽ | |
- string-literal, 520, 520, '[' | |
- colon, 520, 520, : | |
- whitespace, 520, 520, ˽ | |
- string-literal, 520, 520, 'open-square-bracket' | |
- newline, 520, 521, \n | |
- whitespace, 521, 521, ˽˽ | |
- string-literal, 521, 521, ']' | |
- colon, 521, 521, : | |
- whitespace, 521, 521, ˽ | |
- string-literal, 521, 521, 'close-square-bracket' | |
- newline, 521, 522, \n | |
- whitespace, 522, 522, ˽˽ | |
- string-literal, 522, 522, '{' | |
- colon, 522, 522, : | |
- whitespace, 522, 522, ˽ | |
- string-literal, 522, 522, 'open-curly-bracket' | |
- newline, 522, 523, \n | |
- whitespace, 523, 523, ˽˽ | |
- string-literal, 523, 523, '}' | |
- colon, 523, 523, : | |
- whitespace, 523, 523, ˽ | |
- string-literal, 523, 523, 'close-curly-bracket' | |
- newline, 523, 524, \n | |
- close-curly-bracket, 524, 524, } | |
- newline, 524, 525, \n | |
- newline, 525, 526, \n | |
- identifier, 526, 526, RANGES | |
- whitespace, 526, 526, ˽ | |
- assignment, 526, 526, = | |
- whitespace, 526, 526, ˽ | |
- open-curly-bracket, 526, 526, { | |
- newline, 526, 527, \n | |
- whitespace, 527, 527, ˽˽ | |
- string-literal, 527, 527, '..' | |
- colon, 527, 527, : | |
- whitespace, 527, 527, ˽˽ | |
- string-literal, 527, 527, 'range-exclusive' | |
- newline, 527, 528, \n | |
- whitespace, 528, 528, ˽˽ | |
- string-literal, 528, 528, '...' | |
- colon, 528, 528, : | |
- whitespace, 528, 528, ˽ | |
- string-literal, 528, 528, 'range-inclusive' | |
- newline, 528, 529, \n | |
- close-curly-bracket, 529, 529, } | |
- newline, 529, 530, \n | |
- newline, 530, 531, \n | |
- identifier, 531, 531, SPLAT | |
- whitespace, 531, 531, ˽ | |
- assignment, 531, 531, = | |
- whitespace, 531, 531, ˽ | |
- string-literal, 531, 531, '...' | |
- newline, 531, 532, \n | |
- newline, 532, 533, \n | |
- identifier, 533, 533, WHITESPACE | |
- whitespace, 533, 533, ˽ | |
- assignment, 533, 533, = | |
- whitespace, 533, 533, ˽ | |
- regex, 533, 533, /^[^\n\S]+/ | |
- newline, 533, 534, \n | |
- newline, 534, 535, \n | |
- identifier, 535, 535, identifiers | |
- whitespace, 535, 535, ˽˽˽ | |
- assignment, 535, 535, = | |
- whitespace, 535, 535, ˽ | |
- identifier, 535, 535, Tokenizer | |
- whitespace, 535, 535, ˽ | |
- identifier, 535, 535, identifierType | |
- comma, 535, 535, , | |
- whitespace, 535, 535, ˽˽˽ | |
- identifier, 535, 535, IDENTIFIER | |
- newline, 535, 536, \n | |
- identifier, 536, 536, operators | |
- whitespace, 536, 536, ˽˽˽˽˽ | |
- assignment, 536, 536, = | |
- whitespace, 536, 536, ˽ | |
- identifier, 536, 536, Tokenizer | |
- whitespace, 536, 536, ˽ | |
- identifier, 536, 536, operatorType | |
- comma, 536, 536, , | |
- whitespace, 536, 536, ˽˽˽˽˽ | |
- identifier, 536, 536, OPERATOR | |
- newline, 536, 537, \n | |
- identifier, 537, 537, comments | |
- whitespace, 537, 537, ˽˽˽˽˽˽ | |
- assignment, 537, 537, = | |
- whitespace, 537, 537, ˽ | |
- identifier, 537, 537, Tokenizer | |
- whitespace, 537, 537, ˽ | |
- string-literal, 537, 537, 'comment' | |
- comma, 537, 537, , | |
- whitespace, 537, 537, ˽˽˽˽˽˽˽˽ | |
- identifier, 537, 537, COMMENT | |
- newline, 537, 538, \n | |
- identifier, 538, 538, numbers | |
- whitespace, 538, 538, ˽˽˽˽˽˽˽ | |
- assignment, 538, 538, = | |
- whitespace, 538, 538, ˽ | |
- identifier, 538, 538, Tokenizer | |
- whitespace, 538, 538, ˽ | |
- string-literal, 538, 538, 'number' | |
- comma, 538, 538, , | |
- whitespace, 538, 538, ˽˽˽˽˽˽˽˽˽ | |
- identifier, 538, 538, NUMBER | |
- newline, 538, 539, \n | |
- identifier, 539, 539, whitespaces | |
- whitespace, 539, 539, ˽˽˽ | |
- assignment, 539, 539, = | |
- whitespace, 539, 539, ˽ | |
- identifier, 539, 539, Tokenizer | |
- whitespace, 539, 539, ˽ | |
- string-literal, 539, 539, 'whitespace' | |
- comma, 539, 539, , | |
- whitespace, 539, 539, ˽˽˽˽˽ | |
- identifier, 539, 539, WHITESPACE | |
- newline, 539, 540, \n | |
- identifier, 540, 540, regexModifier | |
- whitespace, 540, 540, ˽ | |
- assignment, 540, 540, = | |
- whitespace, 540, 540, ˽ | |
- identifier, 540, 540, Tokenizer | |
- whitespace, 540, 540, ˽ | |
- string-literal, 540, 540, 'regex-modifier' | |
- comma, 540, 540, , | |
- whitespace, 540, 540, ˽ | |
- identifier, 540, 540, REGEX_MODIFIER | |
- newline, 540, 541, \n | |
- identifier, 541, 541, commas | |
- whitespace, 541, 541, ˽˽˽˽˽˽˽˽ | |
- assignment, 541, 541, = | |
- whitespace, 541, 541, ˽ | |
- identifier, 541, 541, Tokenizer | |
- whitespace, 541, 541, ˽ | |
- string-literal, 541, 541, 'comma' | |
- comma, 541, 541, , | |
- whitespace, 541, 541, ˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 541, 541, COMMA | |
- newline, 541, 542, \n | |
- identifier, 542, 542, functions | |
- whitespace, 542, 542, ˽˽˽˽˽ | |
- assignment, 542, 542, = | |
- whitespace, 542, 542, ˽ | |
- identifier, 542, 542, Tokenizer | |
- whitespace, 542, 542, ˽ | |
- string-literal, 542, 542, 'function-arrow' | |
- comma, 542, 542, , | |
- whitespace, 542, 542, ˽ | |
- identifier, 542, 542, FUNCTION | |
- newline, 542, 543, \n | |
- newline, 543, 544, \n | |
- identifier, 544, 544, blockComments | |
- whitespace, 544, 544, ˽ | |
- assignment, 544, 544, = | |
- whitespace, 544, 544, ˽ | |
- suppress-newline, 544, 544, \ | |
- newline, 544, 545, \n | |
- whitespace, 545, 545, ˽˽ | |
- identifier, 545, 545, BlockTokenizer | |
- whitespace, 545, 545, ˽ | |
- string-literal, 545, 545, 'multi-line-comment' | |
- comma, 545, 545, , | |
- newline, 545, 546, \n | |
- whitespace, 546, 546, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- number, 546, 546, 3 | |
- comma, 546, 546, , | |
- newline, 546, 547, \n | |
- whitespace, 547, 547, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- open-round-bracket, 547, 547, ( | |
- open-round-bracket, 547, 547, ( | |
- identifier, 547, 547, _ | |
- comma, 547, 547, , | |
- whitespace, 547, 547, ˽ | |
- identifier, 547, 547, __ | |
- comma, 547, 547, , | |
- whitespace, 547, 547, ˽ | |
- identifier, 547, 547, next | |
- comma, 547, 547, , | |
- whitespace, 547, 547, ˽ | |
- identifier, 547, 547, index | |
- comma, 547, 547, , | |
- whitespace, 547, 547, ˽ | |
- identifier, 547, 547, code | |
- close-round-bracket, 547, 547, ) | |
- whitespace, 547, 547, ˽ | |
- function-arrow, 547, 547, -> | |
- whitespace, 547, 547, ˽ | |
- suppress-newline, 547, 547, \ | |
- newline, 547, 548, \n | |
- whitespace, 548, 548, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 548, 548, code | |
- open-square-bracket, 548, 548, [ | |
- identifier, 548, 548, index | |
- whitespace, 548, 548, ˽ | |
- math, 548, 548, - | |
- whitespace, 548, 548, ˽ | |
- number, 548, 548, 2 | |
- splat-or-range, 548, 548, .. | |
- identifier, 548, 548, index | |
- close-square-bracket, 548, 548, ] | |
- whitespace, 548, 548, ˽ | |
- identifier, 548, 548, is | |
- whitespace, 548, 548, ˽ | |
- string-literal, 548, 548, '###' | |
- whitespace, 548, 548, ˽ | |
- identifier, 548, 548, and | |
- whitespace, 548, 548, ˽ | |
- identifier, 548, 548, next | |
- whitespace, 548, 548, ˽ | |
- identifier, 548, 548, isnt | |
- whitespace, 548, 548, ˽ | |
- string-literal, 548, 548, '#' | |
- close-round-bracket, 548, 548, ) | |
- comma, 548, 548, , | |
- newline, 548, 549, \n | |
- whitespace, 549, 549, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- open-round-bracket, 549, 549, ( | |
- open-round-bracket, 549, 549, ( | |
- identifier, 549, 549, stream | |
- close-round-bracket, 549, 549, ) | |
- whitespace, 549, 549, ˽ | |
- function-arrow, 549, 549, -> | |
- whitespace, 549, 549, ˽ | |
- identifier, 549, 549, stream | |
- property-accessor, 549, 549, . | |
- identifier, 549, 549, code | |
- open-square-bracket, 549, 549, [ | |
- splat-or-range, 549, 549, .. | |
- number, 549, 549, 2 | |
- close-square-bracket, 549, 549, ] | |
- whitespace, 549, 549, ˽ | |
- identifier, 549, 549, is | |
- whitespace, 549, 549, ˽ | |
- string-literal, 549, 549, '###' | |
- close-round-bracket, 549, 549, ) | |
- newline, 549, 550, \n | |
- newline, 550, 551, \n | |
- identifier, 551, 551, javascript | |
- whitespace, 551, 551, ˽ | |
- assignment, 551, 551, = | |
- whitespace, 551, 551, ˽ | |
- suppress-newline, 551, 551, \ | |
- newline, 551, 552, \n | |
- whitespace, 552, 552, ˽˽ | |
- identifier, 552, 552, BlockTokenizer | |
- whitespace, 552, 552, ˽ | |
- string-literal, 552, 552, 'javascript' | |
- comma, 552, 552, , | |
- newline, 552, 553, \n | |
- whitespace, 553, 553, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- number, 553, 553, 1 | |
- comma, 553, 553, , | |
- newline, 553, 554, \n | |
- whitespace, 554, 554, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- open-round-bracket, 554, 554, ( | |
- open-round-bracket, 554, 554, ( | |
- identifier, 554, 554, last | |
- comma, 554, 554, , | |
- whitespace, 554, 554, ˽ | |
- identifier, 554, 554, lastN | |
- close-round-bracket, 554, 554, ) | |
- whitespace, 554, 554, ˽ | |
- function-arrow, 554, 554, -> | |
- whitespace, 554, 554, ˽ | |
- identifier, 554, 554, last | |
- whitespace, 554, 554, ˽ | |
- identifier, 554, 554, is | |
- whitespace, 554, 554, ˽ | |
- string-literal, 554, 554, '`' | |
- whitespace, 554, 554, ˽ | |
- identifier, 554, 554, and | |
- whitespace, 554, 554, ˽ | |
- identifier, 554, 554, lastN | |
- whitespace, 554, 554, ˽ | |
- identifier, 554, 554, isnt | |
- whitespace, 554, 554, ˽ | |
- string-literal, 554, 554, '\\`' | |
- close-round-bracket, 554, 554, ) | |
- comma, 554, 554, , | |
- newline, 554, 555, \n | |
- whitespace, 555, 555, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- open-round-bracket, 555, 555, ( | |
- open-round-bracket, 555, 555, ( | |
- identifier, 555, 555, stream | |
- close-round-bracket, 555, 555, ) | |
- whitespace, 555, 555, ˽ | |
- function-arrow, 555, 555, -> | |
- whitespace, 555, 555, ˽ | |
- identifier, 555, 555, stream | |
- property-accessor, 555, 555, . | |
- identifier, 555, 555, code | |
- open-square-bracket, 555, 555, [ | |
- number, 555, 555, 0 | |
- close-square-bracket, 555, 555, ] | |
- whitespace, 555, 555, ˽ | |
- identifier, 555, 555, is | |
- whitespace, 555, 555, ˽ | |
- string-literal, 555, 555, '`' | |
- close-round-bracket, 555, 555, ) | |
- newline, 555, 556, \n | |
- newline, 556, 557, \n | |
- identifier, 557, 557, regexConsumer | |
- whitespace, 557, 557, ˽ | |
- assignment, 557, 557, = | |
- whitespace, 557, 557, ˽ | |
- open-round-bracket, 557, 557, ( | |
- identifier, 557, 557, last | |
- comma, 557, 557, , | |
- whitespace, 557, 557, ˽ | |
- identifier, 557, 557, lastN | |
- comma, 557, 557, , | |
- whitespace, 557, 557, ˽ | |
- identifier, 557, 557, _ | |
- comma, 557, 557, , | |
- whitespace, 557, 557, ˽ | |
- identifier, 557, 557, index | |
- comma, 557, 557, , | |
- whitespace, 557, 557, ˽ | |
- identifier, 557, 557, code | |
- close-round-bracket, 557, 557, ) | |
- whitespace, 557, 557, ˽ | |
- function-arrow, 557, 557, -> | |
- newline, 557, 558, \n | |
- whitespace, 558, 558, ˽˽ | |
- identifier, 558, 558, last | |
- whitespace, 558, 558, ˽ | |
- identifier, 558, 558, is | |
- whitespace, 558, 558, ˽ | |
- string-literal, 558, 558, '/' | |
- whitespace, 558, 558, ˽ | |
- identifier, 558, 558, and | |
- newline, 558, 559, \n | |
- whitespace, 559, 559, ˽˽ | |
- open-round-bracket, 559, 559, ( | |
- identifier, 559, 559, lastN | |
- whitespace, 559, 559, ˽ | |
- identifier, 559, 559, isnt | |
- whitespace, 559, 559, ˽ | |
- string-literal, 559, 559, '\\/' | |
- whitespace, 559, 559, ˽ | |
- identifier, 559, 559, or | |
- whitespace, 559, 559, ˽ | |
- identifier, 559, 559, code | |
- open-square-bracket, 559, 559, [ | |
- identifier, 559, 559, index | |
- whitespace, 559, 559, ˽ | |
- math, 559, 559, - | |
- whitespace, 559, 559, ˽ | |
- number, 559, 559, 2 | |
- splat-or-range, 559, 559, .. | |
- identifier, 559, 559, index | |
- whitespace, 559, 559, ˽ | |
- math, 559, 559, - | |
- whitespace, 559, 559, ˽ | |
- number, 559, 559, 1 | |
- close-square-bracket, 559, 559, ] | |
- whitespace, 559, 559, ˽ | |
- identifier, 559, 559, is | |
- whitespace, 559, 559, ˽ | |
- string-literal, 559, 559, '\\\\/' | |
- close-round-bracket, 559, 559, ) | |
- newline, 559, 560, \n | |
- newline, 560, 561, \n | |
- identifier, 561, 561, regexNoModifier | |
- whitespace, 561, 561, ˽ | |
- assignment, 561, 561, = | |
- whitespace, 561, 561, ˽ | |
- identifier, 561, 561, BlockTokenizer | |
- whitespace, 561, 561, ˽ | |
- suppress-newline, 561, 561, \ | |
- newline, 561, 562, \n | |
- whitespace, 562, 562, ˽˽ | |
- string-literal, 562, 562, 'regex' | |
- comma, 562, 562, , | |
- newline, 562, 563, \n | |
- whitespace, 563, 563, ˽˽ | |
- number, 563, 563, 1 | |
- comma, 563, 563, , | |
- newline, 563, 564, \n | |
- whitespace, 564, 564, ˽˽ | |
- identifier, 564, 564, regexConsumer | |
- comma, 564, 564, , | |
- newline, 564, 565, \n | |
- whitespace, 565, 565, ˽˽ | |
- open-round-bracket, 565, 565, ( | |
- open-round-bracket, 565, 565, ( | |
- identifier, 565, 565, stream | |
- close-round-bracket, 565, 565, ) | |
- whitespace, 565, 565, ˽ | |
- function-arrow, 565, 565, -> | |
- whitespace, 565, 565, ˽ | |
- open-round-bracket, 565, 565, ( | |
- identifier, 565, 565, REGEX | |
- property-accessor, 565, 565, . | |
- identifier, 565, 565, exec | |
- whitespace, 565, 565, ˽ | |
- identifier, 565, 565, stream | |
- property-accessor, 565, 565, . | |
- identifier, 565, 565, code | |
- close-round-bracket, 565, 565, ) | |
- existential, 565, 565, ? | |
- whitespace, 565, 565, ˽ | |
- close-round-bracket, 565, 565, ) | |
- newline, 565, 566, \n | |
- newline, 566, 567, \n | |
- identifier, 567, 567, blockRegexConsumer | |
- whitespace, 567, 567, ˽ | |
- assignment, 567, 567, = | |
- whitespace, 567, 567, ˽ | |
- open-round-bracket, 567, 567, ( | |
- identifier, 567, 567, _ | |
- comma, 567, 567, , | |
- whitespace, 567, 567, ˽ | |
- identifier, 567, 567, ___ | |
- comma, 567, 567, , | |
- whitespace, 567, 567, ˽ | |
- identifier, 567, 567, next | |
- comma, 567, 567, , | |
- whitespace, 567, 567, ˽ | |
- identifier, 567, 567, index | |
- comma, 567, 567, , | |
- whitespace, 567, 567, ˽ | |
- identifier, 567, 567, code | |
- close-round-bracket, 567, 567, ) | |
- whitespace, 567, 567, ˽ | |
- function-arrow, 567, 567, -> | |
- newline, 567, 568, \n | |
- whitespace, 568, 568, ˽˽ | |
- identifier, 568, 568, code | |
- open-square-bracket, 568, 568, [ | |
- identifier, 568, 568, index | |
- whitespace, 568, 568, ˽ | |
- math, 568, 568, - | |
- whitespace, 568, 568, ˽ | |
- number, 568, 568, 2 | |
- splat-or-range, 568, 568, .. | |
- identifier, 568, 568, index | |
- close-square-bracket, 568, 568, ] | |
- whitespace, 568, 568, ˽ | |
- identifier, 568, 568, is | |
- whitespace, 568, 568, ˽ | |
- string-literal, 568, 568, '///' | |
- newline, 568, 569, \n | |
- newline, 569, 570, \n | |
- identifier, 570, 570, blockRegexNoModifier | |
- whitespace, 570, 570, ˽ | |
- assignment, 570, 570, = | |
- whitespace, 570, 570, ˽ | |
- suppress-newline, 570, 570, \ | |
- newline, 570, 571, \n | |
- whitespace, 571, 571, ˽˽ | |
- identifier, 571, 571, BlockTokenizer | |
- whitespace, 571, 571, ˽ | |
- string-literal, 571, 571, 'block-regex' | |
- comma, 571, 571, , | |
- newline, 571, 572, \n | |
- whitespace, 572, 572, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- number, 572, 572, 3 | |
- comma, 572, 572, , | |
- newline, 572, 573, \n | |
- whitespace, 573, 573, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- identifier, 573, 573, blockRegexConsumer | |
- comma, 573, 573, , | |
- newline, 573, 574, \n | |
- whitespace, 574, 574, ˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽˽ | |
- open-round-bracket, 574, 574, ( | |
- open-round-bracket, 574, 574, ( | |
- identifier, 574, 574, stream | |
- close-round-bracket, 574, 574, ) | |
- whitespace, 574, 574, ˽ | |
- function-arrow, 574, 574, -> | |
- whitespace, 574, 574, ˽ | |
- identifier, 574, 574, stream | |
- property-accessor, 574, 574, . | |
- identifier, 574, 574, code | |
- open-square-bracket, 574, 574, [ | |
- splat-or-range, 574, 574, .. | |
- number, 574, 574, 2 | |
- close-square-bracket, 574, 574, ] | |
- whitespace, 574, 574, ˽ | |
- identifier, 574, 574, is | |
- whitespace, 574, 574, ˽ | |
- string-literal, 574, 574, '///' | |
- close-round-bracket, 574, 574, ) | |
- newline, 574, 575, \n | |
- newline, 575, 576, \n | |
- identifier, 576, 576, regex | |
- whitespace, 576, 576, ˽˽˽˽˽˽ | |
- assignment, 576, 576, = | |
- whitespace, 576, 576, ˽ | |
- open-round-bracket, 576, 576, ( | |
- identifier, 576, 576, stream | |
- close-round-bracket, 576, 576, ) | |
- whitespace, 576, 576, ˽ | |
- function-arrow, 576, 576, -> | |
- whitespace, 576, 576, ˽ | |
- identifier, 576, 576, regexModifier | |
- whitespace, 576, 576, ˽ | |
- identifier, 576, 576, regexNoModifier | |
- whitespace, 576, 576, ˽ | |
- identifier, 576, 576, stream | |
- newline, 576, 577, \n | |
- identifier, 577, 577, blockRegex | |
- whitespace, 577, 577, ˽ | |
- assignment, 577, 577, = | |
- whitespace, 577, 577, ˽ | |
- open-round-bracket, 577, 577, ( | |
- identifier, 577, 577, stream | |
- close-round-bracket, 577, 577, ) | |
- whitespace, 577, 577, ˽ | |
- function-arrow, 577, 577, -> | |
- whitespace, 577, 577, ˽ | |
- identifier, 577, 577, regexModifier | |
- whitespace, 577, 577, ˽ | |
- identifier, 577, 577, blockRegexNoModifier | |
- whitespace, 577, 577, ˽ | |
- identifier, 577, 577, stream | |
- newline, 577, 578, \n | |
- newline, 578, 579, \n | |
- comment, 579, 579, #˽Main˽entry˽point˽for˽the˽lexer | |
- newline, 579, 580, \n | |
- comment, 580, 580, # | |
- newline, 580, 581, \n | |
- comment, 581, 581, #˽Takes˽a˽string˽and˽an˽optional˽filename,˽returns˽an˽array˽of˽token˽objects. | |
- newline, 581, 582, \n | |
- identifier, 582, 582, lexer | |
- whitespace, 582, 582, ˽ | |
- assignment, 582, 582, = | |
- whitespace, 582, 582, ˽ | |
- open-round-bracket, 582, 582, ( | |
- identifier, 582, 582, code | |
- comma, 582, 582, , | |
- whitespace, 582, 582, ˽ | |
- identifier, 582, 582, filename | |
- close-round-bracket, 582, 582, ) | |
- whitespace, 582, 582, ˽ | |
- function-arrow, 582, 582, -> | |
- newline, 582, 583, \n | |
- whitespace, 583, 583, ˽˽ | |
- identifier, 583, 583, stream | |
- whitespace, 583, 583, ˽ | |
- assignment, 583, 583, = | |
- whitespace, 583, 583, ˽ | |
- identifier, 583, 583, tokenize | |
- whitespace, 583, 583, ˽ | |
- identifier, 583, 583, initialToken | |
- whitespace, 583, 583, ˽ | |
- identifier, 583, 583, code | |
- comma, 583, 583, , | |
- whitespace, 583, 583, ˽ | |
- identifier, 583, 583, filename | |
- newline, 583, 584, \n | |
- whitespace, 584, 584, ˽˽ | |
- identifier, 584, 584, stream | |
- property-accessor, 584, 584, . | |
- identifier, 584, 584, tokens | |
- newline, 584, 585, \n | |
- newline, 585, 586, \n | |
- comment, 586, 586, #˽Turn˽code˽and˽a˽stream˽of˽tokens˽into˽a˽stream˽of˽tokens˽recursively | |
- newline, 586, 587, \n | |
- comment, 587, 587, #˽tokenizing˽the˽string. | |
- newline, 587, 588, \n | |
- comment, 588, 588, # | |
- newline, 588, 589, \n | |
- comment, 589, 589, #˽This˽function˽will˽call˽all˽tokenize˽functions˽in˽specific˽order˽and˽then | |
- newline, 589, 590, \n | |
- comment, 590, 590, #˽itself˽until˽no˽more˽code˽is˽available˽or˽a˽complete˽lexing˽pass˽has˽not | |
- newline, 590, 591, \n | |
- comment, 591, 591, #˽changed˽the˽string˽to˽analyse. | |
- newline, 591, 592, \n | |
- identifier, 592, 592, tokenize | |
- whitespace, 592, 592, ˽ | |
- assignment, 592, 592, = | |
- whitespace, 592, 592, ˽ | |
- open-round-bracket, 592, 592, ( | |
- identifier, 592, 592, stream | |
- close-round-bracket, 592, 592, ) | |
- whitespace, 592, 592, ˽ | |
- function-arrow, 592, 592, -> | |
- newline, 592, 593, \n | |
- whitespace, 593, 593, ˽˽ | |
- identifier, 593, 593, newStream | |
- whitespace, 593, 593, ˽ | |
- assignment, 593, 593, = | |
- whitespace, 593, 593, ˽ | |
- identifier, 593, 593, stream | |
- newline, 593, 594, \n | |
- newline, 594, 595, \n | |
- whitespace, 595, 595, ˽˽ | |
- identifier, 595, 595, while | |
- whitespace, 595, 595, ˽ | |
- identifier, 595, 595, newStream | |
- property-accessor, 595, 595, . | |
- identifier, 595, 595, code | |
- property-accessor, 595, 595, . | |
- identifier, 595, 595, length | |
- newline, 595, 596, \n | |
- whitespace, 596, 596, ˽˽˽˽ | |
- open-square-bracket, 596, 596, [ | |
- splat-or-range, 596, 596, ... | |
- comma, 596, 596, , | |
- whitespace, 596, 596, ˽ | |
- identifier, 596, 596, last | |
- close-square-bracket, 596, 596, ] | |
- whitespace, 596, 596, ˽ | |
- assignment, 596, 596, = | |
- whitespace, 596, 596, ˽ | |
- identifier, 596, 596, stream | |
- property-accessor, 596, 596, . | |
- identifier, 596, 596, tokens | |
- newline, 596, 597, \n | |
- whitespace, 597, 597, ˽˽˽˽ | |
- identifier, 597, 597, oldStream | |
- whitespace, 597, 597, ˽ | |
- assignment, 597, 597, = | |
- whitespace, 597, 597, ˽ | |
- identifier, 597, 597, newStream | |
- newline, 597, 598, \n | |
- newline, 598, 599, \n | |
- whitespace, 599, 599, ˽˽˽˽ | |
- comment, 599, 599, #˽This˽is˽a˽hack.˽But˽it˽does˽work˽for˽now. | |
- newline, 599, 600, \n | |
- whitespace, 600, 600, ˽˽˽˽ | |
- identifier, 600, 600, newStream | |
- whitespace, 600, 600, ˽ | |
- assignment, 600, 600, = | |
- whitespace, 600, 600, ˽ | |
- identifier, 600, 600, identifiers | |
- whitespace, 600, 600, ˽ | |
- identifier, 600, 600, oldStream | |
- terminator, 600, 600, ; | |
- whitespace, 600, 600, ˽˽˽ | |
- statement, 600, 600, continue | |
- whitespace, 600, 600, ˽ | |
- identifier, 600, 600, if | |
- whitespace, 600, 600, ˽ | |
- identifier, 600, 600, newStream | |
- whitespace, 600, 600, ˽ | |
- identifier, 600, 600, isnt | |
- whitespace, 600, 600, ˽ | |
- identifier, 600, 600, oldStream | |
- newline, 600, 601, \n | |
- whitespace, 601, 601, ˽˽˽˽ | |
- identifier, 601, 601, newStream | |
- whitespace, 601, 601, ˽ | |
- assignment, 601, 601, = | |
- whitespace, 601, 601, ˽ | |
- identifier, 601, 601, blockComments | |
- whitespace, 601, 601, ˽ | |
- identifier, 601, 601, newStream | |
- terminator, 601, 601, ; | |
- whitespace, 601, 601, ˽ | |
- statement, 601, 601, continue | |
- whitespace, 601, 601, ˽ | |
- identifier, 601, 601, if | |
- whitespace, 601, 601, ˽ | |
- identifier, 601, 601, newStream | |
- whitespace, 601, 601, ˽ | |
- identifier, 601, 601, isnt | |
- whitespace, 601, 601, ˽ | |
- identifier, 601, 601, oldStream | |
- newline, 601, 602, \n | |
- whitespace, 602, 602, ˽˽˽˽ | |
- identifier, 602, 602, newStream | |
- whitespace, 602, 602, ˽ | |
- assignment, 602, 602, = | |
- whitespace, 602, 602, ˽ | |
- identifier, 602, 602, comments | |
- whitespace, 602, 602, ˽ | |
- identifier, 602, 602, newStream | |
- terminator, 602, 602, ; | |
- whitespace, 602, 602, ˽˽˽˽˽˽ | |
- statement, 602, 602, continue | |
- whitespace, 602, 602, ˽ | |
- identifier, 602, 602, if | |
- whitespace, 602, 602, ˽ | |
- identifier, 602, 602, newStream | |
- whitespace, 602, 602, ˽ | |
- identifier, 602, 602, isnt | |
- whitespace, 602, 602, ˽ | |
- identifier, 602, 602, oldStream | |
- newline, 602, 603, \n | |
- whitespace, 603, 603, ˽˽˽˽ | |
- identifier, 603, 603, newStream | |
- whitespace, 603, 603, ˽ | |
- assignment, 603, 603, = | |
- whitespace, 603, 603, ˽ | |
- identifier, 603, 603, whitespaces | |
- whitespace, 603, 603, ˽ | |
- identifier, 603, 603, newStream | |
- terminator, 603, 603, ; | |
- whitespace, 603, 603, ˽˽˽ | |
- statement, 603, 603, continue | |
- whitespace, 603, 603, ˽ | |
- identifier, 603, 603, if | |
- whitespace, 603, 603, ˽ | |
- identifier, 603, 603, newStream | |
- whitespace, 603, 603, ˽ | |
- identifier, 603, 603, isnt | |
- whitespace, 603, 603, ˽ | |
- identifier, 603, 603, oldStream | |
- newline, 603, 604, \n | |
- whitespace, 604, 604, ˽˽˽˽ | |
- identifier, 604, 604, newStream | |
- whitespace, 604, 604, ˽ | |
- assignment, 604, 604, = | |
- whitespace, 604, 604, ˽ | |
- identifier, 604, 604, lines | |
- whitespace, 604, 604, ˽ | |
- identifier, 604, 604, newStream | |
- terminator, 604, 604, ; | |
- whitespace, 604, 604, ˽˽˽˽˽˽˽˽˽ | |
- statement, 604, 604, continue | |
- whitespace, 604, 604, ˽ | |
- identifier, 604, 604, if | |
- whitespace, 604, 604, ˽ | |
- identifier, 604, 604, newStream | |
- whitespace, 604, 604, ˽ | |
- identifier, 604, 604, isnt | |
- whitespace, 604, 604, ˽ | |
- identifier, 604, 604, oldStream | |
- newline, 604, 605, \n | |
- whitespace, 605, 605, ˽˽˽˽ | |
- identifier, 605, 605, newStream | |
- whitespace, 605, 605, ˽ | |
- assignment, 605, 605, = | |
- whitespace, 605, 605, ˽ | |
- identifier, 605, 605, blockStrings | |
- whitespace, 605, 605, ˽ | |
- identifier, 605, 605, newStream | |
- terminator, 605, 605, ; | |
- whitespace, 605, 605, ˽˽ | |
- statement, 605, 605, continue | |
- whitespace, 605, 605, ˽ | |
- identifier, 605, 605, if | |
- whitespace, 605, 605, ˽ | |
- identifier, 605, 605, newStream | |
- whitespace, 605, 605, ˽ | |
- identifier, 605, 605, isnt | |
- whitespace, 605, 605, ˽ | |
- identifier, 605, 605, oldStream | |
- newline, 605, 606, \n | |
- whitespace, 606, 606, ˽˽˽˽ | |
- identifier, 606, 606, newStream | |
- whitespace, 606, 606, ˽ | |
- assignment, 606, 606, = | |
- whitespace, 606, 606, ˽ | |
- identifier, 606, 606, strings | |
- whitespace, 606, 606, ˽ | |
- identifier, 606, 606, newStream | |
- terminator, 606, 606, ; | |
- whitespace, 606, 606, ˽˽˽˽˽˽˽ | |
- statement, 606, 606, continue | |
- whitespace, 606, 606, ˽ | |
- identifier, 606, 606, if | |
- whitespace, 606, 606, ˽ | |
- identifier, 606, 606, newStream | |
- whitespace, 606, 606, ˽ | |
- identifier, 606, 606, isnt | |
- whitespace, 606, 606, ˽ | |
- identifier, 606, 606, oldStream | |
- newline, 606, 607, \n | |
- whitespace, 607, 607, ˽˽˽˽ | |
- identifier, 607, 607, newStream | |
- whitespace, 607, 607, ˽ | |
- assignment, 607, 607, = | |
- whitespace, 607, 607, ˽ | |
- identifier, 607, 607, numbers | |
- whitespace, 607, 607, ˽ | |
- identifier, 607, 607, newStream | |
- terminator, 607, 607, ; | |
- whitespace, 607, 607, ˽˽˽˽˽˽˽ | |
- statement, 607, 607, continue | |
- whitespace, 607, 607, ˽ | |
- identifier, 607, 607, if | |
- whitespace, 607, 607, ˽ | |
- identifier, 607, 607, newStream | |
- whitespace, 607, 607, ˽ | |
- identifier, 607, 607, isnt | |
- whitespace, 607, 607, ˽ | |
- identifier, 607, 607, oldStream | |
- newline, 607, 608, \n | |
- whitespace, 608, 608, ˽˽˽˽ | |
- identifier, 608, 608, newStream | |
- whitespace, 608, 608, ˽ | |
- assignment, 608, 608, = | |
- whitespace, 608, 608, ˽ | |
- identifier, 608, 608, blockRegex | |
- whitespace, 608, 608, ˽ | |
- identifier, 608, 608, newStream | |
- terminator, 608, 608, ; | |
- whitespace, 608, 608, ˽˽˽˽ | |
- statement, 608, 608, continue | |
- whitespace, 608, 608, ˽ | |
- identifier, 608, 608, if | |
- whitespace, 608, 608, ˽ | |
- identifier, 608, 608, newStream | |
- whitespace, 608, 608, ˽ | |
- identifier, 608, 608, isnt | |
- whitespace, 608, 608, ˽ | |
- identifier, 608, 608, oldStream | |
- newline, 608, 609, \n | |
- whitespace, 609, 609, ˽˽˽˽ | |
- identifier, 609, 609, newStream | |
- whitespace, 609, 609, ˽ | |
- assignment, 609, 609, = | |
- whitespace, 609, 609, ˽ | |
- identifier, 609, 609, regex | |
- whitespace, 609, 609, ˽ | |
- identifier, 609, 609, newStream | |
- terminator, 609, 609, ; | |
- whitespace, 609, 609, ˽˽˽˽˽˽˽˽˽ | |
- statement, 609, 609, continue | |
- whitespace, 609, 609, ˽ | |
- identifier, 609, 609, if | |
- whitespace, 609, 609, ˽ | |
- identifier, 609, 609, newStream | |
- whitespace, 609, 609, ˽ | |
- identifier, 609, 609, isnt | |
- whitespace, 609, 609, ˽ | |
- identifier, 609, 609, oldStream | |
- newline, 609, 610, \n | |
- whitespace, 610, 610, ˽˽˽˽ | |
- identifier, 610, 610, newStream | |
- whitespace, 610, 610, ˽ | |
- assignment, 610, 610, = | |
- whitespace, 610, 610, ˽ | |
- identifier, 610, 610, javascript | |
- whitespace, 610, 610, ˽˽ | |
- identifier, 610, 610, newStream | |
- terminator, 610, 610, ; | |
- whitespace, 610, 610, ˽˽˽ | |
- statement, 610, 610, continue | |
- whitespace, 610, 610, ˽ | |
- identifier, 610, 610, if | |
- whitespace, 610, 610, ˽ | |
- identifier, 610, 610, newStream | |
- whitespace, 610, 610, ˽ | |
- identifier, 610, 610, isnt | |
- whitespace, 610, 610, ˽ | |
- identifier, 610, 610, oldStream | |
- newline, 610, 611, \n | |
- whitespace, 611, 611, ˽˽˽˽ | |
- identifier, 611, 611, newStream | |
- whitespace, 611, 611, ˽ | |
- assignment, 611, 611, = | |
- whitespace, 611, 611, ˽ | |
- identifier, 611, 611, functions | |
- whitespace, 611, 611, ˽ | |
- identifier, 611, 611, newStream | |
- terminator, 611, 611, ; | |
- whitespace, 611, 611, ˽˽˽˽˽ | |
- statement, 611, 611, continue | |
- whitespace, 611, 611, ˽ | |
- identifier, 611, 611, if | |
- whitespace, 611, 611, ˽ | |
- identifier, 611, 611, newStream | |
- whitespace, 611, 611, ˽ | |
- identifier, 611, 611, isnt | |
- whitespace, 611, 611, ˽ | |
- identifier, 611, 611, oldStream | |
- newline, 611, 612, \n | |
- whitespace, 612, 612, ˽˽˽˽ | |
- identifier, 612, 612, newStream | |
- whitespace, 612, 612, ˽ | |
- assignment, 612, 612, = | |
- whitespace, 612, 612, ˽ | |
- identifier, 612, 612, commas | |
- whitespace, 612, 612, ˽ | |
- identifier, 612, 612, newStream | |
- terminator, 612, 612, ; | |
- whitespace, 612, 612, ˽˽˽˽˽˽˽˽ | |
- statement, 612, 612, continue | |
- whitespace, 612, 612, ˽ | |
- identifier, 612, 612, if | |
- whitespace, 612, 612, ˽ | |
- identifier, 612, 612, newStream | |
- whitespace, 612, 612, ˽ | |
- identifier, 612, 612, isnt | |
- whitespace, 612, 612, ˽ | |
- identifier, 612, 612, oldStream | |
- newline, 612, 613, \n | |
- whitespace, 613, 613, ˽˽˽˽ | |
- identifier, 613, 613, newStream | |
- whitespace, 613, 613, ˽ | |
- assignment, 613, 613, = | |
- whitespace, 613, 613, ˽ | |
- identifier, 613, 613, operators | |
- whitespace, 613, 613, ˽ | |
- identifier, 613, 613, newStream | |
- terminator, 613, 613, ; | |
- whitespace, 613, 613, ˽˽˽˽˽ | |
- statement, 613, 613, continue | |
- whitespace, 613, 613, ˽ | |
- identifier, 613, 613, if | |
- whitespace, 613, 613, ˽ | |
- identifier, 613, 613, newStream | |
- whitespace, 613, 613, ˽ | |
- identifier, 613, 613, isnt | |
- whitespace, 613, 613, ˽ | |
- identifier, 613, 613, oldStream | |
- newline, 613, 614, \n | |
- whitespace, 614, 614, ˽˽˽˽ | |
- identifier, 614, 614, newStream | |
- whitespace, 614, 614, ˽ | |
- assignment, 614, 614, = | |
- whitespace, 614, 614, ˽ | |
- identifier, 614, 614, accessors | |
- whitespace, 614, 614, ˽ | |
- identifier, 614, 614, newStream | |
- terminator, 614, 614, ; | |
- whitespace, 614, 614, ˽˽˽˽˽ | |
- statement, 614, 614, continue | |
- whitespace, 614, 614, ˽ | |
- identifier, 614, 614, if | |
- whitespace, 614, 614, ˽ | |
- identifier, 614, 614, newStream | |
- whitespace, 614, 614, ˽ | |
- identifier, 614, 614, isnt | |
- whitespace, 614, 614, ˽ | |
- identifier, 614, 614, oldStream | |
- newline, 614, 615, \n | |
- newline, 615, 616, \n | |
- whitespace, 616, 616, ˽˽˽˽ | |
- comment, 616, 616, #˽No˽tokenize˽function˽found˽a˽valid˽string.˽Consume˽one˽character˽at˽a˽time | |
- newline, 616, 617, \n | |
- whitespace, 617, 617, ˽˽˽˽ | |
- comment, 617, 617, #˽into˽a˽token˽with˽type˽'unknown'˽until˽a˽valid˽one˽is˽found˽or˽the˽end˽of | |
- newline, 617, 618, \n | |
- whitespace, 618, 618, ˽˽˽˽ | |
- comment, 618, 618, #˽the˽source˽has˽been˽reached. | |
- newline, 618, 619, \n | |
- whitespace, 619, 619, ˽˽˽˽ | |
- identifier, 619, 619, if | |
- whitespace, 619, 619, ˽ | |
- identifier, 619, 619, newStream | |
- property-accessor, 619, 619, . | |
- identifier, 619, 619, tokens | |
- property-accessor, 619, 619, . | |
- identifier, 619, 619, length | |
- whitespace, 619, 619, ˽ | |
- identifier, 619, 619, is | |
- whitespace, 619, 619, ˽ | |
- identifier, 619, 619, oldStream | |
- property-accessor, 619, 619, . | |
- identifier, 619, 619, tokens | |
- property-accessor, 619, 619, . | |
- identifier, 619, 619, length | |
- newline, 619, 620, \n | |
- whitespace, 620, 620, ˽˽˽˽˽˽ | |
- identifier, 620, 620, newStream | |
- whitespace, 620, 620, ˽ | |
- assignment, 620, 620, = | |
- whitespace, 620, 620, ˽ | |
- identifier, 620, 620, consumeUnknown | |
- whitespace, 620, 620, ˽ | |
- identifier, 620, 620, oldStream | |
- newline, 620, 621, \n | |
- newline, 621, 622, \n | |
- whitespace, 622, 622, ˽˽ | |
- identifier, 622, 622, newStream | |
- newline, 622, 623, \n | |
- newline, 623, 624, \n | |
- identifier, 624, 624, module | |
- property-accessor, 624, 624, . | |
- identifier, 624, 624, exports | |
- whitespace, 624, 624, ˽ | |
- assignment, 624, 624, = | |
- whitespace, 624, 624, ˽ | |
- open-curly-bracket, 624, 624, { | |
- newline, 624, 625, \n | |
- whitespace, 625, 625, ˽˽ | |
- identifier, 625, 625, lexer | |
- newline, 625, 626, \n | |
- whitespace, 626, 626, ˽˽ | |
- identifier, 626, 626, tokenize | |
- newline, 626, 627, \n | |
- newline, 627, 628, \n | |
- whitespace, 628, 628, ˽˽ | |
- identifier, 628, 628, identifiers | |
- newline, 628, 629, \n | |
- whitespace, 629, 629, ˽˽ | |
- identifier, 629, 629, identifierType | |
- newline, 629, 630, \n | |
- whitespace, 630, 630, ˽˽ | |
- identifier, 630, 630, blockComments | |
- newline, 630, 631, \n | |
- whitespace, 631, 631, ˽˽ | |
- identifier, 631, 631, comments | |
- newline, 631, 632, \n | |
- whitespace, 632, 632, ˽˽ | |
- identifier, 632, 632, whitespaces | |
- newline, 632, 633, \n | |
- whitespace, 633, 633, ˽˽ | |
- identifier, 633, 633, lines | |
- newline, 633, 634, \n | |
- whitespace, 634, 634, ˽˽ | |
- identifier, 634, 634, blockStrings | |
- newline, 634, 635, \n | |
- whitespace, 635, 635, ˽˽ | |
- identifier, 635, 635, strings | |
- newline, 635, 636, \n | |
- whitespace, 636, 636, ˽˽ | |
- identifier, 636, 636, numbers | |
- newline, 636, 637, \n | |
- whitespace, 637, 637, ˽˽ | |
- identifier, 637, 637, blockRegex | |
- newline, 637, 638, \n | |
- whitespace, 638, 638, ˽˽ | |
- identifier, 638, 638, regex | |
- newline, 638, 639, \n | |
- whitespace, 639, 639, ˽˽ | |
- identifier, 639, 639, javascript | |
- newline, 639, 640, \n | |
- whitespace, 640, 640, ˽˽ | |
- identifier, 640, 640, functions | |
- newline, 640, 641, \n | |
- whitespace, 641, 641, ˽˽ | |
- identifier, 641, 641, commas | |
- newline, 641, 642, \n | |
- whitespace, 642, 642, ˽˽ | |
- identifier, 642, 642, operators | |
- newline, 642, 643, \n | |
- whitespace, 643, 643, ˽˽ | |
- identifier, 643, 643, operatorType | |
- newline, 643, 644, \n | |
- whitespace, 644, 644, ˽˽ | |
- identifier, 644, 644, accessors | |
- newline, 644, 645, \n | |
- newline, 645, 646, \n | |
- whitespace, 646, 646, ˽˽ | |
- identifier, 646, 646, Token | |
- newline, 646, 647, \n | |
- whitespace, 647, 647, ˽˽ | |
- identifier, 647, 647, Location | |
- newline, 647, 648, \n | |
- whitespace, 648, 648, ˽˽ | |
- identifier, 648, 648, TokenStream | |
- newline, 648, 649, \n | |
- newline, 649, 650, \n | |
- whitespace, 650, 650, ˽˽ | |
- identifier, 650, 650, IDENTIFIER | |
- newline, 650, 651, \n | |
- whitespace, 651, 651, ˽˽ | |
- identifier, 651, 651, OPERATOR | |
- newline, 651, 652, \n | |
- whitespace, 652, 652, ˽˽ | |
- identifier, 652, 652, UNARY | |
- newline, 652, 653, \n | |
- whitespace, 653, 653, ˽˽ | |
- identifier, 653, 653, UNARY_MATH | |
- newline, 653, 654, \n | |
- whitespace, 654, 654, ˽˽ | |
- identifier, 654, 654, LOGIC | |
- newline, 654, 655, \n | |
- whitespace, 655, 655, ˽˽ | |
- identifier, 655, 655, SHIFT | |
- newline, 655, 656, \n | |
- whitespace, 656, 656, ˽˽ | |
- identifier, 656, 656, COMPARE | |
- newline, 656, 657, \n | |
- whitespace, 657, 657, ˽˽ | |
- identifier, 657, 657, MATH | |
- newline, 657, 658, \n | |
- whitespace, 658, 658, ˽˽ | |
- identifier, 658, 658, RELATION | |
- newline, 658, 659, \n | |
- whitespace, 659, 659, ˽˽ | |
- identifier, 659, 659, BOOL | |
- newline, 659, 660, \n | |
- whitespace, 660, 660, ˽˽ | |
- identifier, 660, 660, COMMENT | |
- newline, 660, 661, \n | |
- whitespace, 661, 661, ˽˽ | |
- identifier, 661, 661, BLOCK_COMMENT | |
- newline, 661, 662, \n | |
- whitespace, 662, 662, ˽˽ | |
- identifier, 662, 662, INLINE_STRING_QUOTES | |
- newline, 662, 663, \n | |
- whitespace, 663, 663, ˽˽ | |
- identifier, 663, 663, STATEMENTS | |
- newline, 663, 664, \n | |
- whitespace, 664, 664, ˽˽ | |
- identifier, 664, 664, WHITESPACE | |
- newline, 664, 665, \n | |
- newline, 665, 666, \n | |
- whitespace, 666, 666, ˽˽ | |
- identifier, 666, 666, helper | |
- colon, 666, 666, : | |
- whitespace, 666, 666, ˽ | |
- open-curly-bracket, 666, 666, { | |
- newline, 666, 667, \n | |
- whitespace, 667, 667, ˽˽˽˽ | |
- identifier, 667, 667, clean | |
- newline, 667, 668, \n | |
- whitespace, 668, 668, ˽˽˽˽ | |
- identifier, 668, 668, stripBOM | |
- newline, 668, 669, \n | |
- whitespace, 669, 669, ˽˽˽˽ | |
- identifier, 669, 669, stripTrailingSpaces | |
- newline, 669, 670, \n | |
- whitespace, 670, 670, ˽˽˽˽ | |
- identifier, 670, 670, stripCarriageReturns | |
- newline, 670, 671, \n | |
- whitespace, 671, 671, ˽˽˽˽ | |
- identifier, 671, 671, words | |
- newline, 671, 672, \n | |
- whitespace, 672, 672, ˽˽˽˽ | |
- identifier, 672, 672, initialToken | |
- newline, 672, 673, \n | |
- whitespace, 673, 673, ˽˽˽˽ | |
- identifier, 673, 673, advance | |
- newline, 673, 674, \n | |
- whitespace, 674, 674, ˽˽˽˽ | |
- identifier, 674, 674, advanceBlock | |
- newline, 674, 675, \n | |
- whitespace, 675, 675, ˽˽˽˽ | |
- identifier, 675, 675, blockEndLocation | |
- newline, 675, 676, \n | |
- whitespace, 676, 676, ˽˽˽˽ | |
- identifier, 676, 676, consumeUnknown | |
- newline, 676, 677, \n | |
- whitespace, 677, 677, ˽˽ | |
- close-curly-bracket, 677, 677, } | |
- newline, 677, 678, \n | |
- close-curly-bracket, 678, 678, } | |
- newline, 678, 679, \n |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment