gore-and-ash-network-1.4.0.0: Core module for Gore&Ash engine with low level network API

Copyright(c) Anton Gushcha, 2015-2016
LicenseBSD3
Maintainerncrashed@gmail.com
Stabilityexperimental
PortabilityPOSIX
Safe HaskellNone
LanguageHaskell2010

Game.GoreAndAsh.Network.Message

Description

 

Synopsis

Documentation

data Message Source #

Message that has individual options about reliability

Instances

Show Message Source # 
Generic Message Source # 

Associated Types

type Rep Message :: * -> * #

Methods

from :: Message -> Rep Message x #

to :: Rep Message x -> Message #

NFData Message Source # 

Methods

rnf :: Message -> () #

type Rep Message Source # 
type Rep Message = D1 (MetaData "Message" "Game.GoreAndAsh.Network.Message" "gore-and-ash-network-1.4.0.0-D5xAn58Rw8JIdW4B4WCLcw" False) (C1 (MetaCons "Message" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "messageType") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 MessageType)) (S1 (MetaSel (Just Symbol "messagePayload") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ByteString))))

data MessageType Source #

Strategy how given message is delivered to remote host

Constructors

ReliableMessage

TCP like, ordered reliable delivery

UnreliableMessage

Unrelieable, sequenced but fragments are sent with reliability

UnsequencedMessage

Unreliable and unsequenced (not sort while receiving)

UnreliableFragmentedMessage

Unreliable, sequenced sent with fragments sent within unreliable method

UnsequencedFragmentedMessage

Unreliable, unsequenced with fragments sent within unreliable method

Instances

Bounded MessageType Source # 
Enum MessageType Source # 
Eq MessageType Source # 
Ord MessageType Source # 
Show MessageType Source # 
Generic MessageType Source # 

Associated Types

type Rep MessageType :: * -> * #

NFData MessageType Source # 

Methods

rnf :: MessageType -> () #

type Rep MessageType Source # 
type Rep MessageType = D1 (MetaData "MessageType" "Game.GoreAndAsh.Network.Message" "gore-and-ash-network-1.4.0.0-D5xAn58Rw8JIdW4B4WCLcw" False) ((:+:) ((:+:) (C1 (MetaCons "ReliableMessage" PrefixI False) U1) (C1 (MetaCons "UnreliableMessage" PrefixI False) U1)) ((:+:) (C1 (MetaCons "UnsequencedMessage" PrefixI False) U1) ((:+:) (C1 (MetaCons "UnreliableFragmentedMessage" PrefixI False) U1) (C1 (MetaCons "UnsequencedFragmentedMessage" PrefixI False) U1))))

messageToPacket :: Message -> Packet Source #

Convert message to internal ENet packet