
org.eclipse.collections.api.map.MutableOrderedMap Maven / Gradle / Ivy
/*
* Copyright (c) 2015 Goldman Sachs.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* and Eclipse Distribution License v. 1.0 which accompany this distribution.
* The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
* and the Eclipse Distribution License is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*/
package org.eclipse.collections.api.map;
import org.eclipse.collections.api.block.function.Function;
import org.eclipse.collections.api.block.function.Function0;
import org.eclipse.collections.api.block.function.Function2;
import org.eclipse.collections.api.block.function.primitive.BooleanFunction;
import org.eclipse.collections.api.block.function.primitive.ByteFunction;
import org.eclipse.collections.api.block.function.primitive.CharFunction;
import org.eclipse.collections.api.block.function.primitive.DoubleFunction;
import org.eclipse.collections.api.block.function.primitive.FloatFunction;
import org.eclipse.collections.api.block.function.primitive.IntFunction;
import org.eclipse.collections.api.block.function.primitive.LongFunction;
import org.eclipse.collections.api.block.function.primitive.ShortFunction;
import org.eclipse.collections.api.block.predicate.Predicate;
import org.eclipse.collections.api.block.predicate.Predicate2;
import org.eclipse.collections.api.block.procedure.Procedure;
import org.eclipse.collections.api.block.procedure.Procedure2;
import org.eclipse.collections.api.list.MutableList;
import org.eclipse.collections.api.list.primitive.MutableBooleanList;
import org.eclipse.collections.api.list.primitive.MutableByteList;
import org.eclipse.collections.api.list.primitive.MutableCharList;
import org.eclipse.collections.api.list.primitive.MutableDoubleList;
import org.eclipse.collections.api.list.primitive.MutableFloatList;
import org.eclipse.collections.api.list.primitive.MutableIntList;
import org.eclipse.collections.api.list.primitive.MutableLongList;
import org.eclipse.collections.api.list.primitive.MutableShortList;
import org.eclipse.collections.api.multimap.list.MutableListMultimap;
import org.eclipse.collections.api.partition.list.PartitionMutableList;
import org.eclipse.collections.api.tuple.Pair;
public interface MutableOrderedMap extends OrderedMap, MutableMapIterable
{
MutableOrderedMap tap(Procedure super V> procedure);
MutableOrderedMap flipUniqueValues();
MutableListMultimap flip();
MutableOrderedMap select(Predicate2 super K, ? super V> predicate);
MutableOrderedMap reject(Predicate2 super K, ? super V> predicate);
MutableOrderedMap collect(Function2 super K, ? super V, Pair> function);
MutableOrderedMap collectValues(Function2 super K, ? super V, ? extends R> function);
MutableOrderedMap toReversed();
MutableOrderedMap take(int count);
MutableOrderedMap takeWhile(Predicate super V> predicate);
MutableOrderedMap drop(int count);
MutableOrderedMap dropWhile(Predicate super V> predicate);
PartitionMutableList partitionWhile(Predicate super V> predicate);
MutableList distinct();
MutableList select(Predicate super V> predicate);
MutableList selectWith(Predicate2 super V, ? super P> predicate, P parameter);
MutableList reject(Predicate super V> predicate);
MutableList rejectWith(Predicate2 super V, ? super P> predicate, P parameter);
PartitionMutableList partition(Predicate super V> predicate);
PartitionMutableList partitionWith(Predicate2 super V, ? super P> predicate, P parameter);
MutableBooleanList collectBoolean(BooleanFunction super V> booleanFunction);
MutableByteList collectByte(ByteFunction super V> byteFunction);
MutableCharList collectChar(CharFunction super V> charFunction);
MutableDoubleList collectDouble(DoubleFunction super V> doubleFunction);
MutableFloatList collectFloat(FloatFunction super V> floatFunction);
MutableIntList collectInt(IntFunction super V> intFunction);
MutableLongList collectLong(LongFunction super V> longFunction);
MutableShortList collectShort(ShortFunction super V> shortFunction);
MutableList> zip(Iterable that);
MutableList> zipWithIndex();
MutableList collectWith(Function2 super V, ? super P, ? extends V1> function, P parameter);
MutableList collectIf(Predicate super V> predicate, Function super V, ? extends V1> function);
MutableList selectInstancesOf(Class clazz);
MutableList flatCollect(Function super V, ? extends Iterable> function);
MutableListMultimap groupBy(Function super V, ? extends V1> function);
MutableListMultimap groupByEach(Function super V, ? extends Iterable> function);
MutableOrderedMap groupByUniqueKey(Function super V, ? extends V1> function);
MutableOrderedMap aggregateInPlaceBy(Function super V, ? extends KK> groupBy, Function0 extends VV> zeroValueFactory, Procedure2 super VV, ? super V> mutatingAggregator);
MutableOrderedMap aggregateBy(Function super V, ? extends KK> groupBy, Function0 extends VV> zeroValueFactory, Function2 super VV, ? super V, ? extends VV> nonMutatingAggregator);
}