test_class.declarator: firstTree
test_class.modifier: private static
test_class.original_string: private static BinaryTreeNode<String> firstTree;
test_class.type: BinaryTreeNode<String>
test_class.var_name: firstTree
test_class.file: singa-mathematics/src/test/java/bio/singa/mathematics/graphs/trees/BinaryTreeNodeTest.java
test_class.identifier: BinaryTreeNodeTest
test_case.body: @Test
      @DisplayName("binary tree - path to data")
      void pathTo() {
          List<BinaryTreeNode<String>> path = firstTree.pathTo("G");
          Iterator<BinaryTreeNode<String>> iterator = path.iterator();
          assertEquals(iterator.next().getData(), "A");
          assertEquals(iterator.next().getData(), "C");
          assertEquals(iterator.next().getData(), "D");
          assertEquals(iterator.next().getData(), "G");
          assertFalse(iterator.hasNext());
      }
test_case.class_method_signature: BinaryTreeNodeTest.pathTo()
test_case.full_signature: @Test @DisplayName("binary tree - path to data") void pathTo()
test_case.identifier: pathTo
test_case.invocations: pathTo iterator assertEquals getData next assertEquals getData next assertEquals getData next assertEquals getData next assertFalse hasNext
test_case.modifiers: @Test @DisplayName("binary tree - path to data")
test_case.parameters: ()
test_case.return: void
test_case.signature: void pathTo()
focal_class.declarator: serialVersionUID = -6444789577851989492L
focal_class.modifier: private static final
focal_class.original_string: private static final long serialVersionUID = -6444789577851989492L;
focal_class.type: long
focal_class.var_name: serialVersionUID
focal_class.declarator: data
focal_class.modifier: private
focal_class.original_string: private T data;
focal_class.type: T
focal_class.var_name: data
focal_class.declarator: left
focal_class.modifier: private
focal_class.original_string: private BinaryTreeNode<T> left;
focal_class.type: BinaryTreeNode<T>
focal_class.var_name: left
focal_class.declarator: right
focal_class.modifier: private
focal_class.original_string: private BinaryTreeNode<T> right;
focal_class.type: BinaryTreeNode<T>
focal_class.var_name: right
focal_class.file: singa-mathematics/src/main/java/bio/singa/mathematics/graphs/trees/BinaryTreeNode.java
focal_class.identifier: BinaryTreeNode
focal_class.interfaces: implements Serializable
focal_class.class_method_signature: BinaryTreeNode.BinaryTreeNode()
focal_class.full_signature: public  BinaryTreeNode()
focal_class.identifier: BinaryTreeNode
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  BinaryTreeNode()
focal_class.class_method_signature: BinaryTreeNode.BinaryTreeNode(T data)
focal_class.full_signature: public  BinaryTreeNode(T data)
focal_class.identifier: BinaryTreeNode
focal_class.modifiers: public
focal_class.parameters: (T data)
focal_class.signature:  BinaryTreeNode(T data)
focal_class.class_method_signature: BinaryTreeNode.BinaryTreeNode(BinaryTreeNode<T> leftNode, BinaryTreeNode<T> rightNode)
focal_class.full_signature: public  BinaryTreeNode(BinaryTreeNode<T> leftNode, BinaryTreeNode<T> rightNode)
focal_class.identifier: BinaryTreeNode
focal_class.modifiers: public
focal_class.parameters: (BinaryTreeNode<T> leftNode, BinaryTreeNode<T> rightNode)
focal_class.signature:  BinaryTreeNode(BinaryTreeNode<T> leftNode, BinaryTreeNode<T> rightNode)
focal_class.class_method_signature: BinaryTreeNode.BinaryTreeNode(T data, BinaryTreeNode<T> leftNode, BinaryTreeNode<T> rightNode)
focal_class.full_signature: public  BinaryTreeNode(T data, BinaryTreeNode<T> leftNode, BinaryTreeNode<T> rightNode)
focal_class.identifier: BinaryTreeNode
focal_class.modifiers: public
focal_class.parameters: (T data, BinaryTreeNode<T> leftNode, BinaryTreeNode<T> rightNode)
focal_class.signature:  BinaryTreeNode(T data, BinaryTreeNode<T> leftNode, BinaryTreeNode<T> rightNode)
focal_class.class_method_signature: BinaryTreeNode.getData()
focal_class.full_signature: public T getData()
focal_class.identifier: getData
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: T
focal_class.signature: T getData()
focal_class.class_method_signature: BinaryTreeNode.setData(T data)
focal_class.full_signature: public void setData(T data)
focal_class.identifier: setData
focal_class.modifiers: public
focal_class.parameters: (T data)
focal_class.return: void
focal_class.signature: void setData(T data)
focal_class.class_method_signature: BinaryTreeNode.getLeft()
focal_class.full_signature: public BinaryTreeNode<T> getLeft()
focal_class.identifier: getLeft
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: BinaryTreeNode<T>
focal_class.signature: BinaryTreeNode<T> getLeft()
focal_class.class_method_signature: BinaryTreeNode.setLeft(BinaryTreeNode<T> left)
focal_class.full_signature: public void setLeft(BinaryTreeNode<T> left)
focal_class.identifier: setLeft
focal_class.modifiers: public
focal_class.parameters: (BinaryTreeNode<T> left)
focal_class.return: void
focal_class.signature: void setLeft(BinaryTreeNode<T> left)
focal_class.class_method_signature: BinaryTreeNode.addLeft(T data)
focal_class.full_signature: public void addLeft(T data)
focal_class.identifier: addLeft
focal_class.modifiers: public
focal_class.parameters: (T data)
focal_class.return: void
focal_class.signature: void addLeft(T data)
focal_class.class_method_signature: BinaryTreeNode.getRight()
focal_class.full_signature: public BinaryTreeNode<T> getRight()
focal_class.identifier: getRight
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: BinaryTreeNode<T>
focal_class.signature: BinaryTreeNode<T> getRight()
focal_class.class_method_signature: BinaryTreeNode.setRight(BinaryTreeNode<T> right)
focal_class.full_signature: public void setRight(BinaryTreeNode<T> right)
focal_class.identifier: setRight
focal_class.modifiers: public
focal_class.parameters: (BinaryTreeNode<T> right)
focal_class.return: void
focal_class.signature: void setRight(BinaryTreeNode<T> right)
focal_class.class_method_signature: BinaryTreeNode.addRight(T data)
focal_class.full_signature: public void addRight(T data)
focal_class.identifier: addRight
focal_class.modifiers: public
focal_class.parameters: (T data)
focal_class.return: void
focal_class.signature: void addRight(T data)
focal_class.class_method_signature: BinaryTreeNode.append(T data)
focal_class.full_signature: public void append(T data)
focal_class.identifier: append
focal_class.modifiers: public
focal_class.parameters: (T data)
focal_class.return: void
focal_class.signature: void append(T data)
focal_class.class_method_signature: BinaryTreeNode.append(BinaryTreeNode<T> node)
focal_class.full_signature: public void append(BinaryTreeNode<T> node)
focal_class.identifier: append
focal_class.modifiers: public
focal_class.parameters: (BinaryTreeNode<T> node)
focal_class.return: void
focal_class.signature: void append(BinaryTreeNode<T> node)
focal_class.class_method_signature: BinaryTreeNode.getLeafData()
focal_class.full_signature: public Collection<T> getLeafData()
focal_class.identifier: getLeafData
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Collection<T>
focal_class.signature: Collection<T> getLeafData()
focal_class.class_method_signature: BinaryTreeNode.getLeafData(BinaryTreeNode<T> currentNode, Collection<T> previousData)
focal_class.full_signature: private Collection<T> getLeafData(BinaryTreeNode<T> currentNode, Collection<T> previousData)
focal_class.identifier: getLeafData
focal_class.modifiers: private
focal_class.parameters: (BinaryTreeNode<T> currentNode, Collection<T> previousData)
focal_class.return: Collection<T>
focal_class.signature: Collection<T> getLeafData(BinaryTreeNode<T> currentNode, Collection<T> previousData)
focal_class.class_method_signature: BinaryTreeNode.getAllData()
focal_class.full_signature: public Collection<T> getAllData()
focal_class.identifier: getAllData
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Collection<T>
focal_class.signature: Collection<T> getAllData()
focal_class.class_method_signature: BinaryTreeNode.getAllData(BinaryTreeNode<T> currentNode, Collection<T> previousData)
focal_class.full_signature: private Collection<T> getAllData(BinaryTreeNode<T> currentNode, Collection<T> previousData)
focal_class.identifier: getAllData
focal_class.modifiers: private
focal_class.parameters: (BinaryTreeNode<T> currentNode, Collection<T> previousData)
focal_class.return: Collection<T>
focal_class.signature: Collection<T> getAllData(BinaryTreeNode<T> currentNode, Collection<T> previousData)
focal_class.class_method_signature: BinaryTreeNode.pathTo(T data)
focal_class.full_signature: public List<BinaryTreeNode<T>> pathTo(T data)
focal_class.identifier: pathTo
focal_class.modifiers: public
focal_class.parameters: (T data)
focal_class.return: List<BinaryTreeNode<T>>
focal_class.signature: List<BinaryTreeNode<T>> pathTo(T data)
focal_class.class_method_signature: BinaryTreeNode.pathTo(T data, BinaryTreeNode<T> currentNode, LinkedList<BinaryTreeNode<T>> currentPath)
focal_class.full_signature: private LinkedList<BinaryTreeNode<T>> pathTo(T data, BinaryTreeNode<T> currentNode, LinkedList<BinaryTreeNode<T>> currentPath)
focal_class.identifier: pathTo
focal_class.modifiers: private
focal_class.parameters: (T data, BinaryTreeNode<T> currentNode, LinkedList<BinaryTreeNode<T>> currentPath)
focal_class.return: LinkedList<BinaryTreeNode<T>>
focal_class.signature: LinkedList<BinaryTreeNode<T>> pathTo(T data, BinaryTreeNode<T> currentNode, LinkedList<BinaryTreeNode<T>> currentPath)
focal_class.class_method_signature: BinaryTreeNode.find(T data)
focal_class.full_signature: public BinaryTreeNode<T> find(T data)
focal_class.identifier: find
focal_class.modifiers: public
focal_class.parameters: (T data)
focal_class.return: BinaryTreeNode<T>
focal_class.signature: BinaryTreeNode<T> find(T data)
focal_class.class_method_signature: BinaryTreeNode.find(T data, BinaryTreeNode<T> node)
focal_class.full_signature: private BinaryTreeNode<T> find(T data, BinaryTreeNode<T> node)
focal_class.identifier: find
focal_class.modifiers: private
focal_class.parameters: (T data, BinaryTreeNode<T> node)
focal_class.return: BinaryTreeNode<T>
focal_class.signature: BinaryTreeNode<T> find(T data, BinaryTreeNode<T> node)
focal_class.class_method_signature: BinaryTreeNode.substitute(T target, T replacement)
focal_class.full_signature: public void substitute(T target, T replacement)
focal_class.identifier: substitute
focal_class.modifiers: public
focal_class.parameters: (T target, T replacement)
focal_class.return: void
focal_class.signature: void substitute(T target, T replacement)
focal_class.class_method_signature: BinaryTreeNode.substitute(BinaryTreeNode<T> target, BinaryTreeNode<T> replacement)
focal_class.full_signature: public void substitute(BinaryTreeNode<T> target, BinaryTreeNode<T> replacement)
focal_class.identifier: substitute
focal_class.modifiers: public
focal_class.parameters: (BinaryTreeNode<T> target, BinaryTreeNode<T> replacement)
focal_class.return: void
focal_class.signature: void substitute(BinaryTreeNode<T> target, BinaryTreeNode<T> replacement)
focal_class.class_method_signature: BinaryTreeNode.substitute(BinaryTreeNode<T> target, BinaryTreeNode<T> replacement, BinaryTreeNode<T> reference)
focal_class.full_signature: private void substitute(BinaryTreeNode<T> target, BinaryTreeNode<T> replacement, BinaryTreeNode<T> reference)
focal_class.identifier: substitute
focal_class.modifiers: private
focal_class.parameters: (BinaryTreeNode<T> target, BinaryTreeNode<T> replacement, BinaryTreeNode<T> reference)
focal_class.return: void
focal_class.signature: void substitute(BinaryTreeNode<T> target, BinaryTreeNode<T> replacement, BinaryTreeNode<T> reference)
focal_class.class_method_signature: BinaryTreeNode.copy()
focal_class.full_signature: public BinaryTreeNode<T> copy()
focal_class.identifier: copy
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: BinaryTreeNode<T>
focal_class.signature: BinaryTreeNode<T> copy()
focal_class.class_method_signature: BinaryTreeNode.hasLeft()
focal_class.full_signature: public boolean hasLeft()
focal_class.identifier: hasLeft
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean hasLeft()
focal_class.class_method_signature: BinaryTreeNode.hasRight()
focal_class.full_signature: public boolean hasRight()
focal_class.identifier: hasRight
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean hasRight()
focal_class.class_method_signature: BinaryTreeNode.isLeaf()
focal_class.full_signature: public boolean isLeaf()
focal_class.identifier: isLeaf
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isLeaf()
focal_class.class_method_signature: BinaryTreeNode.size()
focal_class.full_signature: public int size()
focal_class.identifier: size
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int size()
focal_class.class_method_signature: BinaryTreeNode.toStringInOrder()
focal_class.full_signature: public String toStringInOrder()
focal_class.identifier: toStringInOrder
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toStringInOrder()
focal_class.class_method_signature: BinaryTreeNode.toStringPostOrder()
focal_class.full_signature: public String toStringPostOrder()
focal_class.identifier: toStringPostOrder
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toStringPostOrder()
focal_class.class_method_signature: BinaryTreeNode.toNewickString()
focal_class.full_signature: public String toNewickString()
focal_class.identifier: toNewickString
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toNewickString()
focal_class.class_method_signature: BinaryTreeNode.toNewickString(Function<T, String> extractor, String separator)
focal_class.full_signature: public String toNewickString(Function<T, String> extractor, String separator)
focal_class.identifier: toNewickString
focal_class.modifiers: public
focal_class.parameters: (Function<T, String> extractor, String separator)
focal_class.return: String
focal_class.signature: String toNewickString(Function<T, String> extractor, String separator)
focal_class.class_method_signature: BinaryTreeNode.inOrderTraversal(Consumer<BinaryTreeNode<T>> operation)
focal_class.full_signature: public void inOrderTraversal(Consumer<BinaryTreeNode<T>> operation)
focal_class.identifier: inOrderTraversal
focal_class.modifiers: public
focal_class.parameters: (Consumer<BinaryTreeNode<T>> operation)
focal_class.return: void
focal_class.signature: void inOrderTraversal(Consumer<BinaryTreeNode<T>> operation)
focal_class.class_method_signature: BinaryTreeNode.inOrderTraversal(BinaryTreeNode<T> current, Consumer<BinaryTreeNode<T>> operation)
focal_class.full_signature: private void inOrderTraversal(BinaryTreeNode<T> current, Consumer<BinaryTreeNode<T>> operation)
focal_class.identifier: inOrderTraversal
focal_class.modifiers: private
focal_class.parameters: (BinaryTreeNode<T> current, Consumer<BinaryTreeNode<T>> operation)
focal_class.return: void
focal_class.signature: void inOrderTraversal(BinaryTreeNode<T> current, Consumer<BinaryTreeNode<T>> operation)
focal_class.class_method_signature: BinaryTreeNode.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_class.class_method_signature: BinaryTreeNode.print()
focal_class.full_signature: public void print()
focal_class.identifier: print
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void print()
focal_class.class_method_signature: BinaryTreeNode.print(String prefix, boolean isTail)
focal_class.full_signature: private void print(String prefix, boolean isTail)
focal_class.identifier: print
focal_class.modifiers: private
focal_class.parameters: (String prefix, boolean isTail)
focal_class.return: void
focal_class.signature: void print(String prefix, boolean isTail)
focal_class.class_method_signature: BinaryTreeNode.equals(Object o)
focal_class.full_signature: @Override public boolean equals(Object o)
focal_class.identifier: equals
focal_class.modifiers: @Override public
focal_class.parameters: (Object o)
focal_class.return: boolean
focal_class.signature: boolean equals(Object o)
focal_class.class_method_signature: BinaryTreeNode.hashCode()
focal_class.full_signature: @Override public int hashCode()
focal_class.identifier: hashCode
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int hashCode()
focal_method.body: public List<BinaryTreeNode<T>> pathTo(T data) {
          LinkedList<BinaryTreeNode<T>> currentPath = new LinkedList<>();
          currentPath.add(this);
          return pathTo(data, this, currentPath);
      }
focal_method.class_method_signature: BinaryTreeNode.pathTo(T data)
focal_method.full_signature: public List<BinaryTreeNode<T>> pathTo(T data)
focal_method.identifier: pathTo
focal_method.invocations: add pathTo
focal_method.modifiers: public
focal_method.parameters: (T data)
focal_method.return: List<BinaryTreeNode<T>>
focal_method.signature: List<BinaryTreeNode<T>> pathTo(T data)