test_class.declarator: testException = new Throwable()
test_class.modifier: private final
test_class.original_string: private final Throwable testException = new Throwable();
test_class.type: Throwable
test_class.var_name: testException
test_class.file: rxjava/src/test/java/io/reactivex/processors/AsyncProcessorTest.java
test_class.identifier: AsyncProcessorTest
test_class.superclass: extends FlowableProcessorTest<Object>
test_case.body: @Test
      public void cancelRace() {
          AsyncProcessor<Object> p = AsyncProcessor.create();
  
          for (int i = 0; i < TestHelper.RACE_DEFAULT_LOOPS; i++) {
              final TestSubscriber<Object> ts1 = p.test();
              final TestSubscriber<Object> ts2 = p.test();
  
              Runnable r1 = new Runnable() {
                  @Override
                  public void run() {
                      ts1.cancel();
                  }
              };
  
              Runnable r2 = new Runnable() {
                  @Override
                  public void run() {
                      ts2.cancel();
                  }
              };
  
              TestHelper.race(r1, r2);
          }
      }
test_case.class_method_signature: AsyncProcessorTest.cancelRace()
test_case.full_signature: @Test public void cancelRace()
test_case.identifier: cancelRace
test_case.invocations: create test test cancel cancel race
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void cancelRace()
focal_class.declarator: EMPTY = new AsyncSubscription[0]
focal_class.modifier: @SuppressWarnings("rawtypes")
      static final
focal_class.original_string: @SuppressWarnings("rawtypes")
      static final AsyncSubscription[] EMPTY = new AsyncSubscription[0];
focal_class.type: AsyncSubscription[]
focal_class.var_name: EMPTY
focal_class.declarator: TERMINATED = new AsyncSubscription[0]
focal_class.modifier: @SuppressWarnings("rawtypes")
      static final
focal_class.original_string: @SuppressWarnings("rawtypes")
      static final AsyncSubscription[] TERMINATED = new AsyncSubscription[0];
