@@ -0,0 +1,2542 @@
+/**%0A *%0A * Copyright (c) 2006-2018, Speedment, Inc. All Rights Reserved.%0A *%0A * Licensed under the Apache License, Version 2.0 (the %22License%22); You may not%0A * use this file except in compliance with the License. You may obtain a copy of%0A * the License at:%0A *%0A * http://www.apache.org/licenses/LICENSE-2.0%0A *%0A * Unless required by applicable law or agreed to in writing, software%0A * distributed under the License is distributed on an %22AS IS%22 BASIS, WITHOUT%0A * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the%0A * License for the specific language governing permissions and limitations under%0A * the License.%0A */%0Apackage com.speedment.common.function.collector;%0A%0Aimport java.util.Set;%0Aimport java.util.function.BinaryOperator;%0Aimport java.util.function.Function;%0Aimport java.util.function.ObjLongConsumer;%0Aimport java.util.function.Supplier;%0Aimport java.util.stream.Collector;%0Aimport java.util.stream.Collector.Characteristics;%0A%0A/**%0A * Primitive collector that operates on %7B@code long%7D values, resulting in an%0A * object of type %7B@code R%7D.%0A *%0A * @param %3CA%3E the intermediary accumulating type%0A * @param %3CR%3E the result type%0A *%0A * @author Emil Forslund%0A * @since  1.0.5%0A */%0Apublic interface LongCollector%3CA, R%3E %7B%0A%0A    /**%0A     * Returns a supplier that can create an intermediary accumulating object.%0A     *%0A     * @return the supplier for the accumulating object%0A     *%0A     * @see Collector#supplier()%0A     */%0A    Supplier%3CA%3E supplier();%0A%0A    /**%0A     * Stateless function that takes an accumulating object returned by%7B@link%0A     * #supplier()%7D and adds a single %7B@code long%7D value to it.%0A     *%0A     * @return the accumulator%0A     *%0A     * @see Collector#accumulator()%0A     */%0A    ObjLongConsumer%3CA%3E accumulator();%0A%0A    /**%0A     * Stateless function that takes two accumulating objects and returns a%0A     * single one representing the combined result. This can be either one of%0A     * the two instances or a completely new instance.%0A     *%0A     * @return the combiner%0A     *%0A     * @see Collector#combiner()%0A     */%0A    BinaryOperator%3CA%3E combiner();%0A%0A    /**%0A     * Returns a finisher function that takes an accumulating object and turns%0A     * it into the final %7B@code double%7D.%0A     *%0A     * @return the finisher%0A     *%0A     * @see Collector#finisher()%0A     */%0A    Function%3CA, R%3E finisher();%0A%0A    /**%0A     * Returns a set of characteristics for this collector.%0A     *%0A     * @return the characteristics for this collector%0A     *%0A     * @see Collector#characteristics()%0A     */%0A    Set%3CCharacteristics%3E characteristics();%0A%0A%7D%0A

Add LongCollector interface