, mkDomainName
, mkDN
+ , rootName
+ , isRootName
+ , consLabel
+ , unconsLabel
+ , nameToLabels
, isZoneOf
, wrapQuestion
unconsLabel (DN (x:xs)) = (x, DN xs)
unconsLabel x = error ("Illegal use of unconsLabel: " ++ show x)
+nameToLabels :: DomainName -> [DomainLabel]
+nameToLabels (DN xs) = xs
+
isZoneOf :: DomainName -> DomainName -> Bool
isZoneOf (DN a) (DN b) = a `isSuffixOf` b