toxcore-0.2.12: A Tox protocol implementation in Haskell
Safe HaskellSafe-Inferred
LanguageHaskell2010

Tox.Network.Core.Packet

Documentation

data Packet payload Source #

Constructors

Packet 

Fields

Instances

Instances details
Functor Packet Source # 
Instance details

Defined in Tox.Network.Core.Packet

Methods

fmap :: (a -> b) -> Packet a -> Packet b #

(<$) :: a -> Packet b -> Packet a #

Eq payload => Eq (Packet payload) Source # 
Instance details

Defined in Tox.Network.Core.Packet

Methods

(==) :: Packet payload -> Packet payload -> Bool #

(/=) :: Packet payload -> Packet payload -> Bool #

Read payload => Read (Packet payload) Source # 
Instance details

Defined in Tox.Network.Core.Packet

Methods

readsPrec :: Int -> ReadS (Packet payload) #

readList :: ReadS [Packet payload] #

readPrec :: ReadPrec (Packet payload) #

readListPrec :: ReadPrec [Packet payload] #

Show payload => Show (Packet payload) Source # 
Instance details

Defined in Tox.Network.Core.Packet

Methods

showsPrec :: Int -> Packet payload -> ShowS #

show :: Packet payload -> String #

showList :: [Packet payload] -> ShowS #

Generic (Packet payload) Source # 
Instance details

Defined in Tox.Network.Core.Packet

Associated Types

type Rep (Packet payload) :: Type -> Type #

Methods

from :: Packet payload -> Rep (Packet payload) x #

to :: Rep (Packet payload) x -> Packet payload #

Arbitrary payload => Arbitrary (Packet payload) Source # 
Instance details

Defined in Tox.Network.Core.Packet

Methods

arbitrary :: Gen (Packet payload) #

shrink :: Packet payload -> [Packet payload] #

Binary payload => Binary (Packet payload) Source # 
Instance details

Defined in Tox.Network.Core.Packet

Methods

put :: Packet payload -> Put #

get :: Get (Packet payload) #

putList :: [Packet payload] -> Put #

MessagePack payload => MessagePack (Packet payload) Source # 
Instance details

Defined in Tox.Network.Core.Packet

Methods

toObject :: Config -> Packet payload -> Object #

fromObjectWith :: (Applicative m, Monad m, MonadValidate DecodeError m) => Config -> Object -> m (Packet payload) #

Monad m => Networked (DhtConduit i (NodeInfo, Packet ByteString) m) Source #

The Networked instance for DhtConduit yields outgoing packets.

Instance details

Defined in Tox.Conduit.DHT

Methods

sendPacket :: (Binary payload, Show payload) => NodeInfo -> Packet payload -> DhtConduit i (NodeInfo, Packet ByteString) m () Source #

(Timed m, MonadRandomBytes m, MonadState DhtState m, Keyed m) => DhtNodeMonad (DhtConduit i (NodeInfo, Packet ByteString) m) Source #

DhtConduit is a DhtNodeMonad if the underlying monad m provides state and other effects.

Instance details

Defined in Tox.Conduit.DHT

type Rep (Packet payload) Source # 
Instance details

Defined in Tox.Network.Core.Packet

type Rep (Packet payload) = D1 ('MetaData "Packet" "Tox.Network.Core.Packet" "toxcore-0.2.12-inplace" 'False) (C1 ('MetaCons "Packet" 'PrefixI 'True) (S1 ('MetaSel ('Just "packetKind") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 PacketKind) :*: S1 ('MetaSel ('Just "packetPayload") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 payload)))