public function setJsonSerializePrecision(string $precision) : Time
    {
        if ($this->frozen) {
            throw new \RuntimeException(get_class($this) . ' is read-only, frozen.');
        }
        switch ($precision) {
            case '':
            case 'milliseconds':
            case 'microseconds':
                $this->jsonSerializePrecision = $precision;
                return $this;
        }
        throw new \InvalidArgumentException(
            'Arg precision[' . $precision . '] isn\'t empty or value milliseconds|microseconds.'
        );
    }
public function setJsonSerializePrecision(string $precision) : Time
    {
        if ($this->frozen) {
            throw new \RuntimeException(get_class($this) . ' is read-only, frozen.');
        }
        switch ($precision) {
            case '':
            case 'milliseconds':
            case 'microseconds':
                $this->jsonSerializePrecision = $precision;
                return $this;
        }
        throw new \InvalidArgumentException(
            'Arg precision[' . $precision . '] isn\'t empty or value milliseconds|microseconds.'
        );
    }
public function setJsonSerializePrecision ( string $ precision ) : Time { if ( $ this -> frozen ) { throw new \ RuntimeException ( get_class ( $ this ) . ' is read-only, frozen.' ) ; } switch ( $ precision ) { case '' : case 'milliseconds' : case 'microseconds' : $ this -> jsonSerializePrecision = $ precision ; return $ this ; } throw new \ InvalidArgumentException ( 'Arg precision[' . $ precision . '] isn\'t empty or value milliseconds|microseconds.' ) ; }
Set precision of JSON serialized representation.

@see Time::jsonSerialize()
@see \JsonSerializable

@param string $precision
Values: (empty)|milliseconds|microseconds.
Default: empty; with neither milli- nor microseconds.

@return $this|Time

@throws \RuntimeException
Frozen.
@throws \InvalidArgumentException
Arg precision not empty or milliseconds|microseconds.
Set precision of JSON serialized representation .