The expression return (array)Nette\Util...de(strval($data), true) returns the type array which is incompatible with the return type mandated by kalanis\Restful\Mapping\IMapper::parse() of iterable|object|string.
In the issue above, the returned value is violating the contract defined by the
mentioned interface.
Let's take a look at an example:
interfaceHasName{/** @return string */publicfunctiongetName();}className{public$name;}classUserimplementsHasName{/** @return string|Name */publicfunctiongetName(){returnnewName('foo');// This is a violation of the ``HasName`` interface// which only allows a string value to be returned.}}
Loading history...
44
1
} catch (JsonException $e) {
45
1
throw new MappingException('Error in parsing request: ' . $e->getMessage());
In the issue above, the returned value is violating the contract defined by the mentioned interface.
Let's take a look at an example: