glirc-2.21.1: Console IRC client

Copyright(c) Eric Mertens 2016
LicenseISC
Maintaineremertens@gmail.com
Safe HaskellSafe
LanguageHaskell2010

Client.CApi.Types

Contents

Description

Marshaling types and functions for the C API

Synopsis

Extension record

data FgnExtension Source #

struct glirc_extension;

Constructors

FgnExtension 

Fields

type StartExtension Source #

Arguments

 = Ptr ()

api token

-> CString

path to extension

-> IO (Ptr ())

initialized extension state

typedef void *start(void *glirc, const char *path);

type StopExtension Source #

Arguments

 = Ptr ()

api token

-> Ptr ()

extension state

-> IO () 
typedef void stop(void *glirc, void *S);

type ProcessMessage Source #

Arguments

 = Ptr ()

api token

-> Ptr ()

extention state

-> Ptr FgnMsg

message to send

-> IO MessageResult 
typedef enum process_result process_message(void *glirc, void *S, const struct glirc_message *);

type ProcessCommand Source #

Arguments

 = Ptr ()

api token

-> Ptr ()

extension state

-> Ptr FgnCmd

command

-> IO () 
typedef void process_command(void *glirc, void *S, const struct glirc_command *);

Strings

Messages

Commands

data FgnCmd Source #

struct glirc_command

Constructors

FgnCmd 

Fields

Function pointer calling

type Dynamic a = FunPtr a -> a Source #

Type of dynamic function pointer wrappers.

report message codes

newtype MessageCode Source #

Tag for describing the kind of message to display in the client as used in glirc_print.

enum message_code;

Constructors

MessageCode CInt 

errorMessage :: MessageCode Source #

Result used to determine what to do after processing a message with the ProcessMessage callback.

enum process_result;

process message results