From 73d0c17cb7f9db1c64d4554e5b399b833236936b Mon Sep 17 00:00:00 2001 From: Adam Blank <blank@sneetch.local> Date: Wed, 20 Jan 2016 06:37:30 -0800 Subject: [PATCH] Updates A to be Comparable everywhere --- src/cse332/interfaces/misc/BString.java | 3 +-- src/cse332/interfaces/trie/TrieMap.java | 2 +- src/cse332/interfaces/trie/TrieSet.java | 2 +- src/p2/clients/NGramTester.java | 3 +-- 4 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/cse332/interfaces/misc/BString.java b/src/cse332/interfaces/misc/BString.java index 460653e..07e860d 100644 --- a/src/cse332/interfaces/misc/BString.java +++ b/src/cse332/interfaces/misc/BString.java @@ -6,8 +6,7 @@ import java.util.Iterator; import cse332.interfaces.worklists.FixedSizeFIFOWorkList; import datastructures.worklists.CircularArrayFIFOQueue; -public abstract class BString<Alphabet> - implements Iterable<Alphabet>, Comparable<BString<Alphabet>> { +public abstract class BString<Alphabet extends Comparable<Alphabet> implements Iterable<Alphabet>, Comparable<BString<Alphabet>> { protected FixedSizeFIFOWorkList<Alphabet> str; public BString(Alphabet[] str) { diff --git a/src/cse332/interfaces/trie/TrieMap.java b/src/cse332/interfaces/trie/TrieMap.java index 0084396..1b32d64 100644 --- a/src/cse332/interfaces/trie/TrieMap.java +++ b/src/cse332/interfaces/trie/TrieMap.java @@ -30,7 +30,7 @@ import datastructures.worklists.ListFIFOQueue; * * @author Adam Blank */ -public abstract class TrieMap<A, K extends BString<A>, V> extends Dictionary<K, V> { +public abstract class TrieMap<A extends Comparable<A>, K extends BString<A>, V> extends Dictionary<K, V> { protected TrieNode<?, ?> root; /** diff --git a/src/cse332/interfaces/trie/TrieSet.java b/src/cse332/interfaces/trie/TrieSet.java index 1600845..97d819e 100644 --- a/src/cse332/interfaces/trie/TrieSet.java +++ b/src/cse332/interfaces/trie/TrieSet.java @@ -3,7 +3,7 @@ package cse332.interfaces.trie; import cse332.interfaces.misc.BString; import cse332.interfaces.misc.Set; -public abstract class TrieSet<A, E extends BString<A>> extends Set<E> { +public abstract class TrieSet<A extends Comparable<A>, E extends BString<A>> extends Set<E> { protected TrieSet(TrieMap<A, E, Boolean> backingMap) { super(backingMap); } diff --git a/src/p2/clients/NGramTester.java b/src/p2/clients/NGramTester.java index 09dcff1..33b035c 100644 --- a/src/p2/clients/NGramTester.java +++ b/src/p2/clients/NGramTester.java @@ -12,8 +12,7 @@ import datastructures.dictionaries.HashTrieMap; import p2.wordsuggestor.WordSuggestor; public class NGramTester { - public static <A, K extends BString<A>, V> Supplier<Dictionary<K, V>> trieConstructor( - Class<K> clz) { + public static <A extends Comparable<A>, K extends BString<A>, V> Supplier<Dictionary<K, V>> trieConstructor(Class<K> clz) { return () -> new HashTrieMap<A, K, V>(clz); } -- GitLab