MGE General C Library - API Documentation  v1.3.5
Library of general C functions.
mgemessage.h File Reference

Header file for message processing. More...

#include <portability.h>
#include <sys/types.h>
#include <mgebuffer.h>
Include dependency graph for mgemessage.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  mgemessage
 Message object. More...
 

Macros

#define _Bool   signed char
 
#define bool   _Bool
 
#define false   0
 
#define true   1
 
#define __bool_true_false_are_defined   1
 
#define MGEMESSAGE_INIT(a, b)
 mgemessage struct initialiser. More...
 

Functions

struct mgemessagepull_msg (struct mgebuffer *buf, struct mgemessage *msg)
 Pull a message from a buffer object. More...
 
void clear_msg (struct mgemessage *msg, const char terminator, const char separator)
 Clear message struct. More...
 
void print_msg (struct mgemessage *msg)
 Print a message struct. More...
 
void print_def_msg_values (void)
 Print default values to stdout, for debugging. More...
 

Detailed Description

Header file for message processing.

All message manipulation related information.

Author
Copyright (C) 2017-2021 Mark Grant

Released under the GPLv3 only.
SPDX-License-Identifier: GPL-3.0

Version
v1.0.11 ==== 16/04/2021

Macro Definition Documentation

◆ __bool_true_false_are_defined

#define __bool_true_false_are_defined   1

◆ _Bool

#define _Bool   signed char

◆ bool

#define bool   _Bool

◆ false

#define false   0

◆ MGEMESSAGE_INIT

#define MGEMESSAGE_INIT (   a,
 
)
Value:
{ \
.message = NULL, .size = 0, .next_free = 0, .complete = false, \
.terminator = a, .separator = b, .argc = 0, .argv = NULL \
}

mgemessage struct initialiser.

◆ true

#define true   1

Function Documentation

◆ clear_msg()

void clear_msg ( struct mgemessage msg,
const char  terminator,
const char  separator 
)

Clear message struct.

Free memory allocated to the object and initialise the fields.

Parameters
msgA message object to clear.
terminatorThe message delimitter to use.
separatorThe message element delimitter to use.

◆ print_def_msg_values()

void print_def_msg_values ( void  )

Print default values to stdout, for debugging.

◆ print_msg()

void print_msg ( struct mgemessage msg)

Print a message struct.

Useful for debugging.

Parameters
msgThe message object to print to stdout.

◆ pull_msg()

struct mgemessage* pull_msg ( struct mgebuffer buf,
struct mgemessage msg 
)

Pull a message from a buffer object.

On error NULL is returned and mge_errno is set.

Parameters
bufA buffer object.
msgA message object.
Returns
The resulting message object, partial or complete, or NULL on error.