[][src]Struct trust_dns_proto::op::query::Query

pub struct Query { /* fields omitted */ }

Query struct for looking up resource records, basically a resource record without RDATA.

RFC 1035, DOMAIN NAMES - IMPLEMENTATION AND SPECIFICATION, November 1987

4.1.2. Question section format

The question section is used to carry the "question" in most queries,
i.e., the parameters that define what is being asked.  The section
contains QDCOUNT (usually 1) entries, each of the following format:

                                    1  1  1  1  1  1
      0  1  2  3  4  5  6  7  8  9  0  1  2  3  4  5
    +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
    |                                               |
    /                     QNAME / ZNAME             /
    /                                               /
    +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
    |                     QTYPE / ZTYPE             |
    +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
    |                     QCLASS / ZCLASS           |
    +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+

Methods

impl Query[src]

pub fn new() -> Self[src]

Return a default query with an empty name and A, IN for the query_type and query_class

pub fn query(name: Name, query_type: RecordType) -> Self[src]

Create a new query from name and type, class defaults to IN

pub fn set_name(&mut self, name: Name) -> &mut Self[src]

replaces name with the new name

pub fn set_query_type(&mut self, query_type: RecordType) -> &mut Self[src]

Specify the RecordType being queried

pub fn set_query_class(&mut self, query_class: DNSClass) -> &mut Self[src]

Specify÷ the DNS class of the Query, almost always IN

pub fn name(&self) -> &Name[src]

QNAME           a domain name represented as a sequence of labels, where
                each label consists of a length octet followed by that
                number of octets.  The domain name terminates with the
                zero length octet for the null label of the root.  Note
                that this field may be an odd number of octets; no
                padding is used.

pub fn query_type(&self) -> RecordType[src]

QTYPE           a two octet code which specifies the type of the query.
                The values for this field include all codes valid for a
                TYPE field, together with some more general codes which
                can match more than one type of RR.

pub fn query_class(&self) -> DNSClass[src]

QCLASS          a two octet code that specifies the class of the query.
                For example, the QCLASS field is IN for the Internet.

Trait Implementations

impl BinEncodable for Query[src]

fn to_bytes(&self) -> ProtoResult<Vec<u8>>[src]

Returns the object in binary form

impl<'r> BinDecodable<'r> for Query[src]

fn from_bytes(bytes: &'r [u8]) -> ProtoResult<Self>[src]

Returns the object in binary form

impl Clone for Query[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Default for Query[src]

fn default() -> Self[src]

Return a default query with an empty name and A, IN for the query_type and query_class

impl PartialEq<Query> for Query[src]

impl Eq for Query[src]

impl Display for Query[src]

impl Debug for Query[src]

impl Hash for Query[src]

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0[src]

Feeds a slice of this type into the given [Hasher]. Read more

Auto Trait Implementations

impl Send for Query

impl Sync for Query

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Erased for T