diff --git a/src/cse332/interfaces/misc/BString.java b/src/cse332/interfaces/misc/BString.java index 460653ec23fa82813cf72f179ad159aef0cea3a6..07e860d0696b974c0fd26b74e52dcc7065f446f6 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 008439659507023636f92dda20c761f3954789b0..1b32d6466b93f07c2574a77ba76d0b90e83d5c1d 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 1600845aa68068f4500d20a7228e67a7665a565c..97d819e11aa52810d926fd0481f02e22923c49e0 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 09dcff102ac10290321a68ac8dab926985abee20..33b035cd5a9eaa9294d6b8eb2b6e1dabfd431dba 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); }