package dns
Library
Module
Module type
Parameter
Class
Class type
Name resource record map
This map uses the resource record map above as value in a domain name map. Common DNS queries and answers have this structure as their value.
type t = Rr_map.t Domain_name.Map.t
The type of a Domain_name map whose values are resource record sets. Observable in the answer and authority sections of a DNS packet.
val empty : t
empty
is the empty map.
equal a b
is true
when a
and b
contain the same keys and values, false
otherwise.
val pp : t Fmt.t
pp ppf t
pretty-prints the name resource record map t
on ppf
.
val add : [ `raw ] Domain_name.t -> 'a Rr_map.key -> 'a -> t -> t
add name rr_typ rr_set map
adds the binding name -> rr_typ, rr_set
to map
, if already present, Rr_map.union_rr
is applied for merging.
val find : [ `raw ] Domain_name.t -> 'a Rr_map.key -> t -> 'a option
find name rr_typ map
returns the rr_set
for name, rr_typ
if present, None
otherwise.
remove_sub map sub
removes all name, rr_key
from map
that are present in sub
. Their values rr_set
are not compared.
val singleton : [ `raw ] Domain_name.t -> 'a Rr_map.key -> 'a -> t
singleton name rr_typ rr_set
constructs a t
with the single entry name, rr_typ
mapped to rr_set
.
union a b
is union of a
and b
, using Rr_map.unionee
.