29#include <mstdlib/base/m_defs.h>
30#include <mstdlib/base/m_types.h>
31#include <mstdlib/base/m_list_str.h>
32#include <mstdlib/base/m_decimal.h>
33#include <mstdlib/base/m_buf.h>
struct M_buf M_buf_t
Definition: m_buf.h:77
M_bool(* M_chr_predicate_func)(char c)
Definition: m_chr.h:134
M_DECIMAL_RETVAL
Definition: m_decimal.h:85
Definition: m_decimal.h:78
size_t M_parser_read_bytes_chr_predicate(M_parser_t *parser, M_chr_predicate_func func, unsigned char *buf, size_t buf_len)
size_t M_parser_truncate_predicate_max(M_parser_t *parser, M_parser_predicate_func func, size_t max)
size_t M_parser_read_buf_until(M_parser_t *parser, M_buf_t *buf, const unsigned char *pat, size_t pat_len, M_bool eat_pat)
size_t M_parser_truncate_chr_predicate(M_parser_t *parser, M_chr_predicate_func func)
size_t M_parser_read_str_boundary(M_parser_t *parser, char *buf, size_t buf_len, const char *pat, M_bool eat_pat, M_bool *found)
M_bool M_parser_truncate(M_parser_t *parser, size_t len)
void M_parser_direct_write_end(M_parser_t *parser, size_t len)
size_t M_parser_read_buf_chr_predicate(M_parser_t *parser, M_buf_t *buf, M_chr_predicate_func func)
size_t M_parser_truncate_until(M_parser_t *parser, const unsigned char *pat, size_t len, M_bool eat_pat)
char * M_parser_read_strdup_chr_predicate_max(M_parser_t *parser, M_chr_predicate_func func, size_t max)
M_bool M_parser_is_not_charset(const M_parser_t *parser, size_t len, const unsigned char *charset, size_t charset_len)
size_t M_parser_len(const M_parser_t *parser)
size_t M_parser_consume_whitespace(M_parser_t *parser, M_uint32 flags)
size_t M_parser_current_column(const M_parser_t *parser)
M_parser_t * M_parser_read_parser_chr_predicate(M_parser_t *parser, M_parser_predicate_func func)
size_t M_parser_read_bytes_not_charset(M_parser_t *parser, const unsigned char *charset, size_t charset_len, unsigned char *buf, size_t buf_len)
char * M_parser_read_strdup_not_charset(M_parser_t *parser, const char *charset)
M_parser_t * M_parser_read_parser_chr_predicate_max(M_parser_t *parser, M_parser_predicate_func func, size_t max)
void M_parser_split_free(M_parser_t **parsers, size_t cnt)
M_parser_t * M_parser_read_parser_until(M_parser_t *parser, const unsigned char *pat, size_t len, M_bool eat_pat)
M_PARSER_WHITESPACE_FLAGS
Definition: m_parser.h:67
M_bool M_parser_read_buf(M_parser_t *parser, M_buf_t *buf, size_t len)
M_bool M_parser_read_bytes(M_parser_t *parser, size_t len, unsigned char *buf)
M_parser_t * M_parser_read_parser(M_parser_t *parser, size_t len)
M_parser_t ** M_parser_split(M_parser_t *parser, unsigned char delim, size_t maxcnt, M_uint32 flags, size_t *num_output)
size_t M_parser_consume_str_until(M_parser_t *parser, const char *pat, M_bool eat_pat)
M_bool M_parser_append(M_parser_t *parser, const unsigned char *data, size_t len)
void M_parser_destroy(M_parser_t *parser)
size_t M_parser_consume_str_charset(M_parser_t *parser, const char *charset)
M_PARSER_FRAME_BYES
Definition: m_parser.h:88
M_parser_t * M_parser_read_parser_predicate(M_parser_t *parser, M_parser_predicate_func func)
size_t M_parser_consume_predicate(M_parser_t *parser, M_parser_predicate_func func)
size_t M_parser_read_str_not_charset(M_parser_t *parser, const char *charset, char *buf, size_t buf_len)
char * M_parser_read_strdup(M_parser_t *parser, size_t len)
char * M_parser_read_strdup_charset(M_parser_t *parser, const char *charset)
size_t M_parser_read_buf_not_charset(M_parser_t *parser, M_buf_t *buf, const unsigned char *charset, size_t charset_len)
M_bool M_parser_is_chr_predicate(const M_parser_t *parser, size_t len, M_chr_predicate_func func)
size_t M_parser_read_buf_boundary(M_parser_t *parser, M_buf_t *buf, const unsigned char *pat, size_t len, M_bool eat_pat, M_bool *found)
size_t M_parser_consume_chr_predicate(M_parser_t *parser, M_chr_predicate_func func)
M_PARSER_FLAGS
Definition: m_parser.h:59
M_bool M_parser_read_uint_bcd(M_parser_t *parser, size_t len, M_uint64 *integer)
struct M_parser M_parser_t
Definition: m_parser.h:52
size_t M_parser_truncate_charset(M_parser_t *parser, const unsigned char *charset, size_t charset_len)
size_t M_parser_read_bytes_boundary(M_parser_t *parser, unsigned char *buf, size_t buf_len, const unsigned char *pat, size_t len, M_bool eat_pat, M_bool *found)
size_t M_parser_consume_not_charset(M_parser_t *parser, const unsigned char *charset, size_t charset_len)
size_t M_parser_read_bytes_charset(M_parser_t *parser, const unsigned char *charset, size_t charset_len, unsigned char *buf, size_t buf_len)
const unsigned char * M_parser_peek(const M_parser_t *parser)
M_parser_t * M_parser_read_parser_charset(M_parser_t *parser, unsigned const char *charset, size_t charset_len)
M_PARSER_FRAME_ERROR
Definition: m_parser.h:95
size_t M_parser_read_str_until(M_parser_t *parser, char *buf, size_t buf_len, const char *pat, M_bool eat_pat)
M_bool M_parser_is_predicate(const M_parser_t *parser, size_t len, M_parser_predicate_func func)
M_parser_t * M_parser_read_parser_predicate_max(M_parser_t *parser, M_parser_predicate_func func, size_t max)
M_parser_t ** M_parser_split_pat(M_parser_t *parser, const unsigned char *pat, size_t pat_len, size_t maxcnt, M_uint32 flags, size_t *num_output)
char * M_parser_read_strdup_chr_predicate(M_parser_t *parser, M_chr_predicate_func func)
char * M_parser_read_strdup_mark(M_parser_t *parser)
M_bool M_parser_read_uint(M_parser_t *parser, enum M_PARSER_INTEGER_TYPE type, size_t len, unsigned char base, M_uint64 *integer)
size_t M_parser_consume_eol(M_parser_t *parser)
M_bool M_parser_peek_bytes(const M_parser_t *parser, size_t len, unsigned char *buf)
char * M_parser_read_strdup_until(M_parser_t *parser, const char *pat, M_bool eat_pat)
size_t M_parser_read_str_chr_predicate(M_parser_t *parser, M_chr_predicate_func func, char *buf, size_t buf_len)
size_t M_parser_current_line(const M_parser_t *parser)
M_PARSER_FRAME_ERROR M_parser_read_stxetxlrc_message(M_parser_t *parser, M_parser_t **out, M_uint32 lrc_frame_chars)
size_t M_parser_consume_str_boundary(M_parser_t *parser, const char *pat, M_bool eat_pat, M_bool *found)
M_bool M_parser_is_str_charset(const M_parser_t *parser, size_t len, const char *charset)
size_t M_parser_consume_charset(M_parser_t *parser, const unsigned char *charset, size_t charset_len)
M_bool M_parser_read_str(M_parser_t *parser, size_t len, char *buf, size_t buf_len)
M_parser_t * M_parser_create(M_uint32 flags)
size_t M_parser_read_buf_chr_predicate_max(M_parser_t *parser, M_buf_t *buf, M_chr_predicate_func func, size_t max)
M_bool M_parser_read_buf_hex(M_parser_t *parser, M_buf_t *buf, size_t len)
size_t M_parser_consume_chr_predicate_max(M_parser_t *parser, M_chr_predicate_func func, size_t max)
M_bool M_parser_is_not_str_charset(const M_parser_t *parser, size_t len, const char *charset)
M_bool M_parser_peek_byte(const M_parser_t *parser, unsigned char *byte)
size_t M_parser_current_offset(const M_parser_t *parser)
char * M_parser_read_strdup_predicate_max(M_parser_t *parser, M_parser_predicate_func func, size_t max)
M_parser_t * M_parser_create_const(const unsigned char *buf, size_t len, M_uint32 flags)
M_parser_t ** M_parser_split_str_pat(M_parser_t *parser, const char *pat, size_t maxcnt, M_uint32 flags, size_t *num_output)
size_t M_parser_read_str_charset(M_parser_t *parser, const char *charset, char *buf, size_t buf_len)
size_t M_parser_read_buf_mark(M_parser_t *parser, M_buf_t *buf)
M_bool M_parser_compare_str(const M_parser_t *parser, const char *str, size_t max_len, M_bool casecmp)
size_t M_parser_mark_rewind(M_parser_t *parser)
size_t M_parser_read_str_predicate(M_parser_t *parser, M_parser_predicate_func func, char *buf, size_t buf_len)
size_t M_parser_read_buf_predicate(M_parser_t *parser, M_buf_t *buf, M_parser_predicate_func func)
M_bool M_parser_read_byte(M_parser_t *parser, unsigned char *byte)
size_t M_parser_truncate_whitespace(M_parser_t *parser, M_uint32 flags)
size_t M_parser_read_bytes_mark(M_parser_t *parser, unsigned char *buf, size_t buf_len)
M_bool M_parser_is_not_chr_predicate(const M_parser_t *parser, size_t len, M_chr_predicate_func func)
size_t M_parser_mark_len(const M_parser_t *parser)
M_bool M_parser_is_charset(const M_parser_t *parser, size_t len, const unsigned char *charset, size_t charset_len)
M_parser_t * M_parser_read_parser_mark(M_parser_t *parser)
void M_parser_mark_clear(M_parser_t *parser)
unsigned char * M_parser_direct_write_start(M_parser_t *parser, size_t *len)
void M_parser_mark(M_parser_t *parser)
char * M_parser_read_strdup_boundary(M_parser_t *parser, const char *pat, M_bool eat_pat, M_bool *found)
size_t M_parser_read_buf_max(M_parser_t *parser, M_buf_t *buf, size_t len)
size_t M_parser_consume_str_not_charset(M_parser_t *parser, const char *charset)
char * M_parser_read_strdup_predicate(M_parser_t *parser, M_parser_predicate_func func)
size_t M_parser_reset(M_parser_t *parser)
size_t M_parser_truncate_str_until(M_parser_t *parser, const char *pat, M_bool eat_pat)
size_t M_parser_read_bytes_max(M_parser_t *parser, size_t len, unsigned char *buf, size_t buf_len)
size_t M_parser_consume_boundary(M_parser_t *parser, const unsigned char *pat, size_t len, M_bool eat_pat, M_bool *found)
size_t M_parser_consume_until(M_parser_t *parser, const unsigned char *pat, size_t len, M_bool eat_pat)
enum M_DECIMAL_RETVAL M_parser_read_decimal(M_parser_t *parser, size_t len, M_bool truncate_fail, M_decimal_t *decimal)
size_t M_parser_truncate_chr_predicate_max(M_parser_t *parser, M_chr_predicate_func func, size_t max)
size_t M_parser_truncate_str_charset(M_parser_t *parser, const char *charset)
M_bool M_parser_read_int(M_parser_t *parser, enum M_PARSER_INTEGER_TYPE type, size_t len, unsigned char base, M_int64 *integer)
size_t M_parser_truncate_predicate(M_parser_t *parser, M_parser_predicate_func func)
size_t M_parser_consume_predicate_max(M_parser_t *parser, M_parser_predicate_func func, size_t max)
M_bool M_parser_consume(M_parser_t *parser, size_t len)
size_t M_parser_read_bytes_predicate(M_parser_t *parser, M_parser_predicate_func func, unsigned char *buf, size_t buf_len)
M_bool(* M_parser_predicate_func)(unsigned char c)
Definition: m_parser.h:55
char * M_parser_read_strdup_hex(M_parser_t *parser, size_t len)
M_bool M_parser_is_not_predicate(const M_parser_t *parser, size_t len, M_parser_predicate_func func)
size_t M_parser_read_str_mark(M_parser_t *parser, char *buf, size_t buf_len)
const unsigned char * M_parser_peek_mark(const M_parser_t *parser, size_t *len)
size_t M_parser_read_buf_predicate_max(M_parser_t *parser, M_buf_t *buf, M_parser_predicate_func func, size_t max)
size_t M_parser_read_str_max(M_parser_t *parser, size_t len, char *buf, size_t buf_len)
M_bool M_parser_compare(const M_parser_t *parser, const unsigned char *data, size_t data_len)
M_PARSER_INTEGER_TYPE
Definition: m_parser.h:74
M_PARSER_SPLIT_FLAGS
Definition: m_parser.h:81
M_parser_t * M_parser_read_parser_boundary(M_parser_t *parser, const unsigned char *pat, size_t len, M_bool eat_pat, M_bool *found)
size_t M_parser_read_buf_charset(M_parser_t *parser, M_buf_t *buf, const unsigned char *charset, size_t charset_len)
size_t M_parser_read_bytes_until(M_parser_t *parser, unsigned char *buf, size_t buf_len, const unsigned char *pat, size_t pat_len, M_bool eat_pat)
@ M_PARSER_WHITESPACE_TO_NEWLINE
Definition: m_parser.h:69
@ M_PARSER_WHITESPACE_SPACEONLY
Definition: m_parser.h:70
@ M_PARSER_WHITESPACE_NONE
Definition: m_parser.h:68
@ M_PARSER_FRAME_NONE
Definition: m_parser.h:89
@ M_PARSER_FRAME_STX
Definition: m_parser.h:90
@ M_PARSER_FRAME_ETX
Definition: m_parser.h:91
@ M_PARSER_FLAG_TRACKLINES
Definition: m_parser.h:61
@ M_PARSER_FLAG_NONE
Definition: m_parser.h:60
@ M_PARSER_FRAME_ERROR_SUCCESS
Definition: m_parser.h:96
@ M_PARSER_FRAME_ERROR_NO_LRC
Definition: m_parser.h:100
@ M_PARSER_FRAME_ERROR_INVALID
Definition: m_parser.h:97
@ M_PARSER_FRAME_ERROR_NO_STX
Definition: m_parser.h:98
@ M_PARSER_FRAME_ERROR_LRC_CALC_FAILED
Definition: m_parser.h:101
@ M_PARSER_FRAME_ERROR_NO_ETX
Definition: m_parser.h:99
@ M_PARSER_INTEGER_BIGENDIAN
Definition: m_parser.h:76
@ M_PARSER_INTEGER_LITTLEENDIAN
Definition: m_parser.h:77
@ M_PARSER_INTEGER_ASCII
Definition: m_parser.h:75
@ M_PARSER_SPLIT_FLAG_NODELIM_ERROR
Definition: m_parser.h:83
@ M_PARSER_SPLIT_FLAG_NONE
Definition: m_parser.h:82
@ M_PARSER_SPLIT_FLAG_DONT_TRIM_LAST
Definition: m_parser.h:84