class_body
{ "{"
field_declaration
modifiers
protected "protected"
type_identifier "String"
variable_declarator
identifier "tagName"
; ";"
field_declaration
modifiers
protected "protected"
type_identifier "String"
variable_declarator
identifier "normalName"
; ";"
line_comment "// lc version of tag name, for case insensitive tree build"
field_declaration
modifiers
private "private"
type_identifier "String"
variable_declarator
identifier "pendingAttributeName"
; ";"
line_comment "// attribute names are generally caught in one hop, not accu"...
field_declaration
modifiers
private "private"
type_identifier "StringBuilder"
variable_declarator
identifier "pendingAttributeValue"
= "="
object_creation_expression
new "new"
type_identifier "StringBuilder"
argument_list
( "("
) ")"
; ";"
line_comment "// but values are accumulated, from e.g. & in hrefs"
field_declaration
modifiers
private "private"
type_identifier "String"
variable_declarator
identifier "pendingAttributeValueS"
; ";"
line_comment "// try to get attr vals in one shot, vs Builder"
field_declaration
modifiers
private "private"
boolean_type "boolean"
variable_declarator
identifier "hasEmptyAttributeValue"
= "="
false "false"
; ";"
line_comment "// distinguish boolean attribute from empty string value"
field_declaration
modifiers
private "private"
boolean_type "boolean"
variable_declarator
identifier "hasPendingAttributeValue"
= "="
false "false"
; ";"
field_declaration
boolean_type "boolean"
variable_declarator
identifier "selfClosing"
= "="
false "false"
; ";"
field_declaration
type_identifier "Attributes"
variable_declarator
identifier "attributes"
; ";"
line_comment "// start tags get attributes on construction. End tags get a"...
method_declaration (+73 nodes collapsed)
method_declaration
modifiers
final "final"
void_type "void"
identifier "newAttribute"
formal_parameters
( "("
) ")"
block
{ "{"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "attributes"
== "=="
null_literal "null"
) ")"
expression_statement
assignment_expression
identifier "attributes"
= "="
object_creation_expression
new "new"
type_identifier "Attributes"
argument_list
( "("
) ")"
; ";"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "pendingAttributeName"
!= "!="
null_literal "null"
) ")"
block
{ "{"
line_comment "// the tokeniser has skipped whitespace control chars, but t"...
expression_statement
assignment_expression
identifier "pendingAttributeName"
= "="
method_invocation
identifier "pendingAttributeName"
. "."
identifier "trim"
argument_list
( "("
) ")"
; ";"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
method_invocation
identifier "pendingAttributeName"
. "."
identifier "length"
argument_list
( "("
) ")"
> ">"
decimal_integer_literal "0"
) ")"
block
{ "{"
local_variable_declaration
type_identifier "String"
variable_declarator
identifier "value"
; ";"
if_statement (+54 nodes collapsed)
line_comment "// note that we add, not put. So that the first is kept, and"...
expression_statement
method_invocation
identifier "attributes"
. "."
identifier "put"
argument_list
( "("
identifier "pendingAttributeName"
, ","
identifier "value"
) ")"
; ";"
} "}"
} "}"
expression_statement
assignment_expression
identifier "pendingAttributeName"
= "="
null_literal "null"
; ";"
expression_statement
assignment_expression
identifier "hasEmptyAttributeValue"
= "="
false "false"
; ";"
expression_statement
assignment_expression
identifier "hasPendingAttributeValue"
= "="
false "false"
; ";"
expression_statement
method_invocation
identifier "reset"
argument_list
( "("
identifier "pendingAttributeValue"
) ")"
; ";"
expression_statement
assignment_expression
identifier "pendingAttributeValueS"
= "="
null_literal "null"
; ";"
} "}"
method_declaration (+31 nodes collapsed)
block_comment "/** Preserves case */"
method_declaration (+41 nodes collapsed)
block_comment "/** Lower case */"
method_declaration
modifiers
final "final"
type_identifier "String"
identifier "normalName"
formal_parameters
( "("
) ")"
block
{ "{"
line_comment "// lower case, used in tree building for working out where i"...
return_statement
return "return"
identifier "normalName"
; ";"
} "}"
method_declaration (+35 nodes collapsed)
method_declaration
modifiers
final "final"
boolean_type "boolean"
identifier "isSelfClosing"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "selfClosing"
; ";"
} "}"
method_declaration (+28 nodes collapsed)
line_comment "// these appenders are rarely hit in not null state-- caused"...
method_declaration (+46 nodes collapsed)
method_declaration (+30 nodes collapsed)
method_declaration (+35 nodes collapsed)
method_declaration (+30 nodes collapsed)
method_declaration (+59 nodes collapsed)
method_declaration (+32 nodes collapsed)
method_declaration (+36 nodes collapsed)
method_declaration (+48 nodes collapsed)
method_declaration
modifiers
final "final"
void_type "void"
identifier "setEmptyAttributeValue"
formal_parameters
( "("
) ")"
block
{ "{"
expression_statement
assignment_expression
identifier "hasEmptyAttributeValue"
= "="
true "true"
; ";"
} "}"
method_declaration (+46 nodes collapsed)
} "}"