planet-mitchell-0.1.0: Planet Mitchell

Safe HaskellSafe
LanguageHaskell2010

System

Contents

Synopsis

System info

data ByteOrder #

Byte ordering.

Constructors

BigEndian

most-significant-byte occurs in lowest address.

LittleEndian

least-significant-byte occurs in lowest address.

targetByteOrder :: ByteOrder #

The byte ordering of the target machine.

os :: String #

The operating system on which the program is running.

isWindows :: Bool #

Return True on Windows and False otherwise. A runtime version of #ifdef minw32_HOST_OS. Equivalent to os == "mingw32", but: more efficient; doesn't require typing an easily mistypeable string; actually asks about your OS not a library; doesn't bake in 32bit assumptions that are already false. </rant>

isWindows == (os == "mingw32")

isMac :: Bool #

Return True on Mac OS X and False otherwise.

arch :: String #

The machine architecture on which the program is running.

compilerName :: String #

The Haskell implementation with which the program was compiled or is being interpreted.

compilerVersion :: Version #

The version of compilerName with which the program was compiled or is being interpreted.

Network info

getNetworkInterfaces :: IO [NetworkInterface] #

Gets the address information for each of the network interfaces on the local computer.

data NetworkInterface #

Describes the basic configuration of a network interface. This definition is currently limited to just one address per family.

Constructors

NetworkInterface 

Fields

data IPv4 #

Represents an IPv4 address (e.g. 172.23.21.1, 127.0.0.1)

Constructors

IPv4 !Word32 
Instances
Bounded IPv4 
Instance details

Defined in Network.Info

Eq IPv4 
Instance details

Defined in Network.Info

Methods

(==) :: IPv4 -> IPv4 -> Bool #

(/=) :: IPv4 -> IPv4 -> Bool #

Ord IPv4 
Instance details

Defined in Network.Info

Methods

compare :: IPv4 -> IPv4 -> Ordering #

(<) :: IPv4 -> IPv4 -> Bool #

(<=) :: IPv4 -> IPv4 -> Bool #

(>) :: IPv4 -> IPv4 -> Bool #

(>=) :: IPv4 -> IPv4 -> Bool #

max :: IPv4 -> IPv4 -> IPv4 #

min :: IPv4 -> IPv4 -> IPv4 #

Show IPv4 
Instance details

Defined in Network.Info

Methods

showsPrec :: Int -> IPv4 -> ShowS #

show :: IPv4 -> String #

showList :: [IPv4] -> ShowS #

Storable IPv4 
Instance details

Defined in Network.Info

Methods

sizeOf :: IPv4 -> Int #

alignment :: IPv4 -> Int #

peekElemOff :: Ptr IPv4 -> Int -> IO IPv4 #

pokeElemOff :: Ptr IPv4 -> Int -> IPv4 -> IO () #

peekByteOff :: Ptr b -> Int -> IO IPv4 #

pokeByteOff :: Ptr b -> Int -> IPv4 -> IO () #

peek :: Ptr IPv4 -> IO IPv4 #

poke :: Ptr IPv4 -> IPv4 -> IO () #

data IPv6 #

Represents an IPv6 address (e.g. 2001:db8:85a3::8a2e:370:7334, ::1)

Constructors

IPv6 !Word32 !Word32 !Word32 !Word32 
Instances
Bounded IPv6 
Instance details

Defined in Network.Info

Eq IPv6 
Instance details

Defined in Network.Info

Methods

(==) :: IPv6 -> IPv6 -> Bool #

(/=) :: IPv6 -> IPv6 -> Bool #

Ord IPv6 
Instance details

Defined in Network.Info

Methods

compare :: IPv6 -> IPv6 -> Ordering #

(<) :: IPv6 -> IPv6 -> Bool #

(<=) :: IPv6 -> IPv6 -> Bool #

(>) :: IPv6 -> IPv6 -> Bool #

(>=) :: IPv6 -> IPv6 -> Bool #

max :: IPv6 -> IPv6 -> IPv6 #

min :: IPv6 -> IPv6 -> IPv6 #

Show IPv6

Not yet capable of collapsing groups of zeros, will still generate valid addresses however.

Instance details

Defined in Network.Info

Methods

showsPrec :: Int -> IPv6 -> ShowS #

show :: IPv6 -> String #

showList :: [IPv6] -> ShowS #

Storable IPv6 
Instance details

Defined in Network.Info

Methods

sizeOf :: IPv6 -> Int #

alignment :: IPv6 -> Int #

peekElemOff :: Ptr IPv6 -> Int -> IO IPv6 #

pokeElemOff :: Ptr IPv6 -> Int -> IPv6 -> IO () #

peekByteOff :: Ptr b -> Int -> IO IPv6 #

pokeByteOff :: Ptr b -> Int -> IPv6 -> IO () #

peek :: Ptr IPv6 -> IO IPv6 #

poke :: Ptr IPv6 -> IPv6 -> IO () #

data MAC #

Represents a MAC address (e.g. 01:23:45:67:89:ab)

Constructors

MAC !Word8 !Word8 !Word8 !Word8 !Word8 !Word8 
Instances
Bounded MAC 
Instance details

Defined in Network.Info

Methods

minBound :: MAC #

maxBound :: MAC #

Eq MAC 
Instance details

Defined in Network.Info

Methods

(==) :: MAC -> MAC -> Bool #

(/=) :: MAC -> MAC -> Bool #

Ord MAC 
Instance details

Defined in Network.Info

Methods

compare :: MAC -> MAC -> Ordering #

(<) :: MAC -> MAC -> Bool #

(<=) :: MAC -> MAC -> Bool #

(>) :: MAC -> MAC -> Bool #

(>=) :: MAC -> MAC -> Bool #

max :: MAC -> MAC -> MAC #

min :: MAC -> MAC -> MAC #

Show MAC 
Instance details

Defined in Network.Info

Methods

showsPrec :: Int -> MAC -> ShowS #

show :: MAC -> String #

showList :: [MAC] -> ShowS #

Storable MAC 
Instance details

Defined in Network.Info

Methods

sizeOf :: MAC -> Int #

alignment :: MAC -> Int #

peekElemOff :: Ptr MAC -> Int -> IO MAC #

pokeElemOff :: Ptr MAC -> Int -> MAC -> IO () #

peekByteOff :: Ptr b -> Int -> IO MAC #

pokeByteOff :: Ptr b -> Int -> MAC -> IO () #

peek :: Ptr MAC -> IO MAC #

poke :: Ptr MAC -> MAC -> IO () #