// 
// Decompiled by Procyon v0.6.0
// 

package it.unimi.dsi.fastutil.chars;

import it.unimi.dsi.fastutil.objects.ObjectIterator;
import it.unimi.dsi.fastutil.objects.ObjectBidirectionalIterator;
import java.util.Comparator;
import java.util.Collection;
import java.util.Set;
import it.unimi.dsi.fastutil.objects.ObjectSet;
import java.util.Map;
import it.unimi.dsi.fastutil.objects.ObjectSortedSet;
import java.util.SortedMap;

public interface Char2CharSortedMap extends Char2CharMap, SortedMap<Character, Character>
{
    Char2CharSortedMap subMap(final char p0, final char p1);
    
    Char2CharSortedMap headMap(final char p0);
    
    Char2CharSortedMap tailMap(final char p0);
    
    char firstCharKey();
    
    char lastCharKey();
    
    @Deprecated
    default Char2CharSortedMap subMap(final Character from, final Character to) {
        return this.subMap((char)from, (char)to);
    }
    
    @Deprecated
    default Char2CharSortedMap headMap(final Character to) {
        return this.headMap((char)to);
    }
    
    @Deprecated
    default Char2CharSortedMap tailMap(final Character from) {
        return this.tailMap((char)from);
    }
    
    @Deprecated
    default Character firstKey() {
        return this.firstCharKey();
    }
    
    @Deprecated
    default Character lastKey() {
        return this.lastCharKey();
    }
    
    @Deprecated
    default ObjectSortedSet<Map.Entry<Character, Character>> entrySet() {
        return (ObjectSortedSet<Map.Entry<Character, Character>>)this.char2CharEntrySet();
    }
    
    ObjectSortedSet<Char2CharMap.Entry> char2CharEntrySet();
    
    CharSortedSet keySet();
    
    CharCollection values();
    
    CharComparator comparator();
    
    public interface FastSortedEntrySet extends ObjectSortedSet<Char2CharMap.Entry>, FastEntrySet
    {
        ObjectBidirectionalIterator<Char2CharMap.Entry> fastIterator();
        
        ObjectBidirectionalIterator<Char2CharMap.Entry> fastIterator(final Char2CharMap.Entry p0);
    }
}
