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–52 unchanged (52 lines)
53 TypeBindings b = TypeBindings.create(base, parameterTypes);
54 return _factory._fromClass(null, base, b);
55 }
56 // can be comma that separates types, or closing '>'
57 tokens.pushBack(token);
58 }
59 return _factory._fromClass(null, base, null);
60 }
61
62 protected List<JavaType> parseTypes(MyTokenizer tokens)
63 throws IllegalArgumentException
64 {
65 ArrayList<JavaType> types = new ArrayList<JavaType>();
…lines 66–138 unchanged (73 lines)

After

…lines 1–52 unchanged (52 lines)
53 TypeBindings b = TypeBindings.create(base, parameterTypes);
54 return _factory._fromClass(null, base, b);
55 }
56 // can be comma that separates types, or closing '>'
57 tokens.pushBack(token);
58 }
59 return _factory._fromClass(null, base, TypeBindings.emptyBindings());
60 }
61
62 protected List<JavaType> parseTypes(MyTokenizer tokens)
63 throws IllegalArgumentException
64 {
65 ArrayList<JavaType> types = new ArrayList<JavaType>();
…lines 66–138 unchanged (73 lines)

Before

program
package_declaration
package "package"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "type"
; ";"
import_declaration
import "import"
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "JavaType"
; ";"
block_comment "/**\n * Simple recursive-descent parser for parsing canonical"...
class_declaration
modifiers
public "public"
class "class"
identifier "TypeParser"
super_interfaces
implements "implements"
type_list
scoped_type_identifier
scoped_type_identifier
type_identifier "java"
. "."
type_identifier "io"
. "."
type_identifier "Serializable"
class_body
{ "{"
field_declaration
modifiers
private "private"
static "static"
final "final"
integral_type
long "long"
variable_declarator
identifier "serialVersionUID"
= "="
decimal_integer_literal "1L"
; ";"
field_declaration
modifiers
protected "protected"
final "final"
type_identifier "TypeFactory"
variable_declarator
identifier "_factory"
; ";"
constructor_declaration
modifiers
public "public"
identifier "TypeParser"
formal_parameters
( "("
formal_parameter
type_identifier "TypeFactory"
identifier "f"
) ")"
constructor_body
{ "{"
expression_statement
assignment_expression
identifier "_factory"
= "="
identifier "f"
; ";"
} "}"
block_comment "/**\n * @since 2.6.2\n */"
method_declaration (+35 nodes collapsed)
method_declaration (+82 nodes collapsed)
method_declaration
modifiers
protected "protected"
type_identifier "JavaType"
identifier "parseType"
formal_parameters
( "("
formal_parameter
type_identifier "MyTokenizer"
identifier "tokens"
) ")"
throws
throws "throws"
type_identifier "IllegalArgumentException"
block
{ "{"
if_statement (+31 nodes collapsed)
local_variable_declaration (+26 nodes collapsed)
line_comment "// either end (ok, non generic type), or generics"
if_statement (+106 nodes collapsed)
return_statement
return "return"
method_invocation
identifier "_factory"
. "."
identifier "_fromClass"
argument_list
( "("
null_literal "null"
, ","
identifier "base"
, ","
null_literal "null"
) ")"
; ";"
} "}"
method_declaration (+182 nodes collapsed)
method_declaration (+103 nodes collapsed)
method_declaration (+56 nodes collapsed)
class_declaration (+247 nodes collapsed)
} "}"

After

program
package_declaration
package "package"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "type"
; ";"
import_declaration
import "import"
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "JavaType"
; ";"
block_comment "/**\n * Simple recursive-descent parser for parsing canonical"...
class_declaration
modifiers
public "public"
class "class"
identifier "TypeParser"
super_interfaces
implements "implements"
type_list
scoped_type_identifier
scoped_type_identifier
type_identifier "java"
. "."
type_identifier "io"
. "."
type_identifier "Serializable"
class_body
{ "{"
field_declaration
modifiers
private "private"
static "static"
final "final"
integral_type
long "long"
variable_declarator
identifier "serialVersionUID"
= "="
decimal_integer_literal "1L"
; ";"
field_declaration
modifiers
protected "protected"
final "final"
type_identifier "TypeFactory"
variable_declarator
identifier "_factory"
; ";"
constructor_declaration
modifiers
public "public"
identifier "TypeParser"
formal_parameters
( "("
formal_parameter
type_identifier "TypeFactory"
identifier "f"
) ")"
constructor_body
{ "{"
expression_statement
assignment_expression
identifier "_factory"
= "="
identifier "f"
; ";"
} "}"
block_comment "/**\n * @since 2.6.2\n */"
method_declaration (+35 nodes collapsed)
method_declaration (+82 nodes collapsed)
method_declaration
modifiers
protected "protected"
type_identifier "JavaType"
identifier "parseType"
formal_parameters
( "("
formal_parameter
type_identifier "MyTokenizer"
identifier "tokens"
) ")"
throws
throws "throws"
type_identifier "IllegalArgumentException"
block
{ "{"
if_statement (+31 nodes collapsed)
local_variable_declaration (+26 nodes collapsed)
line_comment "// either end (ok, non generic type), or generics"
if_statement (+106 nodes collapsed)
return_statement
return "return"
method_invocation
identifier "_factory"
. "."
identifier "_fromClass"
argument_list
( "("
null_literal "null"
, ","
identifier "base"
, ","
method_invocation
identifier "TypeBindings"
. "."
identifier "emptyBindings"
argument_list
( "("
) ")"
) ")"
; ";"
} "}"
method_declaration (+182 nodes collapsed)
method_declaration (+103 nodes collapsed)
method_declaration (+56 nodes collapsed)
class_declaration (+247 nodes collapsed)
} "}"