original_string: public static function validateType($value)
      {
          if (get_called_class() === $value) {
              return true;
          }
          if (array_key_exists($value, class_implements(get_called_class()))) {
              return true;
          }
          if (array_key_exists($value, class_parents(get_called_class()))) {
              return true;
          }
          throw new InvalidDataTypeException(__CLASS__, new static);
      }
code: public static function validateType($value)
      {
          if (get_called_class() === $value) {
              return true;
          }
          if (array_key_exists($value, class_implements(get_called_class()))) {
              return true;
          }
          if (array_key_exists($value, class_parents(get_called_class()))) {
              return true;
          }
          throw new InvalidDataTypeException(__CLASS__, new static);
      }
code_tokens: public static function validateType ( $ value ) { if ( get_called_class ( ) === $ value ) { return true ; } if ( array_key_exists ( $ value , class_implements ( get_called_class ( ) ) ) ) { return true ; } if ( array_key_exists ( $ value , class_parents ( get_called_class ( ) ) ) ) { return true ; } throw new InvalidDataTypeException ( __CLASS__ , new static ) ; }
docstring: Validate object type
  
  @param $value
  @return bool
  @throws InvalidDataTypeException
docstring_tokens: Validate object type