Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
The abstract data type to express an IPv4 address.
To create this, use
toIPv4
. Or use
read
"192.0.2.1"
::
IPv4
, for example. Also,
"192.0.2.1"
can be used as literal with OverloadedStrings.
>>>
read "192.0.2.1" :: IPv4
192.0.2.1
Instances
Bounded IPv4 Source # | |
Enum IPv4 Source # | |
Eq IPv4 Source # | |
Data IPv4 Source # | |
Defined in Data.IP.Addr gfoldl :: ( forall d b. Data d => c (d -> b) -> d -> c b) -> ( forall g. g -> c g) -> IPv4 -> c IPv4 Source # gunfold :: ( forall b r. Data b => c (b -> r) -> c r) -> ( forall r. r -> c r) -> Constr -> c IPv4 Source # toConstr :: IPv4 -> Constr Source # dataTypeOf :: IPv4 -> DataType Source # dataCast1 :: Typeable t => ( forall d. Data d => c (t d)) -> Maybe (c IPv4 ) Source # dataCast2 :: Typeable t => ( forall d e. ( Data d, Data e) => c (t d e)) -> Maybe (c IPv4 ) Source # gmapT :: ( forall b. Data b => b -> b) -> IPv4 -> IPv4 Source # gmapQl :: (r -> r' -> r) -> r -> ( forall d. Data d => d -> r') -> IPv4 -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> ( forall d. Data d => d -> r') -> IPv4 -> r Source # gmapQ :: ( forall d. Data d => d -> u) -> IPv4 -> [u] Source # gmapQi :: Int -> ( forall d. Data d => d -> u) -> IPv4 -> u Source # gmapM :: Monad m => ( forall d. Data d => d -> m d) -> IPv4 -> m IPv4 Source # gmapMp :: MonadPlus m => ( forall d. Data d => d -> m d) -> IPv4 -> m IPv4 Source # gmapMo :: MonadPlus m => ( forall d. Data d => d -> m d) -> IPv4 -> m IPv4 Source # |
|
Ord IPv4 Source # | |
Read IPv4 Source # | |
Show IPv4 Source # | |
IsString IPv4 Source # | |
Defined in Data.IP.Addr fromString :: String -> IPv4 Source # |
|
Generic IPv4 Source # | |
Addr IPv4 Source # | |
Routable IPv4 Source # | |
Read ( AddrRange IPv4 ) Source # | |
IsString ( AddrRange IPv4 ) Source # | |
Defined in Data.IP.Range |
|
type Rep IPv4 Source # | |
Defined in Data.IP.Addr |
The abstract data type to express an IPv6 address.
To create this, use
toIPv6
. Or use
read
"2001:DB8::1"
::
IPv6
, for example. Also,
"2001:DB8::1"
can be used as literal with OverloadedStrings.
>>>
read "2001:db8:00:00:00:00:00:01" :: IPv6
2001:db8::1>>>
read "2001:db8:11e:c00::101" :: IPv6
2001:db8:11e:c00::101>>>
read "2001:db8:11e:c00:aa:bb:192.0.2.1" :: IPv6
2001:db8:11e:c00:aa:bb:c000:201>>>
read "2001:db8::192.0.2.1" :: IPv6
2001:db8::c000:201>>>
read "0::ffff:192.0.2.1" :: IPv6
::ffff:192.0.2.1>>>
read "0::0:c000:201" :: IPv6
::192.0.2.1>>>
read "::0.0.0.1" :: IPv6
::1
Instances
Bounded IPv6 Source # | |
Enum IPv6 Source # | |
Eq IPv6 Source # | |
Data IPv6 Source # | |
Defined in Data.IP.Addr gfoldl :: ( forall d b. Data d => c (d -> b) -> d -> c b) -> ( forall g. g -> c g) -> IPv6 -> c IPv6 Source # gunfold :: ( forall b r. Data b => c (b -> r) -> c r) -> ( forall r. r -> c r) -> Constr -> c IPv6 Source # toConstr :: IPv6 -> Constr Source # dataTypeOf :: IPv6 -> DataType Source # dataCast1 :: Typeable t => ( forall d. Data d => c (t d)) -> Maybe (c IPv6 ) Source # dataCast2 :: Typeable t => ( forall d e. ( Data d, Data e) => c (t d e)) -> Maybe (c IPv6 ) Source # gmapT :: ( forall b. Data b => b -> b) -> IPv6 -> IPv6 Source # gmapQl :: (r -> r' -> r) -> r -> ( forall d. Data d => d -> r') -> IPv6 -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> ( forall d. Data d => d -> r') -> IPv6 -> r Source # gmapQ :: ( forall d. Data d => d -> u) -> IPv6 -> [u] Source # gmapQi :: Int -> ( forall d. Data d => d -> u) -> IPv6 -> u Source # gmapM :: Monad m => ( forall d. Data d => d -> m d) -> IPv6 -> m IPv6 Source # gmapMp :: MonadPlus m => ( forall d. Data d => d -> m d) -> IPv6 -> m IPv6 Source # gmapMo :: MonadPlus m => ( forall d. Data d => d -> m d) -> IPv6 -> m IPv6 Source # |
|
Ord IPv6 Source # | |
Read IPv6 Source # | |
Show IPv6 Source # | |
IsString IPv6 Source # | |
Defined in Data.IP.Addr fromString :: String -> IPv6 Source # |
|
Generic IPv6 Source # | |
Addr IPv6 Source # | |
Routable IPv6 Source # | |
Read ( AddrRange IPv6 ) Source # | |
IsString ( AddrRange IPv6 ) Source # | |
Defined in Data.IP.Range |
|
type Rep IPv6 Source # | |
Defined in Data.IP.Addr |
The Addr range consists of an address, a contiguous mask, and mask length. The contiguous mask and the mask length are essentially same information but contained for pre calculation.
To create this, use
makeAddrRange
or
read
"192.0.2.0/24"
::
AddrRange
IPv4
.
Also,
"192.0.2.0/24"
can be used as literal with OverloadedStrings.
>>>
read "192.0.2.1/24" :: AddrRange IPv4
192.0.2.0/24>>>
read "2001:db8:00:00:00:00:00:01/48" :: AddrRange IPv6
2001:db8::/48
Instances
Eq a => Eq ( AddrRange a) Source # | |
Data a => Data ( AddrRange a) Source # | |
Defined in Data.IP.Range gfoldl :: ( forall d b. Data d => c (d -> b) -> d -> c b) -> ( forall g. g -> c g) -> AddrRange a -> c ( AddrRange a) Source # gunfold :: ( forall b r. Data b => c (b -> r) -> c r) -> ( forall r. r -> c r) -> Constr -> c ( AddrRange a) Source # toConstr :: AddrRange a -> Constr Source # dataTypeOf :: AddrRange a -> DataType Source # dataCast1 :: Typeable t => ( forall d. Data d => c (t d)) -> Maybe (c ( AddrRange a)) Source # dataCast2 :: Typeable t => ( forall d e. ( Data d, Data e) => c (t d e)) -> Maybe (c ( AddrRange a)) Source # gmapT :: ( forall b. Data b => b -> b) -> AddrRange a -> AddrRange a Source # gmapQl :: (r -> r' -> r) -> r -> ( forall d. Data d => d -> r') -> AddrRange a -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> ( forall d. Data d => d -> r') -> AddrRange a -> r Source # gmapQ :: ( forall d. Data d => d -> u) -> AddrRange a -> [u] Source # gmapQi :: Int -> ( forall d. Data d => d -> u) -> AddrRange a -> u Source # gmapM :: Monad m => ( forall d. Data d => d -> m d) -> AddrRange a -> m ( AddrRange a) Source # gmapMp :: MonadPlus m => ( forall d. Data d => d -> m d) -> AddrRange a -> m ( AddrRange a) Source # gmapMo :: MonadPlus m => ( forall d. Data d => d -> m d) -> AddrRange a -> m ( AddrRange a) Source # |
|
Ord a => Ord ( AddrRange a) Source # | |
Defined in Data.IP.Range compare :: AddrRange a -> AddrRange a -> Ordering Source # (<) :: AddrRange a -> AddrRange a -> Bool Source # (<=) :: AddrRange a -> AddrRange a -> Bool Source # (>) :: AddrRange a -> AddrRange a -> Bool Source # (>=) :: AddrRange a -> AddrRange a -> Bool Source # |
|
Read ( AddrRange IPv6 ) Source # | |
Read ( AddrRange IPv4 ) Source # | |
Show a => Show ( AddrRange a) Source # | |
IsString ( AddrRange IPv6 ) Source # | |
Defined in Data.IP.Range |
|
IsString ( AddrRange IPv4 ) Source # | |
Defined in Data.IP.Range |
|
Generic ( AddrRange a) Source # | |
type Rep ( AddrRange a) Source # | |
Defined in Data.IP.Range
type
Rep
(
AddrRange
a) =
D1
('
MetaData
"AddrRange" "Data.IP.Range" "iproute-1.7.12-7531Frr8UW3EGpk43IP3fV" '
False
) (
C1
('
MetaCons
"AddrRange" '
PrefixI
'
True
) (
S1
('
MetaSel
('
Just
"addr") '
NoSourceUnpackedness
'
SourceStrict
'
DecidedStrict
) (
Rec0
a)
:*:
(
S1
('
MetaSel
('
Just
"mask") '
NoSourceUnpackedness
'
SourceStrict
'
DecidedStrict
) (
Rec0
a)
:*:
S1
('
MetaSel
('
Just
"mlen") '
SourceUnpack
'
SourceStrict
'
DecidedStrict
) (
Rec0
Int
))))
|