Safe Haskell | None |
---|---|
Language | Haskell2010 |
- class CtcpCommand a where
- encodeCtcp :: a -> CTCPByteString
- data Service
- data OpenChat
- data CloseChat = CloseChat
- data OfferFile = OfferFile TransferType FileMetadata
- data TryResumeFile = TryResumeFile TransferType FileMetadata FileOffset
- data AcceptResumeFile = AcceptResumeFile TransferType FileMetadata FileOffset
- data OfferFileSink = OfferFileSink Token FileMetadata IPv4 PortNumber
- data TransferType
- data FileMetadata = FileMetadata {}
- data Token = Token ByteString
- type FileOffset = Word64
- runParser :: Parser a -> CTCPByteString -> Either String a
- parseService :: Parser Service
- parseOpenChat :: Parser OpenChat
- parseCloseChat :: Parser CloseChat
- parseOfferFile :: Parser OfferFile
- parseTryResumeFile :: OfferFile -> Parser TryResumeFile
- parseAcceptResumeFile :: TryResumeFile -> Parser AcceptResumeFile
- parseOfferFileSink :: AcceptResumeFile -> Parser (Maybe OfferFileSink)
Types
DCC service
class CtcpCommand a where Source
Class for types that can be sent as CTCP commands
encodeCtcp :: a -> CTCPByteString Source
Type of DCC service offered
Messaging OpenChat | Offer chat session |
FileTransfer OfferFile | Offer file transfer |
Messaging commands (DCC CHAT)
Type of DCC chat to open
Chat IPv4 PortNumber | Text messages exchange |
Whiteboard IPv4 PortNumber | Drawing commands exchange |
Signal intent to close DCC chat connection
File Transfer commands (DCC SEND)
DCC file transfer instructions
data TryResumeFile Source
Signal intent to resume DCC file transfer at specific position
data AcceptResumeFile Source
Signal acceptance to resume DCC file transfer at specific position
data OfferFileSink Source
Signal readiness to accept a connection
Helper Types
data TransferType Source
Type of a DCC file transfer connection
data FileMetadata Source
Properties of a file
An identifier for knowing which negotiation a request belongs to
type FileOffset = Word64 Source