original_string: private function validateReturnType(): void
    {
      // Return immediately if designation type is not appropriate for this method.
      if (!in_array($this->designationType, ['function', 'singleton0', 'singleton1'])) return;
  
      $types = explode('|', $this->returnType);
      $diff  = array_diff($types, ['string', 'int', 'float', 'double', 'bool', 'null']);
  
      if (!($this->returnType=='mixed' || $this->returnType=='bool' || empty($diff)))
      {
        throw new RoutineLoaderException("Return type must be 'mixed', 'bool', or a combination of 'int', 'float', 'string', and 'null'");
      }
  
      // The following tests are applicable for singleton0 routines only.
      if (!in_array($this->designationType, ['singleton0'])) return;
  
      // Return mixed is OK.
      if (in_array($this->returnType, ['bool', 'mixed'])) return;
  
      // In all other cases return type mus contain null.
      $parts = explode('|', $this->returnType);
      $key   = array_search('null', $parts);
      if ($key===false)
      {
        throw new RoutineLoaderException("Return type must be 'mixed', 'bool', or contain 'null' (with a combination of 'int', 'float', and 'string')");
      }
    }
code: private function validateReturnType(): void
    {
      // Return immediately if designation type is not appropriate for this method.
      if (!in_array($this->designationType, ['function', 'singleton0', 'singleton1'])) return;
  
      $types = explode('|', $this->returnType);
      $diff  = array_diff($types, ['string', 'int', 'float', 'double', 'bool', 'null']);
  
      if (!($this->returnType=='mixed' || $this->returnType=='bool' || empty($diff)))
      {
        throw new RoutineLoaderException("Return type must be 'mixed', 'bool', or a combination of 'int', 'float', 'string', and 'null'");
      }
  
      // The following tests are applicable for singleton0 routines only.
      if (!in_array($this->designationType, ['singleton0'])) return;
  
      // Return mixed is OK.
      if (in_array($this->returnType, ['bool', 'mixed'])) return;
  
      // In all other cases return type mus contain null.
      $parts = explode('|', $this->returnType);
      $key   = array_search('null', $parts);
      if ($key===false)
      {
        throw new RoutineLoaderException("Return type must be 'mixed', 'bool', or contain 'null' (with a combination of 'int', 'float', and 'string')");
      }
    }
code_tokens: private function validateReturnType ( ) : void { // Return immediately if designation type is not appropriate for this method. if ( ! in_array ( $ this -> designationType , [ 'function' , 'singleton0' , 'singleton1' ] ) ) return ; $ types = explode ( '|' , $ this -> returnType ) ; $ diff = array_diff ( $ types , [ 'string' , 'int' , 'float' , 'double' , 'bool' , 'null' ] ) ; if ( ! ( $ this -> returnType == 'mixed' || $ this -> returnType == 'bool' || empty ( $ diff ) ) ) { throw new RoutineLoaderException ( "Return type must be 'mixed', 'bool', or a combination of 'int', 'float', 'string', and 'null'" ) ; } // The following tests are applicable for singleton0 routines only. if ( ! in_array ( $ this -> designationType , [ 'singleton0' ] ) ) return ; // Return mixed is OK. if ( in_array ( $ this -> returnType , [ 'bool' , 'mixed' ] ) ) return ; // In all other cases return type mus contain null. $ parts = explode ( '|' , $ this -> returnType ) ; $ key = array_search ( 'null' , $ parts ) ; if ( $ key === false ) { throw new RoutineLoaderException ( "Return type must be 'mixed', 'bool', or contain 'null' (with a combination of 'int', 'float', and 'string')" ) ; } }
docstring: Validates the specified return type of the stored routine.
docstring_tokens: Validates the specified return type of the stored routine .