Enum domain::master::entry::Entry[][src]

pub enum Entry {
    Include {
        path: Vec<u8>,
        origin: Option<Rc<DNameBuf>>,
    Control {
        name: Vec<u8>,
        start: Pos,

A master file entry.

Master files consist of a sequence of entries. An entry contains data for a resource record or instructions on how to build resource records from the data.

This enum has variants for each type of master file entries currently defined. It also knows how to scan itself from a scanner via the scan() function.

The variants are defined in seciton 5 of RFC 1035 except where otherwise stated below.


An $ORIGIN control entry.

This entry contains the origin for relative domain names encountered in subsequent entries.

An $INCLUDE control entry.

This entry instructs the parser to insert the content of the given file at this position. The path attribute specifies the path to the file. The interpretation of the contents of this attribute is system dependent. The optional origin attribute contains the initial value of the origin of relative domain names when including the file.

Fields of Include

A $TTL control entry.

This entry specifies the value of the TTL field for all subsequent records that do not have it explicitely stated.

This entry is defined in section 4 of RFC 2308.

Some other control entry.

Any other entry starting with a dollar sign is a control entry we do not understand. This variant contains the name of the entry in the name attribute and its starting position in start. This can be used to produce a meaningful warning or error message.

Fields of Control

A resource record.

A blank entry.


impl Entry

Scans an entry from a scanner.

The four additional arguments contain the state of scanning for entries.

The last_owner contains the domain name of the last record entry unless this is the first entry. This is used for the owner field if a record entry starts with blanks. The last_class is the class of the last resource record and is used if a class value is missing from a record entry. The origin argument is used for any relative names given in a record entry. The default_ttl value is used if a TTL value is missing from a record entry.

If successful, the function returns some entry or None if it encountered an end of file before an entry even started.

Trait Implementations

impl Clone for Entry

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl Debug for Entry

Formats the value using the given formatter. Read more

Auto Trait Implementations

impl !Send for Entry

impl !Sync for Entry