propagates throwable exactly as-is , if and only if it is an instance of runtimeexception or error . example usage : try somemethodthatcouldthrowanything ; catch iknowwhattodowiththisexception e handle e ; catch throwable t throwables.propagateifpossible t ; throw new runtimeexception `` unexpected '' , t ; concode_field_sep Method getStackTraceElementMethod concode_elem_sep String SHARED_SECRETS_CLASSNAME concode_elem_sep Method getStackTraceDepthMethod concode_elem_sep String JAVA_LANG_ACCESS_CLASSNAME concode_elem_sep Object jla concode_field_sep List<StackTraceElement> lazyStackTrace concode_elem_sep Object getJLA concode_elem_sep Method getJlaMethod concode_elem_sep Method getSizeMethod concode_elem_sep Object invokeAccessibleNonThrowingMethod concode_elem_sep Method getGetMethod concode_elem_sep List<StackTraceElement> jlaStackTrace concode_elem_sep List<Throwable> getCausalChain concode_elem_sep RuntimeException propagate concode_elem_sep void propagateIfInstanceOf concode_elem_sep Throwable getRootCause concode_elem_sep String getStackTraceAsString concode_elem_sep boolean lazyStackTraceIsLazy
void function ( @ Nullable Throwable arg0 ) { propagateIfInstanceOf ( arg0 , Error . class ) ; propagateIfInstanceOf ( arg0 , RuntimeException . class ) ; }