module Net.DNSBase.Internal.RRCLASS
( RRCLASS( ..
, IN
, CS
, CHAOS
, HESIOD
, NONE
, ANYCLASS
)
) where
import Net.DNSBase.Internal.Present
import Net.DNSBase.Internal.Util
newtype RRCLASS = RRCLASS Word16
deriving newtype (RRCLASS -> RRCLASS -> Bool
(RRCLASS -> RRCLASS -> Bool)
-> (RRCLASS -> RRCLASS -> Bool) -> Eq RRCLASS
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: RRCLASS -> RRCLASS -> Bool
== :: RRCLASS -> RRCLASS -> Bool
$c/= :: RRCLASS -> RRCLASS -> Bool
/= :: RRCLASS -> RRCLASS -> Bool
Eq, Eq RRCLASS
Eq RRCLASS =>
(RRCLASS -> RRCLASS -> Ordering)
-> (RRCLASS -> RRCLASS -> Bool)
-> (RRCLASS -> RRCLASS -> Bool)
-> (RRCLASS -> RRCLASS -> Bool)
-> (RRCLASS -> RRCLASS -> Bool)
-> (RRCLASS -> RRCLASS -> RRCLASS)
-> (RRCLASS -> RRCLASS -> RRCLASS)
-> Ord RRCLASS
RRCLASS -> RRCLASS -> Bool
RRCLASS -> RRCLASS -> Ordering
RRCLASS -> RRCLASS -> RRCLASS
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: RRCLASS -> RRCLASS -> Ordering
compare :: RRCLASS -> RRCLASS -> Ordering
$c< :: RRCLASS -> RRCLASS -> Bool
< :: RRCLASS -> RRCLASS -> Bool
$c<= :: RRCLASS -> RRCLASS -> Bool
<= :: RRCLASS -> RRCLASS -> Bool
$c> :: RRCLASS -> RRCLASS -> Bool
> :: RRCLASS -> RRCLASS -> Bool
$c>= :: RRCLASS -> RRCLASS -> Bool
>= :: RRCLASS -> RRCLASS -> Bool
$cmax :: RRCLASS -> RRCLASS -> RRCLASS
max :: RRCLASS -> RRCLASS -> RRCLASS
$cmin :: RRCLASS -> RRCLASS -> RRCLASS
min :: RRCLASS -> RRCLASS -> RRCLASS
Ord, Int -> RRCLASS
RRCLASS -> Int
RRCLASS -> [RRCLASS]
RRCLASS -> RRCLASS
RRCLASS -> RRCLASS -> [RRCLASS]
RRCLASS -> RRCLASS -> RRCLASS -> [RRCLASS]
(RRCLASS -> RRCLASS)
-> (RRCLASS -> RRCLASS)
-> (Int -> RRCLASS)
-> (RRCLASS -> Int)
-> (RRCLASS -> [RRCLASS])
-> (RRCLASS -> RRCLASS -> [RRCLASS])
-> (RRCLASS -> RRCLASS -> [RRCLASS])
-> (RRCLASS -> RRCLASS -> RRCLASS -> [RRCLASS])
-> Enum RRCLASS
forall a.
(a -> a)
-> (a -> a)
-> (Int -> a)
-> (a -> Int)
-> (a -> [a])
-> (a -> a -> [a])
-> (a -> a -> [a])
-> (a -> a -> a -> [a])
-> Enum a
$csucc :: RRCLASS -> RRCLASS
succ :: RRCLASS -> RRCLASS
$cpred :: RRCLASS -> RRCLASS
pred :: RRCLASS -> RRCLASS
$ctoEnum :: Int -> RRCLASS
toEnum :: Int -> RRCLASS
$cfromEnum :: RRCLASS -> Int
fromEnum :: RRCLASS -> Int
$cenumFrom :: RRCLASS -> [RRCLASS]
enumFrom :: RRCLASS -> [RRCLASS]
$cenumFromThen :: RRCLASS -> RRCLASS -> [RRCLASS]
enumFromThen :: RRCLASS -> RRCLASS -> [RRCLASS]
$cenumFromTo :: RRCLASS -> RRCLASS -> [RRCLASS]
enumFromTo :: RRCLASS -> RRCLASS -> [RRCLASS]
$cenumFromThenTo :: RRCLASS -> RRCLASS -> RRCLASS -> [RRCLASS]
enumFromThenTo :: RRCLASS -> RRCLASS -> RRCLASS -> [RRCLASS]
Enum, RRCLASS
RRCLASS -> RRCLASS -> Bounded RRCLASS
forall a. a -> a -> Bounded a
$cminBound :: RRCLASS
minBound :: RRCLASS
$cmaxBound :: RRCLASS
maxBound :: RRCLASS
Bounded, Integer -> RRCLASS
RRCLASS -> RRCLASS
RRCLASS -> RRCLASS -> RRCLASS
(RRCLASS -> RRCLASS -> RRCLASS)
-> (RRCLASS -> RRCLASS -> RRCLASS)
-> (RRCLASS -> RRCLASS -> RRCLASS)
-> (RRCLASS -> RRCLASS)
-> (RRCLASS -> RRCLASS)
-> (RRCLASS -> RRCLASS)
-> (Integer -> RRCLASS)
-> Num RRCLASS
forall a.
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> a)
-> (a -> a)
-> (Integer -> a)
-> Num a
$c+ :: RRCLASS -> RRCLASS -> RRCLASS
+ :: RRCLASS -> RRCLASS -> RRCLASS
$c- :: RRCLASS -> RRCLASS -> RRCLASS
- :: RRCLASS -> RRCLASS -> RRCLASS
$c* :: RRCLASS -> RRCLASS -> RRCLASS
* :: RRCLASS -> RRCLASS -> RRCLASS
$cnegate :: RRCLASS -> RRCLASS
negate :: RRCLASS -> RRCLASS
$cabs :: RRCLASS -> RRCLASS
abs :: RRCLASS -> RRCLASS
$csignum :: RRCLASS -> RRCLASS
signum :: RRCLASS -> RRCLASS
$cfromInteger :: Integer -> RRCLASS
fromInteger :: Integer -> RRCLASS
Num, Num RRCLASS
Ord RRCLASS
(Num RRCLASS, Ord RRCLASS) => (RRCLASS -> Rational) -> Real RRCLASS
RRCLASS -> Rational
forall a. (Num a, Ord a) => (a -> Rational) -> Real a
$ctoRational :: RRCLASS -> Rational
toRational :: RRCLASS -> Rational
Real, Enum RRCLASS
Real RRCLASS
(Real RRCLASS, Enum RRCLASS) =>
(RRCLASS -> RRCLASS -> RRCLASS)
-> (RRCLASS -> RRCLASS -> RRCLASS)
-> (RRCLASS -> RRCLASS -> RRCLASS)
-> (RRCLASS -> RRCLASS -> RRCLASS)
-> (RRCLASS -> RRCLASS -> (RRCLASS, RRCLASS))
-> (RRCLASS -> RRCLASS -> (RRCLASS, RRCLASS))
-> (RRCLASS -> Integer)
-> Integral RRCLASS
RRCLASS -> Integer
RRCLASS -> RRCLASS -> (RRCLASS, RRCLASS)
RRCLASS -> RRCLASS -> RRCLASS
forall a.
(Real a, Enum a) =>
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> (a, a))
-> (a -> a -> (a, a))
-> (a -> Integer)
-> Integral a
$cquot :: RRCLASS -> RRCLASS -> RRCLASS
quot :: RRCLASS -> RRCLASS -> RRCLASS
$crem :: RRCLASS -> RRCLASS -> RRCLASS
rem :: RRCLASS -> RRCLASS -> RRCLASS
$cdiv :: RRCLASS -> RRCLASS -> RRCLASS
div :: RRCLASS -> RRCLASS -> RRCLASS
$cmod :: RRCLASS -> RRCLASS -> RRCLASS
mod :: RRCLASS -> RRCLASS -> RRCLASS
$cquotRem :: RRCLASS -> RRCLASS -> (RRCLASS, RRCLASS)
quotRem :: RRCLASS -> RRCLASS -> (RRCLASS, RRCLASS)
$cdivMod :: RRCLASS -> RRCLASS -> (RRCLASS, RRCLASS)
divMod :: RRCLASS -> RRCLASS -> (RRCLASS, RRCLASS)
$ctoInteger :: RRCLASS -> Integer
toInteger :: RRCLASS -> Integer
Integral, Int -> RRCLASS -> ShowS
[RRCLASS] -> ShowS
RRCLASS -> String
(Int -> RRCLASS -> ShowS)
-> (RRCLASS -> String) -> ([RRCLASS] -> ShowS) -> Show RRCLASS
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> RRCLASS -> ShowS
showsPrec :: Int -> RRCLASS -> ShowS
$cshow :: RRCLASS -> String
show :: RRCLASS -> String
$cshowList :: [RRCLASS] -> ShowS
showList :: [RRCLASS] -> ShowS
Show, ReadPrec [RRCLASS]
ReadPrec RRCLASS
Int -> ReadS RRCLASS
ReadS [RRCLASS]
(Int -> ReadS RRCLASS)
-> ReadS [RRCLASS]
-> ReadPrec RRCLASS
-> ReadPrec [RRCLASS]
-> Read RRCLASS
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
$creadsPrec :: Int -> ReadS RRCLASS
readsPrec :: Int -> ReadS RRCLASS
$creadList :: ReadS [RRCLASS]
readList :: ReadS [RRCLASS]
$creadPrec :: ReadPrec RRCLASS
readPrec :: ReadPrec RRCLASS
$creadListPrec :: ReadPrec [RRCLASS]
readListPrec :: ReadPrec [RRCLASS]
Read)
instance Presentable RRCLASS where
present :: RRCLASS -> Builder -> Builder
present RRCLASS
IN = forall a. Presentable a => a -> Builder -> Builder
present @String String
"IN"
present RRCLASS
CS = forall a. Presentable a => a -> Builder -> Builder
present @String String
"CS"
present RRCLASS
CHAOS = forall a. Presentable a => a -> Builder -> Builder
present @String String
"CHAOS"
present RRCLASS
HESIOD = forall a. Presentable a => a -> Builder -> Builder
present @String String
"HESIOD"
present RRCLASS
NONE = forall a. Presentable a => a -> Builder -> Builder
present @String String
"NONE"
present RRCLASS
ANYCLASS = forall a. Presentable a => a -> Builder -> Builder
present @String String
"*"
present RRCLASS
c = forall a. Presentable a => a -> Builder -> Builder
present @String String
"CLASS" (Builder -> Builder) -> (Builder -> Builder) -> Builder -> Builder
forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Presentable a => a -> Builder -> Builder
present @Word16 (RRCLASS -> Word16
forall a b. Coercible a b => a -> b
coerce RRCLASS
c)
pattern IN :: RRCLASS; pattern $mIN :: forall {r}. RRCLASS -> ((# #) -> r) -> ((# #) -> r) -> r
$bIN :: RRCLASS
IN = RRCLASS 1
pattern CS :: RRCLASS; pattern $mCS :: forall {r}. RRCLASS -> ((# #) -> r) -> ((# #) -> r) -> r
$bCS :: RRCLASS
CS = RRCLASS 2
pattern CHAOS :: RRCLASS; pattern $mCHAOS :: forall {r}. RRCLASS -> ((# #) -> r) -> ((# #) -> r) -> r
$bCHAOS :: RRCLASS
CHAOS = RRCLASS 3
pattern HESIOD :: RRCLASS; pattern $mHESIOD :: forall {r}. RRCLASS -> ((# #) -> r) -> ((# #) -> r) -> r
$bHESIOD :: RRCLASS
HESIOD = RRCLASS 4
pattern NONE :: RRCLASS; pattern $mNONE :: forall {r}. RRCLASS -> ((# #) -> r) -> ((# #) -> r) -> r
$bNONE :: RRCLASS
NONE = RRCLASS 254
pattern ANYCLASS :: RRCLASS; pattern $mANYCLASS :: forall {r}. RRCLASS -> ((# #) -> r) -> ((# #) -> r) -> r
$bANYCLASS :: RRCLASS
ANYCLASS = RRCLASS 255