-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Telnet client and other things -- -- Telnet client and other things @package teleshell @version 0.1.0.0 module Network.Zhone data SystemInfo SystemInfo :: !Text -> {-# UNPACK #-} !Int -> {-# UNPACK #-} !Int -> !Text -> !BootloaderVersion -> !Version -> !Timestamp -> !Version -> SystemInfo [systemInfoModelNumber] :: SystemInfo -> !Text [systemInfoSerialNumber] :: SystemInfo -> {-# UNPACK #-} !Int [systemInfoRegistrationId] :: SystemInfo -> {-# UNPACK #-} !Int [systemInfoFsanNumber] :: SystemInfo -> !Text [systemInfoBootloaderVersion] :: SystemInfo -> !BootloaderVersion [systemInfoFirmwareVersion] :: SystemInfo -> !Version [systemInfoFirmwareVersionTimestamp] :: SystemInfo -> !Timestamp [systemInfoAlternateFirmwareVersion] :: SystemInfo -> !Version data Version VersionCons :: {-# UNPACK #-} !Int -> !Version -> Version VersionNil :: Version data BootloaderVersion BootloaderVersion :: !Version -> !Version -> !Version -> BootloaderVersion data Timestamp Timestamp :: !Int -> !Int -> !Int -> !Int -> !Int -> Timestamp [timestampYear] :: Timestamp -> !Int [timestampMonth] :: Timestamp -> !Int [timestampDay] :: Timestamp -> !Int [timestampHour] :: Timestamp -> !Int [timestampMinute] :: Timestamp -> !Int -- | The word "taggedness" is almost certainly not a real word, but it -- shows up in this patent: -- https://www.google.com/patents/US20080101380 data Taggedness Tagged :: Taggedness Untagged :: Taggedness data Vlan Vlan :: !Int -> !ByteString -> !ByteString -> !ByteString -> !(Vector (Maybe Taggedness)) -> Vlan [vlanNumber] :: Vlan -> !Int [vlanName] :: Vlan -> !ByteString [vlanType] :: Vlan -> !ByteString [vlanSecure] :: Vlan -> !ByteString -- | This is a vector of length 7. The element at each index corresponding -- to the port with that number. For example: 0 is eth0 and 1 is eth1. -- The length invariant is not expressed by the type system. Sorry. [vlanAvailability] :: Vlan -> !(Vector (Maybe Taggedness)) data RateLimit RateLimit :: !ByteString -> !ByteString -> !ByteString -> !Int -> !Int -> !Int -> RateLimit [rateLimitInterfaceName] :: RateLimit -> !ByteString [rateLimitAlias] :: RateLimit -> !ByteString [rateLimitAdminState] :: RateLimit -> !ByteString [rateLimitInboundRateMbps] :: RateLimit -> !Int [rateLimitOutboundRateMbps] :: RateLimit -> !Int [rateLimitBurstSizeKb] :: RateLimit -> !Int decodeVlans :: ByteString -> Maybe (Vector Vlan) decodeRateLimits :: ByteString -> Maybe (Vector RateLimit) decodeSystemInfo :: ByteString -> Maybe SystemInfo instance GHC.Base.Functor (Network.Zhone.ConstaparserST s e) instance GHC.Base.Functor Network.Zhone.Constaparser instance GHC.Classes.Eq Network.Zhone.Vlan instance GHC.Show.Show Network.Zhone.Vlan instance GHC.Classes.Eq Network.Zhone.Taggedness instance GHC.Show.Show Network.Zhone.Taggedness instance GHC.Classes.Eq Network.Zhone.RateLimit instance GHC.Show.Show Network.Zhone.RateLimit instance GHC.Classes.Eq Network.Zhone.SystemInfo instance GHC.Show.Show Network.Zhone.SystemInfo instance GHC.Classes.Eq Network.Zhone.Timestamp instance GHC.Show.Show Network.Zhone.Timestamp instance GHC.Classes.Eq Network.Zhone.BootloaderVersion instance GHC.Show.Show Network.Zhone.BootloaderVersion instance GHC.Classes.Eq Network.Zhone.Version instance GHC.Show.Show Network.Zhone.Version instance GHC.Base.Applicative Network.Zhone.Constaparser instance GHC.Base.Applicative (Network.Zhone.ConstaparserST s e) module Data.ByteString.Substring breakSubstringLazy :: ByteString -> ByteString -> (ByteString, ByteString) prepareBreakSubstring :: ByteString -> ByteString -> KarpRabinState breakSubstringResume :: KarpRabinState -> ByteString -> KarpRabinResult data KarpRabinState data KarpRabinResult -- | The first number is the index into the current chunk. The second -- number is the total number of characters that were consumed. Note that -- since these both refer to the index of the beginning of the match, the -- first one is allowed to be negative, but the second is not. The third -- item is the bytes preceeding the match location. This is provided to -- help streaming providers that may have already discarded the old data. KarpRabinResultDone :: !Int -> !Int64 -> KarpRabinResult KarpRabinResultMore :: !KarpRabinState -> KarpRabinResult module Pipes.ByteString.Substring consumeBreakSubstring :: Monad m => ByteString -> Consumer' ByteString m (Builder, ByteString) consumeBreakSubstringLeftovers :: Monad m => ByteString -> ByteString -> Consumer' ByteString m (Builder, ByteString) -- | If we get back a Left, then the chunks did not match what we expected. -- The tuple contains the number of characters that did match and the -- beginning of the failure to match. If we get back a Right, it has the -- leftovers from the chunk that completed the match. consumeDropExactLeftovers :: Monad m => ByteString -> ByteString -> Consumer' ByteString m (Either (Int, ByteString) ByteString) consumeDropWhileLeftovers :: Monad m => ByteString -> (Char -> Bool) -> Consumer' ByteString m ByteString module Network.Teleshell -- | The socket must already be connected. runSocketPipe :: Socket -> Pipe ByteString ByteString IO () -> IO () -- | The socket must already be connected. runSocketPipeMaybe :: Socket -> Pipe ByteString ByteString (MaybeT IO) a -> IO (Maybe a) -- | The socket must already be connected. runSocketPipeEither :: Socket -> Pipe ByteString ByteString (ExceptT TeleshellError IO) a -> IO (Either TeleshellError a) teleshell :: Monad m => Exchange -> Pipe ByteString ByteString (ExceptT TeleshellError m) ByteString data Exchange Exchange :: !Command -> !ByteString -> Exchange [exchangeCommand] :: Exchange -> !Command [commandPrompt] :: Exchange -> !ByteString data Command CommandLine :: ByteString -> Command CommandHidden :: ByteString -> Command CommandEmpty :: Command instance GHC.Show.Show Network.Teleshell.TeleshellError instance GHC.Show.Show Network.Teleshell.Exchange instance GHC.Show.Show Network.Teleshell.Command