test_class.declarator: ex1 = new Throwable("Ex1")
test_class.modifier: private final
test_class.original_string: private final Throwable ex1 = new Throwable("Ex1");
test_class.type: Throwable
test_class.var_name: ex1
test_class.declarator: ex2 = new Throwable("Ex2", ex1)
test_class.modifier: private final
test_class.original_string: private final Throwable ex2 = new Throwable("Ex2", ex1);
test_class.type: Throwable
test_class.var_name: ex2
test_class.declarator: ex3 = new Throwable("Ex3", ex2)
test_class.modifier: private final
test_class.original_string: private final Throwable ex3 = new Throwable("Ex3", ex2);
test_class.type: Throwable
test_class.var_name: ex3
test_class.file: rxjava/src/test/java/io/reactivex/exceptions/CompositeExceptionTest.java
test_class.identifier: CompositeExceptionTest
test_case.body: @Test
      public void rootCauseEval() {
          final TestException ex0 = new TestException();
          Throwable throwable = new Throwable() {
  
              private static final long serialVersionUID = 3597694032723032281L;
  
              @Override
              public synchronized Throwable getCause() {
                  return ex0;
              }
          };
          CompositeException ex = new CompositeException(throwable);
          assertSame(ex, ex.getRootCause(ex));
      }
test_case.class_method_signature: CompositeExceptionTest.rootCauseEval()
test_case.full_signature: @Test public void rootCauseEval()
test_case.identifier: rootCauseEval
test_case.invocations: assertSame getRootCause
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void rootCauseEval()
focal_class.declarator: serialVersionUID = 3026362227162912146L
focal_class.modifier: private static final
focal_class.original_string: private static final long serialVersionUID = 3026362227162912146L;
focal_class.type: long
focal_class.var_name: serialVersionUID
focal_class.declarator: exceptions
focal_class.modifier: private final
focal_class.original_string: private final List<Throwable> exceptions;
focal_class.type: List<Throwable>
focal_class.var_name: exceptions
focal_class.declarator: message
focal_class.modifier: private final
focal_class.original_string: private final String message;
focal_class.type: String
focal_class.var_name: message
focal_class.declarator: cause
focal_class.modifier: private
focal_class.original_string: private Throwable cause;
focal_class.type: Throwable
focal_class.var_name: cause
focal_class.file: rxjava/src/main/java/io/reactivex/exceptions/CompositeException.java
focal_class.identifier: CompositeException
focal_class.class_method_signature: CompositeException.CompositeException(@NonNull Throwable... exceptions)
focal_class.full_signature: public  CompositeException(@NonNull Throwable... exceptions)
focal_class.identifier: CompositeException
focal_class.modifiers: public
focal_class.parameters: (@NonNull Throwable... exceptions)
focal_class.signature:  CompositeException(@NonNull Throwable... exceptions)
focal_class.class_method_signature: CompositeException.CompositeException(@NonNull Iterable<? extends Throwable> errors)
focal_class.full_signature: public  CompositeException(@NonNull Iterable<? extends Throwable> errors)
focal_class.identifier: CompositeException
focal_class.modifiers: public
focal_class.parameters: (@NonNull Iterable<? extends Throwable> errors)
focal_class.signature:  CompositeException(@NonNull Iterable<? extends Throwable> errors)
focal_class.class_method_signature: CompositeException.getExceptions()
focal_class.full_signature: @NonNull public List<Throwable> getExceptions()
focal_class.identifier: getExceptions
focal_class.modifiers: @NonNull public
focal_class.parameters: ()
focal_class.return: List<Throwable>
focal_class.signature: List<Throwable> getExceptions()
focal_class.class_method_signature: CompositeException.getMessage()
focal_class.full_signature: @Override @NonNull public String getMessage()
focal_class.identifier: getMessage
focal_class.modifiers: @Override @NonNull public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getMessage()
focal_class.class_method_signature: CompositeException.getCause()
focal_class.full_signature: @Override @NonNull public synchronized Throwable getCause()
focal_class.identifier: getCause
focal_class.modifiers: @Override @NonNull public synchronized
focal_class.parameters: ()
focal_class.return: Throwable
focal_class.signature: Throwable getCause()
focal_class.class_method_signature: CompositeException.printStackTrace()
focal_class.full_signature: @Override public void printStackTrace()
focal_class.identifier: printStackTrace
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void printStackTrace()
focal_class.class_method_signature: CompositeException.printStackTrace(PrintStream s)
focal_class.full_signature: @Override public void printStackTrace(PrintStream s)
focal_class.identifier: printStackTrace
focal_class.modifiers: @Override public
focal_class.parameters: (PrintStream s)
focal_class.return: void
focal_class.signature: void printStackTrace(PrintStream s)
focal_class.class_method_signature: CompositeException.printStackTrace(PrintWriter s)
focal_class.full_signature: @Override public void printStackTrace(PrintWriter s)
focal_class.identifier: printStackTrace
focal_class.modifiers: @Override public
focal_class.parameters: (PrintWriter s)
focal_class.return: void
focal_class.signature: void printStackTrace(PrintWriter s)
focal_class.class_method_signature: CompositeException.printStackTrace(PrintStreamOrWriter s)
focal_class.full_signature: private void printStackTrace(PrintStreamOrWriter s)
focal_class.identifier: printStackTrace
focal_class.modifiers: private
focal_class.parameters: (PrintStreamOrWriter s)
focal_class.return: void
focal_class.signature: void printStackTrace(PrintStreamOrWriter s)
focal_class.class_method_signature: CompositeException.appendStackTrace(StringBuilder b, Throwable ex, String prefix)
focal_class.full_signature: private void appendStackTrace(StringBuilder b, Throwable ex, String prefix)
focal_class.identifier: appendStackTrace
focal_class.modifiers: private
focal_class.parameters: (StringBuilder b, Throwable ex, String prefix)
focal_class.return: void
focal_class.signature: void appendStackTrace(StringBuilder b, Throwable ex, String prefix)
focal_class.class_method_signature: CompositeException.getListOfCauses(Throwable ex)
focal_class.full_signature: private List<Throwable> getListOfCauses(Throwable ex)
focal_class.identifier: getListOfCauses
focal_class.modifiers: private
focal_class.parameters: (Throwable ex)
focal_class.return: List<Throwable>
focal_class.signature: List<Throwable> getListOfCauses(Throwable ex)
focal_class.class_method_signature: CompositeException.size()
focal_class.full_signature: public int size()
focal_class.identifier: size
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int size()
focal_class.class_method_signature: CompositeException.getRootCause(Throwable e)
focal_class.full_signature:  Throwable getRootCause(Throwable e)
focal_class.identifier: getRootCause
focal_class.parameters: (Throwable e)
focal_class.return: Throwable
focal_class.signature: Throwable getRootCause(Throwable e)
focal_class.superclass: extends RuntimeException
focal_method.body: Throwable getRootCause(Throwable e) {
          Throwable root = e.getCause();
          if (root == null || cause == root) {
              return e;
          }
          while (true) {
              Throwable cause = root.getCause();
              if (cause == null || cause == root) {
                  return root;
              }
              root = cause;
          }
      }
focal_method.class_method_signature: CompositeException.getRootCause(Throwable e)
focal_method.full_signature:  Throwable getRootCause(Throwable e)
focal_method.identifier: getRootCause
focal_method.invocations: getCause getCause
focal_method.parameters: (Throwable e)
focal_method.return: Throwable
focal_method.signature: Throwable getRootCause(Throwable e)