focal_class.type: AsyncSubscription[]
focal_class.var_name: TERMINATED
focal_class.declarator: subscribers
focal_class.modifier: final
focal_class.original_string: final AtomicReference<AsyncSubscription<T>[]> subscribers;
focal_class.type: AtomicReference<AsyncSubscription<T>[]>
focal_class.var_name: subscribers
focal_class.declarator: error
focal_class.original_string: Throwable error;
focal_class.type: Throwable
focal_class.var_name: error
focal_class.declarator: value
focal_class.original_string: T value;
focal_class.type: T
focal_class.var_name: value
focal_class.file: rxjava/src/main/java/io/reactivex/processors/AsyncProcessor.java
focal_class.identifier: AsyncProcessor
focal_class.class_method_signature: AsyncProcessor.create()
focal_class.full_signature: @CheckReturnValue @NonNull public static AsyncProcessor<T> create()
focal_class.identifier: create
focal_class.modifiers: @CheckReturnValue @NonNull public static
focal_class.parameters: ()
focal_class.return: AsyncProcessor<T>
focal_class.signature: AsyncProcessor<T> create()
focal_class.class_method_signature: AsyncProcessor.AsyncProcessor()
focal_class.full_signature: @SuppressWarnings("unchecked")  AsyncProcessor()
focal_class.identifier: AsyncProcessor
focal_class.modifiers: @SuppressWarnings("unchecked")
focal_class.parameters: ()
focal_class.signature:  AsyncProcessor()
focal_class.class_method_signature: AsyncProcessor.onSubscribe(Subscription s)
focal_class.full_signature: @Override public void onSubscribe(Subscription s)
focal_class.identifier: onSubscribe
focal_class.modifiers: @Override public
focal_class.parameters: (Subscription s)
focal_class.return: void
focal_class.signature: void onSubscribe(Subscription s)
focal_class.class_method_signature: AsyncProcessor.onNext(T t)
focal_class.full_signature: @Override public void onNext(T t)
focal_class.identifier: onNext
focal_class.modifiers: @Override public
focal_class.parameters: (T t)
focal_class.return: void
focal_class.signature: void onNext(T t)
focal_class.class_method_signature: AsyncProcessor.onError(Throwable t)
focal_class.full_signature: @SuppressWarnings("unchecked") @Override public void onError(Throwable t)
focal_class.identifier: onError
focal_class.modifiers: @SuppressWarnings("unchecked") @Override public
focal_class.parameters: (Throwable t)
focal_class.return: void
focal_class.signature: void onError(Throwable t)
focal_class.class_method_signature: AsyncProcessor.onComplete()
focal_class.full_signature: @SuppressWarnings("unchecked") @Override public void onComplete()
focal_class.identifier: onComplete
focal_class.modifiers: @SuppressWarnings("unchecked") @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void onComplete()
focal_class.class_method_signature: AsyncProcessor.hasSubscribers()
focal_class.full_signature: @Override public boolean hasSubscribers()
focal_class.identifier: hasSubscribers
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean hasSubscribers()
focal_class.class_method_signature: AsyncProcessor.hasThrowable()
focal_class.full_signature: @Override public boolean hasThrowable()
focal_class.identifier: hasThrowable
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean hasThrowable()
focal_class.class_method_signature: AsyncProcessor.hasComplete()
focal_class.full_signature: @Override public boolean hasComplete()
focal_class.identifier: hasComplete
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean hasComplete()
focal_class.class_method_signature: AsyncProcessor.getThrowable()
focal_class.full_signature: @Override @Nullable public Throwable getThrowable()
focal_class.identifier: getThrowable
focal_class.modifiers: @Override @Nullable public
focal_class.parameters: ()
focal_class.return: Throwable
focal_class.signature: Throwable getThrowable()
focal_class.class_method_signature: AsyncProcessor.subscribeActual(Subscriber<? super T> s)
focal_class.full_signature: @Override protected void subscribeActual(Subscriber<? super T> s)
focal_class.identifier: subscribeActual
focal_class.modifiers: @Override protected
focal_class.parameters: (Subscriber<? super T> s)
focal_class.return: void
focal_class.signature: void subscribeActual(Subscriber<? super T> s)
focal_class.class_method_signature: AsyncProcessor.add(AsyncSubscription<T> ps)
focal_class.full_signature:  boolean add(AsyncSubscription<T> ps)
focal_class.identifier: add
focal_class.parameters: (AsyncSubscription<T> ps)
focal_class.return: boolean
focal_class.signature: boolean add(AsyncSubscription<T> ps)
focal_class.class_method_signature: AsyncProcessor.remove(AsyncSubscription<T> ps)
focal_class.full_signature: @SuppressWarnings("unchecked") void remove(AsyncSubscription<T> ps)
focal_class.identifier: remove
focal_class.modifiers: @SuppressWarnings("unchecked")
focal_class.parameters: (AsyncSubscription<T> ps)
focal_class.return: void
focal_class.signature: void remove(AsyncSubscription<T> ps)
focal_class.class_method_signature: AsyncProcessor.hasValue()
focal_class.full_signature: public boolean hasValue()
focal_class.identifier: hasValue
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean hasValue()
focal_class.class_method_signature: AsyncProcessor.getValue()
focal_class.full_signature: @Nullable public T getValue()
focal_class.identifier: getValue
focal_class.modifiers: @Nullable public
focal_class.parameters: ()
focal_class.return: T
focal_class.signature: T getValue()
focal_class.class_method_signature: AsyncProcessor.getValues()
focal_class.full_signature: public Object[] getValues()
focal_class.identifier: getValues
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Object[]
focal_class.signature: Object[] getValues()
focal_class.class_method_signature: AsyncProcessor.getValues(T[] array)
focal_class.full_signature: public T[] getValues(T[] array)
focal_class.identifier: getValues
focal_class.modifiers: public
focal_class.parameters: (T[] array)
focal_class.return: T[]
focal_class.signature: T[] getValues(T[] array)
focal_class.superclass: extends FlowableProcessor<T>
focal_method.body: @CheckReturnValue
      @NonNull
      public static <T> AsyncProcessor<T> create() {
          return new AsyncProcessor<T>();
      }
focal_method.class_method_signature: AsyncProcessor.create()
focal_method.full_signature: @CheckReturnValue @NonNull public static AsyncProcessor<T> create()
focal_method.identifier: create
focal_method.modifiers: @CheckReturnValue @NonNull public static
focal_method.parameters: ()
focal_method.return: AsyncProcessor<T>
focal_method.signature: AsyncProcessor<T> create()