1f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert/* 2f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * Copyright (C) 2010 The Android Open Source Project 3f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * 4f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * Licensed under the Apache License, Version 2.0 (the "License"); 5f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * you may not use this file except in compliance with the License. 6f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * You may obtain a copy of the License at 7f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * 8f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * http://www.apache.org/licenses/LICENSE-2.0 9f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * 10f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * Unless required by applicable law or agreed to in writing, software 11f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * distributed under the License is distributed on an "AS IS" BASIS, 12f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * See the License for the specific language governing permissions and 14f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * limitations under the License. 15f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert */ 16f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert 17f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringertpackage com.android.quicksearchbox.util; 18f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert 19f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert/** 20f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * Interface for data consumers. 21f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * 22f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * @param <A> The type of data to consume. 23f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert */ 24f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringertpublic interface Consumer<A> { 25f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert 26f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert /** 27f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * Consumes a value. 28f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * 29f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * @param value The value to consume. 30f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert * @return {@code true} if the value was accepted, {@code false} otherwise. 31f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert */ 32f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert boolean consume(A value); 33f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert 34f252dc7a25ba08b973ecc1cfbbce58eb78d42167Bjorn Bringert} 35