25 messages in org.ibiblio.lists.xom-interest[XOM-interest] Three cosmetic patches
FromSent OnAttachments
Wolfgang HoschekFeb 9, 2004 6:42 pm 
Elliotte Rusty HaroldFeb 10, 2004 9:25 am 
Wolfgang HoschekFeb 10, 2004 3:23 pm 
jco...@reutershealth.comFeb 10, 2004 3:48 pm 
Elliotte Rusty HaroldFeb 11, 2004 1:21 pm 
Wolfgang HoschekFeb 11, 2004 1:24 pm 
jco...@reutershealth.comFeb 11, 2004 2:15 pm 
Elliotte Rusty HaroldFeb 11, 2004 3:18 pm 
jco...@reutershealth.comFeb 11, 2004 4:20 pm 
Francois BeausoleilFeb 11, 2004 8:08 pm 
Trimmer, ToddFeb 12, 2004 11:57 am 
Elliotte Rusty HaroldFeb 12, 2004 2:53 pm 
Trimmer, ToddFeb 13, 2004 1:26 pm 
Elliotte Rusty HaroldMar 8, 2004 3:17 pm 
jco...@reutershealth.comMar 8, 2004 4:06 pm 
Elliotte Rusty HaroldMar 8, 2004 4:34 pm 
Elliotte Rusty HaroldMar 9, 2004 11:55 am 
Bradley S. HuffmanMar 9, 2004 12:09 pm 
Elliotte Rusty HaroldMar 9, 2004 1:05 pm 
jco...@reutershealth.comMar 9, 2004 2:04 pm 
jco...@reutershealth.comMar 9, 2004 4:32 pm 
Elliotte Rusty HaroldMar 9, 2004 10:43 pm 
John CowanMar 9, 2004 10:58 pm 
Elliotte Rusty HaroldMar 10, 2004 6:12 am 
Dirk BergstromMar 10, 2004 6:25 pm 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:[XOM-interest] Three cosmetic patchesActions...
From:Wolfgang Hoschek (whos@lbl.gov)
Date:Feb 9, 2004 6:42:26 pm
List:org.ibiblio.lists.xom-interest

Here are some cosmetic patches against d24. The first two avoid some code duplication, and the third makes it a bit more efficient.

Wolfgang.

in class ParentNode: public Node removeChild(Node child) {

//if (children == null) { // throw new NoSuchChildException( // "Child does not belong to this node" // ); //} // This next line is a hotspot //int position = children.indexOf(child); int position = this.indexOf(child); if (position == -1) { throw new NoSuchChildException( "Child does not belong to this node" ); } return removeChild(position); //checkRemoveChild(child, position); //children.remove(position);

//child.setParent(null); //return child; }

public final void replaceChild(Node oldChild, Node newChild) { //if (children == null) { // throw new NoSuchChildException( // "Reference node is not a child of this node." // ); //} //int position = children.indexOf(oldChild); int position = this.indexOf(oldChild); if (position == -1) { throw new NoSuchChildException( "Reference node is not a child of this node." ); } removeChild(position); insertChild(newChild, position); }

in class Element: private static boolean isAncestor(Node parent, Node child) { //if (child == parent) return true; //if (parent == null) return false; //else return isAncestor(parent.getParent(), child); // for efficiency avoid recursion in favour of iteration while (true) { if (child == parent) return true; if (parent == null) return false; parent = parent.getParent(); } }