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

package it.unimi.dsi.fastutil.doubles;

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 it.unimi.dsi.fastutil.floats.FloatCollection;
import java.util.Map;
import it.unimi.dsi.fastutil.objects.ObjectSortedSet;
import java.util.SortedMap;

public interface Double2FloatSortedMap extends Double2FloatMap, SortedMap<Double, Float>
{
    Double2FloatSortedMap subMap(final double p0, final double p1);
    
    Double2FloatSortedMap headMap(final double p0);
    
    Double2FloatSortedMap tailMap(final double p0);
    
    double firstDoubleKey();
    
    double lastDoubleKey();
    
    @Deprecated
    default Double2FloatSortedMap subMap(final Double from, final Double to) {
        return this.subMap((double)from, (double)to);
    }
    
    @Deprecated
    default Double2FloatSortedMap headMap(final Double to) {
        return this.headMap((double)to);
    }
    
    @Deprecated
    default Double2FloatSortedMap tailMap(final Double from) {
        return this.tailMap((double)from);
    }
    
    @Deprecated
    default Double firstKey() {
        return this.firstDoubleKey();
    }
    
    @Deprecated
    default Double lastKey() {
        return this.lastDoubleKey();
    }
    
    @Deprecated
    default ObjectSortedSet<Map.Entry<Double, Float>> entrySet() {
        return (ObjectSortedSet<Map.Entry<Double, Float>>)this.double2FloatEntrySet();
    }
    
    ObjectSortedSet<Double2FloatMap.Entry> double2FloatEntrySet();
    
    DoubleSortedSet keySet();
    
    FloatCollection values();
    
    DoubleComparator comparator();
    
    public interface FastSortedEntrySet extends ObjectSortedSet<Double2FloatMap.Entry>, FastEntrySet
    {
        ObjectBidirectionalIterator<Double2FloatMap.Entry> fastIterator();
        
        ObjectBidirectionalIterator<Double2FloatMap.Entry> fastIterator(final Double2FloatMap.Entry p0);
    }
}
