Previous CloneSet | Next CloneSet | Back to Main Report |
Clone Mass | Clones in CloneSet | Parameter Count | Clone Similarity | Syntax Category [Sequence Length] |
---|---|---|---|---|
18 | 4 | 1 | 0.988 | class_body_declaration |
Clone Abstraction | Parameter Bindings |
Clone Instance (Click to see clone) | Line Count | Source Line | Source File |
---|---|---|---|
1 | 18 | 455 | plugins/org.eclipse.jdt.core/dom/org/eclipse/jdt/core/dom/AST.java |
2 | 18 | 484 | plugins/org.eclipse.jdt.core/dom/org/eclipse/jdt/core/dom/AST.java |
3 | 18 | 573 | plugins/org.eclipse.jdt.core/dom/org/eclipse/jdt/core/dom/AST.java |
4 | 18 | 602 | plugins/org.eclipse.jdt.core/dom/org/eclipse/jdt/core/dom/AST.java |
| ||||
/** * Reports that the given node is about to lose a child. * * @param node the node about to be modified * @param child the node about to be removed * @param property the child or child list property descriptor * @since 3.0 */ void preRemoveChildEvent(ASTNode node, ASTNode child, StructuralPropertyDescriptor property) { // IMPORTANT: this method is called by readers during lazy init synchronized (this.internalASTLock) { // guard against concurrent access by a reader doing lazy init if (this.disableEvents > 0) { // doing lazy init OR already processing an event // System.out.println("[BOUNCE DEL]"); return; } else { disableEvents(); } } try { this.eventHandler.preRemoveChildEvent(node, child, property); // N.B. even if event handler blows up, the AST is not // corrupted since node has not been changed yet } finally { reenableEvents(); } } |
| ||||
/** * Reports that the given node jsut lost a child. * * @param node the node that was modified * @param child the child node that was removed * @param property the child or child list property descriptor * @since 3.0 */ void postRemoveChildEvent(ASTNode node, ASTNode child, StructuralPropertyDescriptor property) { // IMPORTANT: this method is called by readers during lazy init synchronized (this.internalASTLock) { // guard against concurrent access by a reader doing lazy init if (this.disableEvents > 0) { // doing lazy init OR already processing an event // System.out.println("[BOUNCE DEL]"); return; } else { disableEvents(); } } try { this.eventHandler.postRemoveChildEvent(node, child, property); // N.B. even if event handler blows up, the AST is not // corrupted since node has not been changed yet } finally { reenableEvents(); } } |
| ||||
/** * Reports that the given node is about to gain a child. * * @param node the node that to be modified * @param child the node that to be added as a child * @param property the child or child list property descriptor * @since 3.0 */ void preAddChildEvent(ASTNode node, ASTNode child, StructuralPropertyDescriptor property) { // IMPORTANT: this method is called by readers during lazy init synchronized (this.internalASTLock) { // guard against concurrent access by a reader doing lazy init if (this.disableEvents > 0) { // doing lazy init OR already processing an event // System.out.println("[BOUNCE ADD]"); return; } else { disableEvents(); } } try { this.eventHandler.preAddChildEvent(node, child, property); // N.B. even if event handler blows up, the AST is not // corrupted since node has already been changed } finally { reenableEvents(); } } |
| ||||
/** * Reports that the given node has just gained a child. * * @param node the node that was modified * @param child the node that was added as a child * @param property the child or child list property descriptor * @since 3.0 */ void postAddChildEvent(ASTNode node, ASTNode child, StructuralPropertyDescriptor property) { // IMPORTANT: this method is called by readers during lazy init synchronized (this.internalASTLock) { // guard against concurrent access by a reader doing lazy init if (this.disableEvents > 0) { // doing lazy init OR already processing an event // System.out.println("[BOUNCE ADD]"); return; } else { disableEvents(); } } try { this.eventHandler.postAddChildEvent(node, child, property); // N.B. even if event handler blows up, the AST is not // corrupted since node has already been changed } finally { reenableEvents(); } } |
| |||
/** * Reports that the given node is about to lose a child. * * @param node the node about to be modified * @param child the node about to be removed * @param property the child or child list property descriptor * @since 3.0 */ /** * Reports that the given node jsut lost a child. * * @param node the node that was modified * @param child the child node that was removed * @param property the child or child list property descriptor * @since 3.0 */ /** * Reports that the given node is about to gain a child. * * @param node the node that to be modified * @param child the node that to be added as a child * @param property the child or child list property descriptor * @since 3.0 */ /** * Reports that the given node has just gained a child. * * @param node the node that was modified * @param child the node that was added as a child * @param property the child or child list property descriptor * @since 3.0 */ void [[#variable63f8a180]](ASTNode node, ASTNode child, StructuralPropertyDescriptor property) { // IMPORTANT: this method is called by readers during lazy init synchronized (this.internalASTLock) { // guard against concurrent access by a reader doing lazy init if (this.disableEvents > 0) { // doing lazy init OR already processing an event // System.out.println("[BOUNCE DEL]"); // System.out.println("[BOUNCE ADD]"); return; } else { disableEvents(); } } try { this.eventHandler. [[#variable63f8a180]](node, child, property); // N.B. even if event handler blows up, the AST is not // corrupted since node has not been changed yet // corrupted since node has already been changed } finally { reenableEvents(); } } |
CloneAbstraction |
Parameter Index | Clone Instance | Parameter Name | Value |
---|---|---|---|
1 | 1 | [[#63f8a180]] | preRemoveChildEvent |
1 | 2 | [[#63f8a180]] | postRemoveChildEvent |
1 | 3 | [[#63f8a180]] | preAddChildEvent |
1 | 4 | [[#63f8a180]] | postAddChildEvent |