*/
use MediaWiki\Linker\LinkTarget;
use Wikimedia\Assert\Assert;
+use Wikimedia\Assert\ParameterTypeException;
/**
* Represents a page (or page fragment) title within MediaWiki.
* @throws InvalidArgumentException
*/
public function __construct( $namespace, $dbkey, $fragment = '', $interwiki = '' ) {
- Assert::parameterType( 'integer', $namespace, '$namespace' );
- Assert::parameterType( 'string', $dbkey, '$dbkey' );
- Assert::parameterType( 'string', $fragment, '$fragment' );
- Assert::parameterType( 'string', $interwiki, '$interwiki' );
+ if ( !is_int( $namespace ) ) {
+ throw new ParameterTypeException( '$namespace', 'int' );
+ }
+ if ( !is_string( $dbkey ) ) {
+ throw new ParameterTypeException( '$dbkey', 'string' );
+ }
+ if ( !is_string( $fragment ) ) {
+ throw new ParameterTypeException( '$fragment', 'string' );
+ }
+ if ( !is_string( $interwiki ) ) {
+ throw new ParameterTypeException( '$interwiki', 'string' );
+ }
// Sanity check, no full validation or normalization applied here!
Assert::parameter( !preg_match( '/^_|[ \r\n\t]|_$/', $dbkey ), '$dbkey',