ObjectFactory has a hack that constructs an object directly if there are
less than 10 parameters, which there typically is for HTMLForm classes.
This is faster than using ReflectionClass, and whenever ObjectFactory is
updated to take advantage of the splat operator, this will automatically
use it as well.
And use ::class while we're at it.
Change-Id: I7a696c127c237713448b165b9b4faee13f4ff88e
switch ( $displayFormat ) {
case 'vform':
switch ( $displayFormat ) {
case 'vform':
- $reflector = new ReflectionClass( 'VFormHTMLForm' );
- return $reflector->newInstanceArgs( $arguments );
+ return ObjectFactory::constructClassInstance( VFormHTMLForm::class, $arguments );
- $reflector = new ReflectionClass( 'OOUIHTMLForm' );
- return $reflector->newInstanceArgs( $arguments );
+ return ObjectFactory::constructClassInstance( OOUIHTMLForm::class, $arguments );
- $reflector = new ReflectionClass( 'HTMLForm' );
- $form = $reflector->newInstanceArgs( $arguments );
+ /** @var HTMLForm $form */
+ $form = ObjectFactory::constructClassInstance( HTMLForm::class, $arguments );
$form->setDisplayFormat( $displayFormat );
return $form;
}
$form->setDisplayFormat( $displayFormat );
return $form;
}