---
name: "Zonemaster::LDNS::RR"
section: "3pm"
platform: "linux"
package: "libzonemaster-ldns-perl"
version: "4.1.0+ds-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Zonemaster::LDNS::RR"
---

# Zonemaster::LDNS::RR(3pm)

common baseclass for all classes representing resource records.

## NAME

Zonemaster::LDNS::RR - common baseclass for all classes representing resource records.

## SYNOPSIS

```
    my $rr = Zonemaster::LDNS::RR->new('www.iis.se IN A 91.226.36.46');
```

## OVERLOADS

This class overloads stringify and comparisons ('""', '\<=\>' and 'cmp').

## CLASS METHOD

- new($string)

  Creates a new RR object of a suitable subclass, given a string representing an RR in common presentation format.

## INSTANCE METHODS

- **owner()**

  Returns the owner name of the RR.

- **name()**

  An alias of **owner()**.

- **ttl()**

  Returns the ttl of the RR.

- **type()**

  Return the type of the RR.

- **class()**

  Returns the class of the RR.

- **string()**

  Returns a string with the RR in presentation format.

- compare($other)

  Compares two Zonemaster::LDNS::RR. The TTL field is ignored, and the comparison of domain names is case insensitive.

  Returns an integer, where 0 indicates equality.

- do\_compare($other)

  Calls the XS `"compare"` method with the arguments it needs, rather than the ones overloading gives.

- to\_string

  Calls the XS `"string"` method with the arguments it needs, rather than the ones overloading gives. Functionally identical to **string()** from the Perl level, except for being a tiny little bit slower.

- **rd\_count()**

  The number of RDATA objects in this RR.

- rdf($postion)

  The raw data of the RDATA object in the given position. The first item is in position 0. If an attempt is made to fetch RDATA from a position that doesn't have any, an exception will be thrown.
