MediaWiki master
Wikimedia\ParamValidator\TypeDef\BooleanDef Class Reference

Type definition for boolean types. More...

Inherits Wikimedia\ParamValidator\TypeDef.

Collaboration diagram for Wikimedia\ParamValidator\TypeDef\BooleanDef:

Public Member Functions

 getHelpInfo ( $name, array $settings, array $options)
 Describe parameter settings in human-readable format.
 
 stringifyValue ( $name, $value, array $settings, array $options)
 Convert a value to a string representation.
 
 validate ( $name, $value, array $settings, array $options)
 Validate the value.
 
- Public Member Functions inherited from Wikimedia\ParamValidator\TypeDef
 __construct (Callbacks $callbacks)
 
 checkSettings (string $name, $settings, array $options, array $ret)
 Validate a parameter settings array.
 
 getEnumValues ( $name, array $settings, array $options)
 Get the values for enum-like parameters.
 
 getParamInfo ( $name, array $settings, array $options)
 Describe parameter settings in a machine-readable format.
 
 getValue ( $name, array $settings, array $options)
 Get the value from the request.
 
 normalizeSettings (array $settings)
 Normalize a settings array.
 
 supportsArrays ()
 Whether the value may be an array.
 

Public Attributes

const FALSEVALS = [ 'false', 'f', 'no', 'n', 'off', '0' ]
 
const TRUEVALS = [ 'true', 't', 'yes', 'y', 'on', '1' ]
 
- Public Attributes inherited from Wikimedia\ParamValidator\TypeDef
const OPT_ENFORCE_JSON_TYPES = 'enforce-json-types'
 Option that instructs TypeDefs to enforce the native type of parameter values, instead of allowing string values as input.
 
const OPT_LOG_BAD_TYPES = 'log-bad-types'
 

Additional Inherited Members

- Protected Member Functions inherited from Wikimedia\ParamValidator\TypeDef
 failIfNotString (string $name, $value, array $settings, array $options)
 Fails if $value is not a string.
 
 failure ( $failure, $name, $value, array $settings, array $options, $fatal=true)
 Record a failure message.
 
 failureMessage ( $code, array $data=null, $suffix=null)
 Create a DataMessageValue representing a failure.
 
 fatal ( $failure, $name, $value, array $settings, array $options)
 Throw a ValidationException.
 
- Protected Attributes inherited from Wikimedia\ParamValidator\TypeDef
Callbacks $callbacks
 

Detailed Description

Type definition for boolean types.

This type accepts certain defined strings to mean 'true' or 'false'. The result from validate() is a PHP boolean.

Failure codes:

  • 'badbool': The value is not a recognized boolean. No data.
Since
1.34
Stability: unstable

Definition at line 23 of file BooleanDef.php.

Member Function Documentation

◆ getHelpInfo()

Wikimedia\ParamValidator\TypeDef\BooleanDef::getHelpInfo ( $name,
array $settings,
array $options )

Describe parameter settings in human-readable format.

Keys in the returned array should generally correspond to PARAM constants.

If relevant, a MessageValue describing the type itself should be returned with key ParamValidator::PARAM_TYPE.

The default messages for other ParamValidator-defined PARAM constants may be suppressed by returning null as the value for those constants, or replaced by returning a replacement MessageValue. Normally, however, the default messages should not be changed.

MessageValues describing any other constraints applied via PARAM constants specific to this class should also be returned.

Stability: stable
to override
Parameters
string$nameParameter name being described.
array$settingsParameter settings array.
array$optionsOptions array.
Returns
(MessageValue|null)[]

Reimplemented from Wikimedia\ParamValidator\TypeDef.

Definition at line 68 of file BooleanDef.php.

References Wikimedia\ParamValidator\ParamValidator\PARAM_ISMULTI, and Wikimedia\ParamValidator\ParamValidator\PARAM_TYPE.

◆ stringifyValue()

Wikimedia\ParamValidator\TypeDef\BooleanDef::stringifyValue ( $name,
$value,
array $settings,
array $options )

Convert a value to a string representation.

This is intended as the inverse of getValue() and validate(): this should accept anything returned by those methods or expected to be used as PARAM_DEFAULT, and if the string from this method is passed in as client input or PARAM_DEFAULT it should give equivalent output from validate().

Parameters
string$nameParameter name being converted.
mixed$valueParameter value being converted. Do not pass null.
array$settingsParameter settings array.
array$optionsOptions array.
Returns
string|null Return null if there is no representation of $value reasonably satisfying the description given.

Reimplemented from Wikimedia\ParamValidator\TypeDef.

Definition at line 64 of file BooleanDef.php.

◆ validate()

Wikimedia\ParamValidator\TypeDef\BooleanDef::validate ( $name,
$value,
array $settings,
array $options )

Validate the value.

When ParamValidator is processing a multi-valued parameter, this will be called once for each of the supplied values. Which may mean zero calls.

When getValue() returned null, this will not be called.

Parameters
string$nameParameter name being validated.
mixed$valueValue to validate, from getValue().
array$settingsParameter settings array.
array$optionsOptions array. Note the following values that may be set by ParamValidator:
  • is-default: (bool) If present and true, the value was taken from PARAM_DEFAULT rather that being supplied by the client.
  • values-list: (string[]) If defined, values of a multi-valued parameter are being processed (and this array holds the full set of values).
Returns
mixed Validated value
Exceptions
ValidationExceptionif the value is invalid

Reimplemented from Wikimedia\ParamValidator\TypeDef.

Definition at line 28 of file BooleanDef.php.

References Wikimedia\ParamValidator\TypeDef\failureMessage(), and Wikimedia\ParamValidator\TypeDef\fatal().

Member Data Documentation

◆ FALSEVALS

const Wikimedia\ParamValidator\TypeDef\BooleanDef::FALSEVALS = [ 'false', 'f', 'no', 'n', 'off', '0' ]

Definition at line 26 of file BooleanDef.php.

◆ TRUEVALS

const Wikimedia\ParamValidator\TypeDef\BooleanDef::TRUEVALS = [ 'true', 't', 'yes', 'y', 'on', '1' ]

Definition at line 25 of file BooleanDef.php.


The documentation for this class was generated from the following file: