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–224 unchanged (224 lines)
225 }
226 int column = this.columnKeys.indexOf(columnKey);
227 if (column < 0) {
228 throw new UnknownKeyException("Column key (" + columnKey
229 + ") not recognised.");
230 }
231 if (row >= 0) {
232 KeyedObjects rowData = (KeyedObjects) this.rows.get(row);
233 return rowData.getObject(columnKey);
234 }
235 else {
236 return null;
237 }
238 }
239
…lines 240–311 unchanged (72 lines)
312 if (allNull) {
313 this.rowKeys.remove(rowIndex);
314 this.rows.remove(rowIndex);
315 }
316
317 // 2. check whether the column is now empty.
318
319
320 }
321
322 /**
323 * Removes an entire row from the table.
324 *
…lines 325–337 unchanged (13 lines)
338 *
339 * @throws UnknownKeyException if <code>rowKey</code> is not recognised.
340 *
341 * @see #removeColumn(Comparable)
342 */
343 public void removeRow(Comparable rowKey) {
344 int index = getRowIndex(rowKey);
345 removeRow(index);
346 }
347
348 /**
349 * Removes an entire column from the table.
350 *
…lines 351–370 unchanged (20 lines)
371 if (index < 0) {
372 throw new UnknownKeyException("Column key (" + columnKey
373 + ") not recognised.");
374 }
375 Iterator iterator = this.rows.iterator();
376 while (iterator.hasNext()) {
377 KeyedObjects rowData = (KeyedObjects) iterator.next();
378 rowData.removeValue(columnKey);
379 }
380 this.columnKeys.remove(columnKey);
381 }
382
383 /**
384 * Tests this object for equality with an arbitrary object.
…lines 385–467 unchanged (83 lines)

After

…lines 1–224 unchanged (224 lines)
225 }
226 int column = this.columnKeys.indexOf(columnKey);
227 if (column < 0) {
228 throw new UnknownKeyException("Column key (" + columnKey
229 + ") not recognised.");
230 }
231 KeyedObjects rowData = (KeyedObjects) this.rows.get(row);
232 int index = rowData.getIndex(columnKey);
233 if (index >= 0) {
234 return rowData.getObject(index);
235 }
236 else {
237 return null;
238 }
239 }
240
…lines 241–312 unchanged (72 lines)
313 if (allNull) {
314 this.rowKeys.remove(rowIndex);
315 this.rows.remove(rowIndex);
316 }
317
318 // 2. check whether the column is now empty.
319 allNull = true;
320
321 for (int item = 0, itemCount = this.rows.size(); item < itemCount;
322 item++) {
323 row = (KeyedObjects) this.rows.get(item);
324 int columnIndex = row.getIndex(columnKey);
325 if (columnIndex >= 0 && row.getObject(columnIndex) != null) {
326 allNull = false;
327 break;
328 }
329 }
330
331 if (allNull) {
332 for (int item = 0, itemCount = this.rows.size(); item < itemCount;
333 item++) {
334 row = (KeyedObjects) this.rows.get(item);
335 int columnIndex = row.getIndex(columnKey);
336 if (columnIndex >= 0) {
337 row.removeValue(columnIndex);
338 }
339 }
340 this.columnKeys.remove(columnKey);
341 }
342 }
343
344 /**
345 * Removes an entire row from the table.
346 *
347 * @param rowIndex the row index.
…lines 348–360 unchanged (13 lines)
361 * @throws UnknownKeyException if <code>rowKey</code> is not recognised.
362 *
363 * @see #removeColumn(Comparable)
364 */
365 public void removeRow(Comparable rowKey) {
366 int index = getRowIndex(rowKey);
367 if (index < 0) {
368 throw new UnknownKeyException("Row key (" + rowKey
369 + ") not recognised.");
370 }
371 removeRow(index);
372 }
373
374 /**
375 * Removes an entire column from the table.
376 *
…lines 377–397 unchanged (21 lines)
398 throw new UnknownKeyException("Column key (" + columnKey
399 + ") not recognised.");
400 }
401 Iterator iterator = this.rows.iterator();
402 while (iterator.hasNext()) {
403 KeyedObjects rowData = (KeyedObjects) iterator.next();
404 int i = rowData.getIndex(columnKey);
405 if (i >= 0) {
406 rowData.removeValue(i);
407 }
408 }
409 this.columnKeys.remove(columnKey);
410 }
411
412 /**
413 * Tests this object for equality with an arbitrary object.
…lines 414–496 unchanged (83 lines)

Before

program
block_comment "/* ========================================================="...
package_declaration
package "package"
scoped_identifier
scoped_identifier
identifier "org"
. "."
identifier "jfree"
. "."
identifier "data"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "io"
. "."
identifier "Serializable"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Collections"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Iterator"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "List"
; ";"
block_comment "/**\r\n * A data structure that stores zero, one or many objec"...
class_declaration
modifiers
public "public"
class "class"
identifier "KeyedObjects2D"
super_interfaces
implements "implements"
type_list
type_identifier "Cloneable"
, ","
type_identifier "Serializable"
class_body
{ "{"
block_comment "/** For serialization. */"
field_declaration
modifiers
private "private"
static "static"
final "final"
integral_type
long "long"
variable_declarator
identifier "serialVersionUID"
= "="
unary_expression
- "-"
decimal_integer_literal "1015873563138522374L"
; ";"
block_comment "/** The row keys. */"
field_declaration
modifiers
private "private"
type_identifier "List"
variable_declarator
identifier "rowKeys"
; ";"
block_comment "/** The column keys. */"
field_declaration
modifiers
private "private"
type_identifier "List"
variable_declarator
identifier "columnKeys"
; ";"
block_comment "/** The row data. */"
field_declaration
modifiers
private "private"
type_identifier "List"
variable_declarator
identifier "rows"
; ";"
block_comment "/**\r\n * Creates a new instance (initially empty).\r\n "...
constructor_declaration (+70 nodes collapsed)
block_comment "/**\r\n * Returns the row count.\r\n *\r\n * @return T"...
method_declaration (+25 nodes collapsed)
block_comment "/**\r\n * Returns the column count.\r\n *\r\n * @retur"...
method_declaration (+25 nodes collapsed)
block_comment "/**\r\n * Returns the object for a given row and column.\r\n"...
method_declaration (+137 nodes collapsed)
block_comment "/**\r\n * Returns the key for a given row.\r\n *\r\n *"...
method_declaration (+33 nodes collapsed)
block_comment "/**\r\n * Returns the row index for a given key.\r\n *\r\n"...
method_declaration (+29 nodes collapsed)
block_comment "/**\r\n * Returns the row keys.\r\n *\r\n * @return Th"...
method_declaration (+25 nodes collapsed)
block_comment "/**\r\n * Returns the key for a given column.\r\n *\r\n "...
method_declaration (+33 nodes collapsed)
block_comment "/**\r\n * Returns the column index for a given key.\r\n "...
method_declaration (+29 nodes collapsed)
block_comment "/**\r\n * Returns the column keys.\r\n *\r\n * @return"...
method_declaration (+25 nodes collapsed)
block_comment "/**\r\n * Returns the object for the given row and column "...
method_declaration
modifiers
public "public"
type_identifier "Object"
identifier "getObject"
formal_parameters
( "("
formal_parameter
type_identifier "Comparable"
identifier "rowKey"
, ","
formal_parameter
type_identifier "Comparable"
identifier "columnKey"
) ")"
block
{ "{"
if_statement (+25 nodes collapsed)
if_statement (+25 nodes collapsed)
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "row"
= "="
method_invocation
field_access
this "this"
. "."
identifier "rowKeys"
. "."
identifier "indexOf"
argument_list
( "("
identifier "rowKey"
) ")"
; ";"
if_statement (+34 nodes collapsed)
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "column"
= "="
method_invocation
field_access
this "this"
. "."
identifier "columnKeys"
. "."
identifier "indexOf"
argument_list
( "("
identifier "columnKey"
) ")"
; ";"
if_statement (+34 nodes collapsed)
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "row"
>= ">="
decimal_integer_literal "0"
) ")"
block
{ "{"
local_variable_declaration (+21 nodes collapsed)
return_statement
return "return"
method_invocation
identifier "rowData"
. "."
identifier "getObject"
argument_list
( "("
identifier "columnKey"
) ")"
; ";"
} "}"
else "else"
block
{ "{"
return_statement
return "return"
null_literal "null"
; ";"
} "}"
} "}"
block_comment "/**\r\n * Adds an object to the table. Performs the same "...
method_declaration (+34 nodes collapsed)
block_comment "/**\r\n * Adds or updates an object.\r\n *\r\n * @para"...
method_declaration (+223 nodes collapsed)
block_comment "/**\r\n * Removes an object from the table by setting it t"...
method_declaration
modifiers
public "public"
void_type "void"
identifier "removeObject"
formal_parameters
( "("
formal_parameter
type_identifier "Comparable"
identifier "rowKey"
, ","
formal_parameter
type_identifier "Comparable"
identifier "columnKey"
) ")"
block
{ "{"
expression_statement
method_invocation
identifier "setObject"
argument_list
( "("
null_literal "null"
, ","
identifier "rowKey"
, ","
identifier "columnKey"
) ")"
; ";"
line_comment "// 1. check whether the row is now empty.\r"
local_variable_declaration
boolean_type "boolean"
variable_declarator
identifier "allNull"
= "="
true "true"
; ";"
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "rowIndex"
= "="
method_invocation
identifier "getRowIndex"
argument_list
( "("
identifier "rowKey"
) ")"
; ";"
local_variable_declaration (+21 nodes collapsed)
for_statement (+62 nodes collapsed)
if_statement (+35 nodes collapsed)
line_comment "// 2. check whether the column is now empty.\r"
} "}"
block_comment "/**\r\n * Removes an entire row from the table.\r\n *\r\n "...
method_declaration (+41 nodes collapsed)
block_comment "/**\r\n * Removes an entire row from the table.\r\n *\r\n "...
method_declaration
modifiers
public "public"
void_type "void"
identifier "removeRow"
formal_parameters
( "("
formal_parameter
type_identifier "Comparable"
identifier "rowKey"
) ")"
block
{ "{"
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "index"
= "="
method_invocation
identifier "getRowIndex"
argument_list
( "("
identifier "rowKey"
) ")"
; ";"
expression_statement
method_invocation
identifier "removeRow"
argument_list
( "("
identifier "index"
) ")"
; ";"
} "}"
block_comment "/**\r\n * Removes an entire column from the table.\r\n *"...
method_declaration (+35 nodes collapsed)
block_comment "/**\r\n * Removes an entire column from the table.\r\n *"...
method_declaration
modifiers
public "public"
void_type "void"
identifier "removeColumn"
formal_parameters
( "("
formal_parameter
type_identifier "Comparable"
identifier "columnKey"
) ")"
block
{ "{"
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "index"
= "="
method_invocation
identifier "getColumnIndex"
argument_list
( "("
identifier "columnKey"
) ")"
; ";"
if_statement (+34 nodes collapsed)
local_variable_declaration
type_identifier "Iterator"
variable_declarator
identifier "iterator"
= "="
method_invocation
field_access
this "this"
. "."
identifier "rows"
. "."
identifier "iterator"
argument_list
( "("
) ")"
; ";"
while_statement
while "while"
parenthesized_expression
( "("
method_invocation
identifier "iterator"
. "."
identifier "hasNext"
argument_list
( "("
) ")"
) ")"
block
{ "{"
local_variable_declaration
type_identifier "KeyedObjects"
variable_declarator
identifier "rowData"
= "="
cast_expression
( "("
type_identifier "KeyedObjects"
) ")"
method_invocation
identifier "iterator"
. "."
identifier "next"
argument_list
( "("
) ")"
; ";"
expression_statement
method_invocation
identifier "rowData"
. "."
identifier "removeValue"
argument_list
( "("
identifier "columnKey"
) ")"
; ";"
} "}"
expression_statement
method_invocation
field_access
this "this"
. "."
identifier "columnKeys"
. "."
identifier "remove"
argument_list
( "("
identifier "columnKey"
) ")"
; ";"
} "}"
block_comment "/**\r\n * Tests this object for equality with an arbitrary"...
method_declaration (+328 nodes collapsed)
block_comment "/**\r\n * Returns a hashcode for this object.\r\n * \r\n "...
method_declaration (+79 nodes collapsed)
block_comment "/**\r\n * Returns a clone.\r\n * \r\n * @return A clon"...
method_declaration (+180 nodes collapsed)
} "}"

