Code view:

A painting is a person's account of this edit as text, recorded independently of the node mapping - a rendering often has several equally defensible answers where the mapping has one. Deletions and insertions carry no position on the opposite side in a painting, so that panel draws no caret for them.

Before

…lines 1–1956 unchanged (1956 lines)
1957 if (!_loadMore()) { // acceptable for now (will error out later)
1958 break;
1959 }
1960 }
1961 char c = _inputBuffer[_inputPtr];
1962 int i = (int) c;
1963 if (i <= maxCode) {
1964 if (codes[i] != 0) {
1965 break;
1966 }
1967 } else if (!Character.isJavaIdentifierPart(c)) {
1968 break;
1969 }
…lines 1970–2881 unchanged (912 lines)

After

…lines 1–1956 unchanged (1956 lines)
1957 if (!_loadMore()) { // acceptable for now (will error out later)
1958 break;
1959 }
1960 }
1961 char c = _inputBuffer[_inputPtr];
1962 int i = (int) c;
1963 if (i < maxCode) {
1964 if (codes[i] != 0) {
1965 break;
1966 }
1967 } else if (!Character.isJavaIdentifierPart(c)) {
1968 break;
1969 }
…lines 1970–2881 unchanged (912 lines)

Before

program
package_declaration
package "package"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "json"
; ";"
import_declaration
import "import"
scoped_identifier
identifier "java"
. "."
identifier "io"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "base"
. "."
identifier "ParserBase"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "io"
. "."
identifier "CharTypes"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "io"
. "."
identifier "IOContext"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "sym"
. "."
identifier "CharsToNameCanonicalizer"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "util"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
static "static"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "JsonTokenId"
. "."
asterisk
* "*"
; ";"
block_comment "/**\n * This is a concrete implementation of {@link JsonParse"...
class_declaration
modifiers
public "public"
class "class"
identifier "ReaderBasedJsonParser"
line_comment "// final in 2.3, earlier"
superclass
extends "extends"
type_identifier "ParserBase"
class_body
{ "{"
field_declaration (+21 nodes collapsed)
line_comment "// Latin1 encoding is not supported, but we do use 8-bit sub"...
line_comment "// pre-processing task, to simplify first pass, keep it fast"...
field_declaration (+22 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Reader that can be used for reading more content,"...
field_declaration
modifiers
protected "protected"
type_identifier "Reader"
variable_declarator
identifier "_reader"
; ";"
block_comment "/**\n * Current buffer from which data is read; generally"...
field_declaration
modifiers
protected "protected"
array_type
integral_type
char "char"
dimensions
[ "["
] "]"
variable_declarator
identifier "_inputBuffer"
; ";"
block_comment "/**\n * Flag that indicates whether the input buffer is r"...
field_declaration
modifiers
protected "protected"
boolean_type "boolean"
variable_declarator
identifier "_bufferRecyclable"
; ";"
block_comment "/*\n /****************************************************"...
field_declaration
modifiers
protected "protected"
type_identifier "ObjectCodec"
variable_declarator
identifier "_objectCodec"
; ";"
field_declaration
modifiers
final "final"
protected "protected"
type_identifier "CharsToNameCanonicalizer"
variable_declarator
identifier "_symbols"
; ";"
field_declaration
modifiers
final "final"
protected "protected"
integral_type
int "int"
variable_declarator
identifier "_hashSeed"
; ";"
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Flag that indicates that the current token has no"...
field_declaration
modifiers
protected "protected"
boolean_type "boolean"
variable_declarator
identifier "_tokenIncomplete"
; ";"
block_comment "/**\n * Value of {@link #_inputPtr} at the time when the "...
field_declaration
modifiers
protected "protected"
integral_type
long "long"
variable_declarator
identifier "_nameStartOffset"
; ";"
block_comment "/**\n * @since 2.7\n */"
field_declaration
modifiers
protected "protected"
integral_type
int "int"
variable_declarator
identifier "_nameStartRow"
; ";"
block_comment "/**\n * @since 2.7\n */"
field_declaration
modifiers
protected "protected"
integral_type
int "int"
variable_declarator
identifier "_nameStartCol"
; ";"
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Method called when caller wants to provide input "...
constructor_declaration (+116 nodes collapsed)
block_comment "/**\n * Method called when input comes as a {@link java.i"...
constructor_declaration (+99 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
public "public"
type_identifier "ObjectCodec"
identifier "getCodec"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "_objectCodec"
; ";"
} "}"
method_declaration (+23 nodes collapsed)
method_declaration (+75 nodes collapsed)
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
public "public"
type_identifier "Object"
identifier "getInputSource"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "_reader"
; ";"
} "}"
method_declaration (+33 nodes collapsed)
method_declaration (+69 nodes collapsed)
method_declaration (+71 nodes collapsed)
block_comment "/**\n * Method called to release internal buffers owned b"...
method_declaration (+86 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+36 nodes collapsed)
method_declaration (+148 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Method for accessing textual representation of th"...
method_declaration (+82 nodes collapsed)
method_declaration (+203 nodes collapsed)
line_comment "// // // Let's override default impls for improved performan"...
line_comment "// @since 2.1"
method_declaration (+100 nodes collapsed)
line_comment "// @since 2.1"
method_declaration (+103 nodes collapsed)
method_declaration (+101 nodes collapsed)
method_declaration (+241 nodes collapsed)
method_declaration (+138 nodes collapsed)
method_declaration (+113 nodes collapsed)
method_declaration (+236 nodes collapsed)
method_declaration (+132 nodes collapsed)
method_declaration (+1017 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * @return Next token from the stream, if any found,"...
method_declaration (+671 nodes collapsed)
method_declaration (+105 nodes collapsed)
method_declaration (+40 nodes collapsed)
block_comment "/*\n /****************************************************"...
line_comment "// Implemented since 2.7"
method_declaration (+492 nodes collapsed)
method_declaration (+591 nodes collapsed)
method_declaration (+284 nodes collapsed)
method_declaration (+362 nodes collapsed)
method_declaration (+364 nodes collapsed)
line_comment "// note: identical to one in UTF8StreamJsonParser"
method_declaration (+198 nodes collapsed)
line_comment "// note: identical to one in Utf8StreamParser"
method_declaration (+178 nodes collapsed)
line_comment "// note: identical to one in Utf8StreamParser"
method_declaration (+179 nodes collapsed)
line_comment "// note: identical to one in UTF8StreamJsonParser"
method_declaration (+241 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Initial parsing method for number values. It need"...
method_declaration (+290 nodes collapsed)
method_declaration (+486 nodes collapsed)
method_declaration (+348 nodes collapsed)
block_comment "/**\n * Method called to parse a number, when the primary"...
method_declaration (+936 nodes collapsed)
block_comment "/**\n * Method called when we have seen one zero, and wan"...
method_declaration (+73 nodes collapsed)
method_declaration (+201 nodes collapsed)
block_comment "/**\n * Method called if expected numeric value (due to l"...
method_declaration (+300 nodes collapsed)
block_comment "/**\n * Method called to ensure that a root-value is foll"...
method_declaration (+89 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+199 nodes collapsed)
method_declaration (+396 nodes collapsed)
block_comment "/**\n * Method called when we see non-white space charact"...
method_declaration (+442 nodes collapsed)
method_declaration (+231 nodes collapsed)
block_comment "/**\n * Method for handling cases where first non-space c"...
method_declaration (+380 nodes collapsed)
method_declaration (+277 nodes collapsed)
method_declaration
modifiers
private "private"
type_identifier "String"
identifier "_handleOddName2"
formal_parameters (+21 nodes collapsed)
throws
throws "throws"
type_identifier "IOException"
block
{ "{"
expression_statement
method_invocation
identifier "_textBuffer"
. "."
identifier "resetWithShared"
argument_list
( "("
identifier "_inputBuffer"
, ","
identifier "startPtr"
, ","
parenthesized_expression
( "("
binary_expression
identifier "_inputPtr"
- "-"
identifier "startPtr"
) ")"
) ")"
; ";"
local_variable_declaration
array_type
integral_type
char "char"
dimensions
[ "["
] "]"
variable_declarator
identifier "outBuf"
= "="
method_invocation
identifier "_textBuffer"
. "."
identifier "getCurrentSegment"
argument_list
( "("
) ")"
; ";"
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "outPtr"
= "="
method_invocation
identifier "_textBuffer"
. "."
identifier "getCurrentSegmentSize"
argument_list
( "("
) ")"
; ";"
local_variable_declaration
modifiers
final "final"
integral_type
int "int"
variable_declarator
identifier "maxCode"
= "="
field_access
identifier "codes"
. "."
identifier "length"
; ";"
while_statement
while "while"
parenthesized_expression
( "("
true "true"
) ")"
block
{ "{"
if_statement (+31 nodes collapsed)
local_variable_declaration
integral_type
char "char"
variable_declarator
identifier "c"
= "="
array_access
identifier "_inputBuffer"
[ "["
identifier "_inputPtr"
] "]"
; ";"
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "i"
= "="
cast_expression
( "("
integral_type
int "int"
) ")"
identifier "c"
; ";"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "i"
<= "<="
identifier "maxCode"
) ")"
block (+22 nodes collapsed)
else "else"
if_statement (+21 nodes collapsed)
expression_statement
update_expression
++ "++"
identifier "_inputPtr"
; ";"
expression_statement
assignment_expression
identifier "hash"
= "="
binary_expression
parenthesized_expression
( "("
binary_expression
identifier "hash"
* "*"
field_access
identifier "CharsToNameCanonicalizer"
. "."
identifier "HASH_MULT"
) ")"
+ "+"
identifier "i"
; ";"
line_comment "// Ok, let's add char to output:"
expression_statement
assignment_expression
array_access
identifier "outBuf"
[ "["
update_expression
identifier "outPtr"
++ "++"
] "]"
= "="
identifier "c"
; ";"
line_comment "// Need more room?"
if_statement (+33 nodes collapsed)
} "}"
expression_statement
method_invocation
identifier "_textBuffer"
. "."
identifier "setCurrentLength"
argument_list
( "("
identifier "outPtr"
) ")"
; ";"
block (+73 nodes collapsed)
} "}"
method_declaration (+211 nodes collapsed)
method_declaration (+297 nodes collapsed)
block_comment "/**\n * Method called to skim through rest of unparsed St"...
method_declaration (+263 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * We actually need to check the character value her"...
method_declaration (+66 nodes collapsed)
method_declaration (+429 nodes collapsed)
method_declaration (+276 nodes collapsed)
line_comment "// Variant called when we know there's at least 4 more bytes"...
method_declaration (+398 nodes collapsed)
line_comment "// Primary loop: no reloading, comment handling"
method_declaration (+220 nodes collapsed)
method_declaration (+223 nodes collapsed)
method_declaration (+350 nodes collapsed)
method_declaration (+222 nodes collapsed)
method_declaration (+151 nodes collapsed)
method_declaration (+224 nodes collapsed)
method_declaration (+48 nodes collapsed)
method_declaration (+138 nodes collapsed)
method_declaration (+335 nodes collapsed)
method_declaration (+157 nodes collapsed)
method_declaration (+169 nodes collapsed)
method_declaration (+157 nodes collapsed)
block_comment "/**\n * Helper method for checking whether input matches "...
method_declaration (+180 nodes collapsed)
method_declaration (+198 nodes collapsed)
method_declaration (+75 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Efficient handling for incremental parsing of bas"...
method_declaration (+817 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+97 nodes collapsed)
method_declaration (+56 nodes collapsed)
line_comment "// @since 2.7"
method_declaration (+44 nodes collapsed)
line_comment "// @since 2.7"
method_declaration (+41 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+30 nodes collapsed)
method_declaration (+154 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+152 nodes collapsed)
} "}"

After

program
package_declaration
package "package"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "json"
; ";"
import_declaration
import "import"
scoped_identifier
identifier "java"
. "."
identifier "io"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "base"
. "."
identifier "ParserBase"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "io"
. "."
identifier "CharTypes"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "io"
. "."
identifier "IOContext"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "sym"
. "."
identifier "CharsToNameCanonicalizer"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "util"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
static "static"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "JsonTokenId"
. "."
asterisk
* "*"
; ";"
block_comment "/**\n * This is a concrete implementation of {@link JsonParse"...
class_declaration
modifiers
public "public"
class "class"
identifier "ReaderBasedJsonParser"
line_comment "// final in 2.3, earlier"
superclass
extends "extends"
type_identifier "ParserBase"
class_body
{ "{"
field_declaration (+21 nodes collapsed)
line_comment "// Latin1 encoding is not supported, but we do use 8-bit sub"...
line_comment "// pre-processing task, to simplify first pass, keep it fast"...
field_declaration (+22 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Reader that can be used for reading more content,"...
field_declaration
modifiers
protected "protected"
type_identifier "Reader"
variable_declarator
identifier "_reader"
; ";"
block_comment "/**\n * Current buffer from which data is read; generally"...
field_declaration
modifiers
protected "protected"
array_type
integral_type
char "char"
dimensions
[ "["
] "]"
variable_declarator
identifier "_inputBuffer"
; ";"
block_comment "/**\n * Flag that indicates whether the input buffer is r"...
field_declaration
modifiers
protected "protected"
boolean_type "boolean"
variable_declarator
identifier "_bufferRecyclable"
; ";"
block_comment "/*\n /****************************************************"...
field_declaration
modifiers
protected "protected"
type_identifier "ObjectCodec"
variable_declarator
identifier "_objectCodec"
; ";"
field_declaration
modifiers
final "final"
protected "protected"
type_identifier "CharsToNameCanonicalizer"
variable_declarator
identifier "_symbols"
; ";"
field_declaration
modifiers
final "final"
protected "protected"
integral_type
int "int"
variable_declarator
identifier "_hashSeed"
; ";"
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Flag that indicates that the current token has no"...
field_declaration
modifiers
protected "protected"
boolean_type "boolean"
variable_declarator
identifier "_tokenIncomplete"
; ";"
block_comment "/**\n * Value of {@link #_inputPtr} at the time when the "...
field_declaration
modifiers
protected "protected"
integral_type
long "long"
variable_declarator
identifier "_nameStartOffset"
; ";"
block_comment "/**\n * @since 2.7\n */"
field_declaration
modifiers
protected "protected"
integral_type
int "int"
variable_declarator
identifier "_nameStartRow"
; ";"
block_comment "/**\n * @since 2.7\n */"
field_declaration
modifiers
protected "protected"
integral_type
int "int"
variable_declarator
identifier "_nameStartCol"
; ";"
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Method called when caller wants to provide input "...
constructor_declaration (+116 nodes collapsed)
block_comment "/**\n * Method called when input comes as a {@link java.i"...
constructor_declaration (+99 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
public "public"
type_identifier "ObjectCodec"
identifier "getCodec"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "_objectCodec"
; ";"
} "}"
method_declaration (+23 nodes collapsed)
method_declaration (+75 nodes collapsed)
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
public "public"
type_identifier "Object"
identifier "getInputSource"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "_reader"
; ";"
} "}"
method_declaration (+33 nodes collapsed)
method_declaration (+69 nodes collapsed)
method_declaration (+71 nodes collapsed)
block_comment "/**\n * Method called to release internal buffers owned b"...
method_declaration (+86 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+36 nodes collapsed)
method_declaration (+148 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Method for accessing textual representation of th"...
method_declaration (+82 nodes collapsed)
method_declaration (+203 nodes collapsed)
line_comment "// // // Let's override default impls for improved performan"...
line_comment "// @since 2.1"
method_declaration (+100 nodes collapsed)
line_comment "// @since 2.1"
method_declaration (+103 nodes collapsed)
method_declaration (+101 nodes collapsed)
method_declaration (+241 nodes collapsed)
method_declaration (+138 nodes collapsed)
method_declaration (+113 nodes collapsed)
method_declaration (+236 nodes collapsed)
method_declaration (+132 nodes collapsed)
method_declaration (+1017 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * @return Next token from the stream, if any found,"...
method_declaration (+671 nodes collapsed)
method_declaration (+105 nodes collapsed)
method_declaration (+40 nodes collapsed)
block_comment "/*\n /****************************************************"...
line_comment "// Implemented since 2.7"
method_declaration (+492 nodes collapsed)
method_declaration (+591 nodes collapsed)
method_declaration (+284 nodes collapsed)
method_declaration (+362 nodes collapsed)
method_declaration (+364 nodes collapsed)
line_comment "// note: identical to one in UTF8StreamJsonParser"
method_declaration (+198 nodes collapsed)
line_comment "// note: identical to one in Utf8StreamParser"
method_declaration (+178 nodes collapsed)
line_comment "// note: identical to one in Utf8StreamParser"
method_declaration (+179 nodes collapsed)
line_comment "// note: identical to one in UTF8StreamJsonParser"
method_declaration (+241 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Initial parsing method for number values. It need"...
method_declaration (+290 nodes collapsed)
method_declaration (+486 nodes collapsed)
method_declaration (+348 nodes collapsed)
block_comment "/**\n * Method called to parse a number, when the primary"...
method_declaration (+936 nodes collapsed)
block_comment "/**\n * Method called when we have seen one zero, and wan"...
method_declaration (+73 nodes collapsed)
method_declaration (+201 nodes collapsed)
block_comment "/**\n * Method called if expected numeric value (due to l"...
method_declaration (+300 nodes collapsed)
block_comment "/**\n * Method called to ensure that a root-value is foll"...
method_declaration (+89 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+199 nodes collapsed)
method_declaration (+396 nodes collapsed)
block_comment "/**\n * Method called when we see non-white space charact"...
method_declaration (+442 nodes collapsed)
method_declaration (+231 nodes collapsed)
block_comment "/**\n * Method for handling cases where first non-space c"...
method_declaration (+380 nodes collapsed)
method_declaration (+277 nodes collapsed)
method_declaration
modifiers
private "private"
type_identifier "String"
identifier "_handleOddName2"
formal_parameters (+21 nodes collapsed)
throws
throws "throws"
type_identifier "IOException"
block
{ "{"
expression_statement
method_invocation
identifier "_textBuffer"
. "."
identifier "resetWithShared"
argument_list
( "("
identifier "_inputBuffer"
, ","
identifier "startPtr"
, ","
parenthesized_expression
( "("
binary_expression
identifier "_inputPtr"
- "-"
identifier "startPtr"
) ")"
) ")"
; ";"
local_variable_declaration
array_type
integral_type
char "char"
dimensions
[ "["
] "]"
variable_declarator
identifier "outBuf"
= "="
method_invocation
identifier "_textBuffer"
. "."
identifier "getCurrentSegment"
argument_list
( "("
) ")"
; ";"
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "outPtr"
= "="
method_invocation
identifier "_textBuffer"
. "."
identifier "getCurrentSegmentSize"
argument_list
( "("
) ")"
; ";"
local_variable_declaration
modifiers
final "final"
integral_type
int "int"
variable_declarator
identifier "maxCode"
= "="
field_access
identifier "codes"
. "."
identifier "length"
; ";"
while_statement
while "while"
parenthesized_expression
( "("
true "true"
) ")"
block
{ "{"
if_statement (+31 nodes collapsed)
local_variable_declaration
integral_type
char "char"
variable_declarator
identifier "c"
= "="
array_access
identifier "_inputBuffer"
[ "["
identifier "_inputPtr"
] "]"
; ";"
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "i"
= "="
cast_expression
( "("
integral_type
int "int"
) ")"
identifier "c"
; ";"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "i"
< "<"
identifier "maxCode"
) ")"
block (+22 nodes collapsed)
else "else"
if_statement (+21 nodes collapsed)
expression_statement
update_expression
++ "++"
identifier "_inputPtr"
; ";"
expression_statement
assignment_expression
identifier "hash"
= "="
binary_expression
parenthesized_expression
( "("
binary_expression
identifier "hash"
* "*"
field_access
identifier "CharsToNameCanonicalizer"
. "."
identifier "HASH_MULT"
) ")"
+ "+"
identifier "i"
; ";"
line_comment "// Ok, let's add char to output:"
expression_statement
assignment_expression
array_access
identifier "outBuf"
[ "["
update_expression
identifier "outPtr"
++ "++"
] "]"
= "="
identifier "c"
; ";"
line_comment "// Need more room?"
if_statement (+33 nodes collapsed)
} "}"
expression_statement
method_invocation
identifier "_textBuffer"
. "."
identifier "setCurrentLength"
argument_list
( "("
identifier "outPtr"
) ")"
; ";"
block (+73 nodes collapsed)
} "}"
method_declaration (+211 nodes collapsed)
method_declaration (+297 nodes collapsed)
block_comment "/**\n * Method called to skim through rest of unparsed St"...
method_declaration (+263 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * We actually need to check the character value her"...
method_declaration (+66 nodes collapsed)
method_declaration (+429 nodes collapsed)
method_declaration (+276 nodes collapsed)
line_comment "// Variant called when we know there's at least 4 more bytes"...
method_declaration (+398 nodes collapsed)
line_comment "// Primary loop: no reloading, comment handling"
method_declaration (+220 nodes collapsed)
method_declaration (+223 nodes collapsed)
method_declaration (+350 nodes collapsed)
method_declaration (+222 nodes collapsed)
method_declaration (+151 nodes collapsed)
method_declaration (+224 nodes collapsed)
method_declaration (+48 nodes collapsed)
method_declaration (+138 nodes collapsed)
method_declaration (+335 nodes collapsed)
method_declaration (+157 nodes collapsed)
method_declaration (+169 nodes collapsed)
method_declaration (+157 nodes collapsed)
block_comment "/**\n * Helper method for checking whether input matches "...
method_declaration (+180 nodes collapsed)
method_declaration (+198 nodes collapsed)
method_declaration (+75 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Efficient handling for incremental parsing of bas"...
method_declaration (+817 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+97 nodes collapsed)
method_declaration (+56 nodes collapsed)
line_comment "// @since 2.7"
method_declaration (+44 nodes collapsed)
line_comment "// @since 2.7"
method_declaration (+41 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+30 nodes collapsed)
method_declaration (+154 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+152 nodes collapsed)
} "}"