public function visitObjectType(ObjectType $type)
    {
        $this->typeCheck->visitObjectType(func_get_args());

        if (null === $type->ofType()) {
            $call = new Call(QualifiedIdentifier::fromString('\is_object'));
            $call->add($this->valueExpression());

            return $call;
        }

        return new InstanceOfType(
            $this->valueExpression(),
            QualifiedIdentifier::fromString($type->ofType()->string())
        );
    }
public function visitObjectType(ObjectType $type)
    {
        $this->typeCheck->visitObjectType(func_get_args());

        if (null === $type->ofType()) {
            $call = new Call(QualifiedIdentifier::fromString('\is_object'));
            $call->add($this->valueExpression());

            return $call;
        }

        return new InstanceOfType(
            $this->valueExpression(),
            QualifiedIdentifier::fromString($type->ofType()->string())
        );
    }
@param ObjectType $type

@return Call|InstanceOfType