1{-| 2 Data structures to express IPv4, IPv6 and IP range. 3-} 4module Data.IP ( 5 -- * IP data 6 IP (..) 7 -- ** IPv4 8 , IPv4 9 , toIPv4, toIPv4w 10 , fromIPv4, fromIPv4w 11 , fromHostAddress, toHostAddress 12 -- ** IPv6 13 , IPv6 14 , toIPv6, toIPv6b, toIPv6w 15 , fromIPv6, fromIPv6b, fromIPv6w 16 , fromHostAddress6, toHostAddress6 17 -- ** Converters 18 , ipv4ToIPv6 19 , fromSockAddr 20 , toSockAddr 21 -- * IP range data 22 , IPRange (..) 23 , AddrRange (addr, mask, mlen) 24 -- * Address class 25 , Addr (..) 26 , makeAddrRange, (>:>), isMatchedTo, addrRangePair 27 , ipv4RangeToIPv6 28 ) where 29 30import Data.IP.Addr 31import Data.IP.Op 32import Data.IP.Range 33