def ex_update_ptr_record(self, record, domain=None, extra=None):
        """
        Update a PTR record for a specific IP on a specific device.

        If you need to change the domain or ttl, use this API to
        update the record by deleting the old one and creating a new one.

        :param record: the original :class:`RackspacePTRRecord`
        :param domain: the fqdn you want that IP to represent
        :param extra: a ``dict`` with optional extra values:
            ttl - the time-to-live of the PTR record
        :rtype: instance of :class:`RackspacePTRRecord`
        """
        if domain is not None and domain == record.domain:
            domain = None

        if extra is not None:
            extra = dict(extra)
            for key in extra:
                if record.extra in key and record.extra[key] == extra[key]:
                    del extra[key]

        if domain is None and not extra:
            # nothing to do, it already matches
            return record

        _check_ptr_extra_fields(record)
        ip = record.ip

        self.ex_delete_ptr_record(record)
        # records have the same metadata in 'extra' as the original device
        # so you can pass the original record object in instead
        return self.ex_create_ptr_record(record, ip, domain, extra=extra)
dataset/ETHPy150Open apache/libcloud/libcloud/dns/drivers/rackspace.py/RackspaceDNSDriver.ex_update_ptr_record/swapped operands of `in`