protected function checkClassForCompability( $className ) {
    $result = $className;
    if( isset( DeferredExceptionsGlobal::$defExcClasses [$className])){
       if( ! DeferredExceptionsGlobal::$defExcClasses [$className] ){
         $result = null;
       }
    } else {
      if( ! class_exists( $className ) || ! is_subclass_of( $className, 'Exception')) {
        DeferredExceptionsGlobal::$defExcClasses [$className] = false;
        $result = null;
      } else {
        DeferredExceptionsGlobal::$defExcClasses [$className] = true;
      }
    }
    return $result;
  }
protected function checkClassForCompability( $className ) {
    $result = $className;
    if( isset( DeferredExceptionsGlobal::$defExcClasses [$className])){
       if( ! DeferredExceptionsGlobal::$defExcClasses [$className] ){
         $result = null;
       }
    } else {
      if( ! class_exists( $className ) || ! is_subclass_of( $className, 'Exception')) {
        DeferredExceptionsGlobal::$defExcClasses [$className] = false;
        $result = null;
      } else {
        DeferredExceptionsGlobal::$defExcClasses [$className] = true;
      }
    }
    return $result;
  }
protected function checkClassForCompability ( $ className ) { $ result = $ className ; if ( isset ( DeferredExceptionsGlobal :: $ defExcClasses [ $ className ] ) ) { if ( ! DeferredExceptionsGlobal :: $ defExcClasses [ $ className ] ) { $ result = null ; } } else { if ( ! class_exists ( $ className ) || ! is_subclass_of ( $ className , 'Exception' ) ) { DeferredExceptionsGlobal :: $ defExcClasses [ $ className ] = false ; $ result = null ; } else { DeferredExceptionsGlobal :: $ defExcClasses [ $ className ] = true ; } } return $ result ; }
Check the class for existance and inheritance from the \Exception class

@param string $className Class name to check
@return mixed Class name or NULL
Check the class for existance and inheritance from the \ Exception class