diff --git a/.classpath b/.classpath index 72c2ba61a..ad5b70f00 100644 --- a/.classpath +++ b/.classpath @@ -1,7 +1,28 @@ - - + + + + + + + + + + + - + + + + + + + + + + + + + diff --git a/.gitignore b/.gitignore index 610859901..67fae9804 100644 --- a/.gitignore +++ b/.gitignore @@ -10,4 +10,6 @@ # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml hs_err_pid* -bin/.gitignore +.DS_Store +target +!target/RedBlackNode*.jar diff --git a/.project b/.project index ec61c803b..423c0a752 100644 --- a/.project +++ b/.project @@ -1,6 +1,6 @@ - DataStructures + RedBlackNode @@ -10,8 +10,14 @@ + + org.eclipse.m2e.core.maven2Builder + + + + org.eclipse.m2e.core.maven2Nature org.eclipse.jdt.core.javanature diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs index 7341ab168..1937c422f 100644 --- a/.settings/org.eclipse.jdt.core.prefs +++ b/.settings/org.eclipse.jdt.core.prefs @@ -1,11 +1,13 @@ eclipse.preferences.version=1 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.7 +org.eclipse.jdt.core.compiler.compliance=1.6 org.eclipse.jdt.core.compiler.debug.lineNumber=generate org.eclipse.jdt.core.compiler.debug.localVariable=generate org.eclipse.jdt.core.compiler.debug.sourceFile=generate org.eclipse.jdt.core.compiler.problem.assertIdentifier=error org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.7 +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.release=disabled +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/.settings/org.eclipse.m2e.core.prefs b/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 000000000..f897a7f1c --- /dev/null +++ b/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/README.md b/README.md index ecb3225dc..39bf14c85 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ data and augmentation information to each node. * As a bonus (a proof of concept and a test case), this includes the `TreeList` class, a `List` implementation backed by a red-black tree augmented by subtree size. -* Tested in Java 6.0, 7.0, and 8.0. +* Compatible with Java 6.0 and above. # Limitations * The values of the tree must be stored in the non-leaf nodes. `RedBlackNode` diff --git a/RedBlackNode.jar b/RedBlackNode.jar deleted file mode 100644 index 3a126d57a..000000000 Binary files a/RedBlackNode.jar and /dev/null differ diff --git a/pom.xml b/pom.xml new file mode 100644 index 000000000..c6a125803 --- /dev/null +++ b/pom.xml @@ -0,0 +1,28 @@ + + 4.0.0 + com.github.btrekkie.red_black_node + RedBlackNode + 1.0.0 + RedBlackNode + Java implementation of augmented red-black trees. Easily maintain custom augmentation information by subclassing RedBlackNode: the base class does the work for you. + + + + maven-compiler-plugin + 3.8.0 + + 1.6 + 1.6 + + + + + + + junit + junit + 4.12 + test + + + \ No newline at end of file diff --git a/src/com/github/btrekkie/red_black_node/RedBlackNode.java b/src/main/java/com/github/btrekkie/red_black_node/RedBlackNode.java similarity index 99% rename from src/com/github/btrekkie/red_black_node/RedBlackNode.java rename to src/main/java/com/github/btrekkie/red_black_node/RedBlackNode.java index e045b380d..b604d5267 100644 --- a/src/com/github/btrekkie/red_black_node/RedBlackNode.java +++ b/src/main/java/com/github/btrekkie/red_black_node/RedBlackNode.java @@ -355,10 +355,10 @@ public abstract class RedBlackNode> implements Compara } /** Returns a Comparator that compares instances of N using their natural order, as in N.compareTo. */ + @SuppressWarnings({"rawtypes", "unchecked"}) private Comparator naturalOrder() { - @SuppressWarnings("unchecked") - Comparator comparator = (Comparator)NATURAL_ORDER; - return comparator; + Comparator comparator = (Comparator)NATURAL_ORDER; + return (Comparator)comparator; } /** diff --git a/src/com/github/btrekkie/red_black_node/Reference.java b/src/main/java/com/github/btrekkie/red_black_node/Reference.java similarity index 100% rename from src/com/github/btrekkie/red_black_node/Reference.java rename to src/main/java/com/github/btrekkie/red_black_node/Reference.java diff --git a/src/com/github/btrekkie/tree_list/TreeList.java b/src/main/java/com/github/btrekkie/tree_list/TreeList.java similarity index 100% rename from src/com/github/btrekkie/tree_list/TreeList.java rename to src/main/java/com/github/btrekkie/tree_list/TreeList.java diff --git a/src/com/github/btrekkie/tree_list/TreeListNode.java b/src/main/java/com/github/btrekkie/tree_list/TreeListNode.java similarity index 100% rename from src/com/github/btrekkie/tree_list/TreeListNode.java rename to src/main/java/com/github/btrekkie/tree_list/TreeListNode.java diff --git a/src/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderCollection.java b/src/test/java/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderCollection.java similarity index 100% rename from src/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderCollection.java rename to src/test/java/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderCollection.java diff --git a/src/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderNode.java b/src/test/java/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderNode.java similarity index 100% rename from src/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderNode.java rename to src/test/java/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderNode.java diff --git a/src/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderValue.java b/src/test/java/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderValue.java similarity index 100% rename from src/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderValue.java rename to src/test/java/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderValue.java diff --git a/src/com/github/btrekkie/arbitrary_order_collection/test/ArbitraryOrderCollectionTest.java b/src/test/java/com/github/btrekkie/arbitrary_order_collection/test/ArbitraryOrderCollectionTest.java similarity index 100% rename from src/com/github/btrekkie/arbitrary_order_collection/test/ArbitraryOrderCollectionTest.java rename to src/test/java/com/github/btrekkie/arbitrary_order_collection/test/ArbitraryOrderCollectionTest.java diff --git a/src/com/github/btrekkie/interval_tree/IntervalTree.java b/src/test/java/com/github/btrekkie/interval_tree/IntervalTree.java similarity index 100% rename from src/com/github/btrekkie/interval_tree/IntervalTree.java rename to src/test/java/com/github/btrekkie/interval_tree/IntervalTree.java diff --git a/src/com/github/btrekkie/interval_tree/IntervalTreeInterval.java b/src/test/java/com/github/btrekkie/interval_tree/IntervalTreeInterval.java similarity index 100% rename from src/com/github/btrekkie/interval_tree/IntervalTreeInterval.java rename to src/test/java/com/github/btrekkie/interval_tree/IntervalTreeInterval.java diff --git a/src/com/github/btrekkie/interval_tree/IntervalTreeNode.java b/src/test/java/com/github/btrekkie/interval_tree/IntervalTreeNode.java similarity index 100% rename from src/com/github/btrekkie/interval_tree/IntervalTreeNode.java rename to src/test/java/com/github/btrekkie/interval_tree/IntervalTreeNode.java diff --git a/src/com/github/btrekkie/interval_tree/test/IntervalTreeTest.java b/src/test/java/com/github/btrekkie/interval_tree/test/IntervalTreeTest.java similarity index 100% rename from src/com/github/btrekkie/interval_tree/test/IntervalTreeTest.java rename to src/test/java/com/github/btrekkie/interval_tree/test/IntervalTreeTest.java diff --git a/src/com/github/btrekkie/red_black_node/test/RedBlackNodeTest.java b/src/test/java/com/github/btrekkie/red_black_node/test/RedBlackNodeTest.java similarity index 100% rename from src/com/github/btrekkie/red_black_node/test/RedBlackNodeTest.java rename to src/test/java/com/github/btrekkie/red_black_node/test/RedBlackNodeTest.java diff --git a/src/com/github/btrekkie/red_black_node/test/TestRedBlackNode.java b/src/test/java/com/github/btrekkie/red_black_node/test/TestRedBlackNode.java similarity index 100% rename from src/com/github/btrekkie/red_black_node/test/TestRedBlackNode.java rename to src/test/java/com/github/btrekkie/red_black_node/test/TestRedBlackNode.java diff --git a/src/com/github/btrekkie/sub_array_min/SubArrayMin.java b/src/test/java/com/github/btrekkie/sub_array_min/SubArrayMin.java similarity index 100% rename from src/com/github/btrekkie/sub_array_min/SubArrayMin.java rename to src/test/java/com/github/btrekkie/sub_array_min/SubArrayMin.java diff --git a/src/com/github/btrekkie/sub_array_min/SubArrayMinNode.java b/src/test/java/com/github/btrekkie/sub_array_min/SubArrayMinNode.java similarity index 100% rename from src/com/github/btrekkie/sub_array_min/SubArrayMinNode.java rename to src/test/java/com/github/btrekkie/sub_array_min/SubArrayMinNode.java diff --git a/src/com/github/btrekkie/sub_array_min/test/SubArrayMinTest.java b/src/test/java/com/github/btrekkie/sub_array_min/test/SubArrayMinTest.java similarity index 100% rename from src/com/github/btrekkie/sub_array_min/test/SubArrayMinTest.java rename to src/test/java/com/github/btrekkie/sub_array_min/test/SubArrayMinTest.java diff --git a/src/com/github/btrekkie/tree_list/test/TreeListTest.java b/src/test/java/com/github/btrekkie/tree_list/test/TreeListTest.java similarity index 100% rename from src/com/github/btrekkie/tree_list/test/TreeListTest.java rename to src/test/java/com/github/btrekkie/tree_list/test/TreeListTest.java diff --git a/target/RedBlackNode-1.0.0.jar b/target/RedBlackNode-1.0.0.jar new file mode 100644 index 000000000..0b2b3dbf9 Binary files /dev/null and b/target/RedBlackNode-1.0.0.jar differ