/** * Copyright 2016 Netflix, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in * compliance with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software distributed under the License is * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See * the License for the specific language governing permissions and limitations under the License. */ package io.reactivex; /** * Base interface for emitting signals in a push-fashion in various generator-like source * operators (create, generate). * * @param the value type emitted */ public interface Emitter { /** * Signal a normal value. * @param value the value to signal, not null */ void onNext(T value); /** * Signal a Throwable exception. * @param error the Throwable to signal, not null */ void onError(Throwable error); /** * Signal a completion. */ void onComplete(); }