After

program
block_comment "/* ========================================================="...
package_declaration
package "package"
scoped_identifier
scoped_identifier
identifier "org"
. "."
identifier "jfree"
. "."
identifier "data"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "io"
. "."
identifier "Serializable"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Collections"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Iterator"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "List"
; ";"
block_comment "/**\r\n * A data structure that stores zero, one or many objec"...
class_declaration
modifiers
public "public"
class "class"
identifier "KeyedObjects2D"
super_interfaces
implements "implements"
type_list
type_identifier "Cloneable"
, ","
type_identifier "Serializable"
class_body
{ "{"
block_comment "/** For serialization. */"
field_declaration
modifiers
private "private"
static "static"
final "final"
integral_type
long "long"
variable_declarator
identifier "serialVersionUID"
= "="
unary_expression
- "-"
decimal_integer_literal "1015873563138522374L"
; ";"
block_comment "/** The row keys. */"
field_declaration
modifiers
private "private"
type_identifier "List"
variable_declarator
identifier "rowKeys"
; ";"
block_comment "/** The column keys. */"
field_declaration
modifiers
private "private"
type_identifier "List"
variable_declarator
identifier "columnKeys"
; ";"
block_comment "/** The row data. */"
field_declaration
modifiers
private "private"
type_identifier "List"
variable_declarator
identifier "rows"
; ";"
block_comment "/**\r\n * Creates a new instance (initially empty).\r\n "...
constructor_declaration (+70 nodes collapsed)
block_comment "/**\r\n * Returns the row count.\r\n *\r\n * @return T"...
method_declaration (+25 nodes collapsed)
block_comment "/**\r\n * Returns the column count.\r\n *\r\n * @retur"...
method_declaration (+25 nodes collapsed)
block_comment "/**\r\n * Returns the object for a given row and column.\r\n"...
method_declaration (+137 nodes collapsed)
block_comment "/**\r\n * Returns the key for a given row.\r\n *\r\n *"...
method_declaration (+33 nodes collapsed)
block_comment "/**\r\n * Returns the row index for a given key.\r\n *\r\n"...
method_declaration (+29 nodes collapsed)
block_comment "/**\r\n * Returns the row keys.\r\n *\r\n * @return Th"...
method_declaration (+25 nodes collapsed)
block_comment "/**\r\n * Returns the key for a given column.\r\n *\r\n "...
method_declaration (+33 nodes collapsed)
block_comment "/**\r\n * Returns the column index for a given key.\r\n "...
method_declaration (+29 nodes collapsed)
block_comment "/**\r\n * Returns the column keys.\r\n *\r\n * @return"...
method_declaration (+25 nodes collapsed)
block_comment "/**\r\n * Returns the object for the given row and column "...
method_declaration
modifiers
public "public"
type_identifier "Object"
identifier "getObject"
formal_parameters
( "("
formal_parameter
type_identifier "Comparable"
identifier "rowKey"
, ","
formal_parameter
type_identifier "Comparable"
identifier "columnKey"
) ")"
block
{ "{"
if_statement (+25 nodes collapsed)
if_statement (+25 nodes collapsed)
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "row"
= "="
method_invocation
field_access
this "this"
. "."
identifier "rowKeys"
. "."
identifier "indexOf"
argument_list
( "("
identifier "rowKey"
) ")"
; ";"
if_statement (+34 nodes collapsed)
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "column"
= "="
method_invocation
field_access
this "this"
. "."
identifier "columnKeys"
. "."
identifier "indexOf"
argument_list
( "("
identifier "columnKey"
) ")"
; ";"
if_statement (+34 nodes collapsed)
local_variable_declaration (+21 nodes collapsed)
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "index"
= "="
method_invocation
identifier "rowData"
. "."
identifier "getIndex"
argument_list
( "("
identifier "columnKey"
) ")"
; ";"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "index"
>= ">="
decimal_integer_literal "0"
) ")"
block
{ "{"
return_statement
return "return"
method_invocation
identifier "rowData"
. "."
identifier "getObject"
argument_list
( "("
identifier "index"
) ")"
; ";"
} "}"
else "else"
block
{ "{"
return_statement
return "return"
null_literal "null"
; ";"
} "}"
} "}"
block_comment "/**\r\n * Adds an object to the table. Performs the same "...
method_declaration (+34 nodes collapsed)
block_comment "/**\r\n * Adds or updates an object.\r\n *\r\n * @para"...
method_declaration (+223 nodes collapsed)
block_comment "/**\r\n * Removes an object from the table by setting it t"...
method_declaration
modifiers
public "public"
void_type "void"
identifier "removeObject"
formal_parameters
( "("
formal_parameter
type_identifier "Comparable"
identifier "rowKey"
, ","
formal_parameter
type_identifier "Comparable"
identifier "columnKey"
) ")"
block
{ "{"
expression_statement
method_invocation
identifier "setObject"
argument_list
( "("
null_literal "null"
, ","
identifier "rowKey"
, ","
identifier "columnKey"
) ")"
; ";"
line_comment "// 1. check whether the row is now empty.\r"
local_variable_declaration
boolean_type "boolean"
variable_declarator
identifier "allNull"
= "="
true "true"
; ";"
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "rowIndex"
= "="
method_invocation
identifier "getRowIndex"
argument_list
( "("
identifier "rowKey"
) ")"
; ";"
local_variable_declaration (+21 nodes collapsed)
for_statement (+62 nodes collapsed)
if_statement (+35 nodes collapsed)
line_comment "// 2. check whether the column is now empty.\r"
expression_statement
assignment_expression
identifier "allNull"
= "="
true "true"
; ";"
for_statement
for "for"
( "("
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "item"
= "="
decimal_integer_literal "0"
, ","
variable_declarator
identifier "itemCount"
= "="
method_invocation
field_access
this "this"
. "."
identifier "rows"
. "."
identifier "size"
argument_list
( "("
) ")"
; ";"
binary_expression
identifier "item"
< "<"
identifier "itemCount"
; ";"
update_expression
identifier "item"
++ "++"
) ")"
block
{ "{"
expression_statement
assignment_expression
identifier "row"
= "="
cast_expression
( "("
type_identifier "KeyedObjects"
) ")"
method_invocation
field_access
this "this"
. "."
identifier "rows"
. "."
identifier "get"
argument_list
( "("
identifier "item"
) ")"
; ";"
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "columnIndex"
= "="
method_invocation
identifier "row"
. "."
identifier "getIndex"
argument_list
( "("
identifier "columnKey"
) ")"
; ";"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
binary_expression
identifier "columnIndex"
>= ">="
decimal_integer_literal "0"
&& "&&"
binary_expression
method_invocation
identifier "row"
. "."
identifier "getObject"
argument_list
( "("
identifier "columnIndex"
) ")"
!= "!="
null_literal "null"
) ")"
block
{ "{"
expression_statement
assignment_expression
identifier "allNull"
= "="
false "false"
; ";"
break_statement
break "break"
; ";"
} "}"
} "}"
if_statement
if "if"
parenthesized_expression
( "("
identifier "allNull"
) ")"
block
{ "{"
for_statement
for "for"
( "("
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "item"
= "="
decimal_integer_literal "0"
, ","
variable_declarator
identifier "itemCount"
= "="
method_invocation
field_access
this "this"
. "."
identifier "rows"
. "."
identifier "size"
argument_list
( "("
) ")"
; ";"
binary_expression
identifier "item"
< "<"
identifier "itemCount"
; ";"
update_expression
identifier "item"
++ "++"
) ")"
block
{ "{"
expression_statement
assignment_expression
identifier "row"
= "="
cast_expression
( "("
type_identifier "KeyedObjects"
) ")"
method_invocation
field_access
this "this"
. "."
identifier "rows"
. "."
identifier "get"
argument_list
( "("
identifier "item"
) ")"
; ";"
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "columnIndex"
= "="
method_invocation
identifier "row"
. "."
identifier "getIndex"
argument_list
( "("
identifier "columnKey"
) ")"
; ";"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "columnIndex"
>= ">="
decimal_integer_literal "0"
) ")"
block
{ "{"
expression_statement
method_invocation
identifier "row"
. "."
identifier "removeValue"
argument_list
( "("
identifier "columnIndex"
) ")"
; ";"
} "}"
} "}"
expression_statement
method_invocation
field_access
this "this"
. "."
identifier "columnKeys"
. "."
identifier "remove"
argument_list
( "("
identifier "columnKey"
) ")"
; ";"
} "}"
} "}"
block_comment "/**\r\n * Removes an entire row from the table.\r\n *\r\n "...
method_declaration (+41 nodes collapsed)
block_comment "/**\r\n * Removes an entire row from the table.\r\n *\r\n "...
method_declaration
modifiers
public "public"
void_type "void"
identifier "removeRow"
formal_parameters
( "("
formal_parameter
type_identifier "Comparable"
identifier "rowKey"
) ")"
block
{ "{"
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "index"
= "="
method_invocation
identifier "getRowIndex"
argument_list
( "("
identifier "rowKey"
) ")"
; ";"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "index"
< "<"
decimal_integer_literal "0"
) ")"
block
{ "{"
throw_statement
throw "throw"
object_creation_expression
new "new"
type_identifier "UnknownKeyException"
argument_list
( "("
binary_expression
binary_expression
string_literal
" "\""
string_fragment "Row key ("
" "\""
+ "+"
identifier "rowKey"
+ "+"
string_literal
" "\""
string_fragment ") not recognised."
" "\""
) ")"
; ";"
} "}"
expression_statement
method_invocation
identifier "removeRow"
argument_list
( "("
identifier "index"
) ")"
; ";"
} "}"
block_comment "/**\r\n * Removes an entire column from the table.\r\n *"...
method_declaration (+35 nodes collapsed)
block_comment "/**\r\n * Removes an entire column from the table.\r\n *"...
method_declaration
modifiers
public "public"
void_type "void"
identifier "removeColumn"
formal_parameters
( "("
formal_parameter
type_identifier "Comparable"
identifier "columnKey"
) ")"
block
{ "{"
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "index"
= "="
method_invocation
identifier "getColumnIndex"
argument_list
( "("
identifier "columnKey"
) ")"
; ";"
if_statement (+34 nodes collapsed)
local_variable_declaration
type_identifier "Iterator"
variable_declarator
identifier "iterator"
= "="
method_invocation
field_access
this "this"
. "."
identifier "rows"
. "."
identifier "iterator"
argument_list
( "("
) ")"
; ";"
while_statement
while "while"
parenthesized_expression
( "("
method_invocation
identifier "iterator"
. "."
identifier "hasNext"
argument_list
( "("
) ")"
) ")"
block
{ "{"
local_variable_declaration
type_identifier "KeyedObjects"
variable_declarator
identifier "rowData"
= "="
cast_expression
( "("
type_identifier "KeyedObjects"
) ")"
method_invocation
identifier "iterator"
. "."
identifier "next"
argument_list
( "("
) ")"
; ";"
local_variable_declaration
integral_type
int "int"
variable_declarator
identifier "i"
= "="
method_invocation
identifier "rowData"
. "."
identifier "getIndex"
argument_list
( "("
identifier "columnKey"
) ")"
; ";"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "i"
>= ">="
decimal_integer_literal "0"
) ")"
block
{ "{"
expression_statement
method_invocation
identifier "rowData"
. "."
identifier "removeValue"
argument_list
( "("
identifier "i"
) ")"
; ";"
} "}"
} "}"
expression_statement
method_invocation
field_access
this "this"
. "."
identifier "columnKeys"
. "."
identifier "remove"
argument_list
( "("
identifier "columnKey"
) ")"
; ";"
} "}"
block_comment "/**\r\n * Tests this object for equality with an arbitrary"...
method_declaration (+328 nodes collapsed)
block_comment "/**\r\n * Returns a hashcode for this object.\r\n * \r\n "...
method_declaration (+79 nodes collapsed)
block_comment "/**\r\n * Returns a clone.\r\n * \r\n * @return A clon"...
method_declaration (+180 nodes collapsed)
} "}"