public function testCastOperations()
{
$valueSet = [[1], [0], [true], [false]];
$this->assertRecompilesCorrectly(function ($i) {
return (string) $i;
}, $valueSet);
$this->assertRecompilesCorrectly(function ($i) {
return (bool) $i;
}, $valueSet);
$this->assertRecompilesCorrectly(function ($i) {
return (int) $i;
}, $valueSet);
$this->assertRecompilesCorrectly(function ($i) {
return (array) $i;
}, $valueSet);
$this->assertRecompilesCorrectly(function ($i) {
return (object) $i;
}, $valueSet);
$this->assertRecompilesCorrectly(function ($i) {
return (double) $i;
}, $valueSet);
}