for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace JsonSchema\Schema;
use JsonSchema\Keyword\ExclusiveMaximumKeyword;
use JsonSchema\Keyword\ExclusiveMinimumKeyword;
use JsonSchema\Keyword\MaximumKeyword;
use JsonSchema\Keyword\MinimumKeyword;
use JsonSchema\Keyword\MultipleOfKeyword;
use JsonSchema\Keyword\TypeKeyword;
class NumberSchema extends AbstractSchema
{
public function __construct()
parent::__construct(
new TypeKeyword('number')
);
}
/**
* @return static
*/
public function nullable(bool $nullable = true): self
if (!$nullable) {
return $this->with(
new TypeKeyword(['number', 'null'])
public function minimum(?float $minimum): self
new MinimumKeyword($minimum)
public function maximum(?float $maximum): self
new MaximumKeyword($maximum)
public function exclusiveMinimum(?float $exclusiveMinimum): self
new ExclusiveMinimumKeyword($exclusiveMinimum)
public function exclusiveMaximum(?float $exclusiveMaximum): self
new ExclusiveMaximumKeyword($exclusiveMaximum)
public function multipleOf(?float $multipleOf): self
new MultipleOfKeyword($multipleOf)