24#include <platform_mutex.h>
27#define TOKENIZER_BUFFER_SIZE 257
29#define CHANNEL_SUCCESS 1
34#define CHANNEL_READER_CLOSED 1000
bool lbm_channel_comment(lbm_char_channel_t *chan)
Definition lbm_channel.c:41
void lbm_create_string_char_channel(lbm_string_channel_state_t *st, lbm_char_channel_t *chan, char *str)
Definition lbm_channel.c:381
void lbm_channel_reader_close(lbm_char_channel_t *chan)
Definition lbm_channel.c:65
bool lbm_channel_reader_is_closed(lbm_char_channel_t *chan)
Definition lbm_channel.c:69
unsigned int lbm_channel_column(lbm_char_channel_t *chan)
Definition lbm_channel.c:77
struct lbm_char_channel_s lbm_char_channel_t
void lbm_char_channel_set_dependency(lbm_char_channel_t *chan, lbm_value dep)
Definition lbm_channel.c:445
void lbm_create_string_char_channel_size(lbm_string_channel_state_t *st, lbm_char_channel_t *chan, char *str, unsigned int size)
Definition lbm_channel.c:413
#define TOKENIZER_BUFFER_SIZE
Definition lbm_channel.h:27
int lbm_channel_write(lbm_char_channel_t *chan, char c)
Definition lbm_channel.c:57
bool lbm_channel_is_full(lbm_char_channel_t *chan)
Definition lbm_channel.c:53
bool lbm_channel_read(lbm_char_channel_t *chan, char *res)
Definition lbm_channel.c:33
bool lbm_channel_more(lbm_char_channel_t *chan)
Definition lbm_channel.c:25
bool lbm_channel_is_empty(lbm_char_channel_t *chan)
Definition lbm_channel.c:49
void lbm_channel_set_comment(lbm_char_channel_t *chan, bool comment)
Definition lbm_channel.c:45
void lbm_create_buffered_char_channel(lbm_buffered_channel_state_t *st, lbm_char_channel_t *chan)
Definition lbm_channel.c:222
bool lbm_channel_may_block(lbm_char_channel_t *chan)
Definition lbm_channel.c:81
bool lbm_channel_drop(lbm_char_channel_t *chan, unsigned int n)
Definition lbm_channel.c:37
int lbm_channel_peek(lbm_char_channel_t *chan, unsigned int n, char *res)
Definition lbm_channel.c:29
unsigned int lbm_channel_row(lbm_char_channel_t *chan)
Definition lbm_channel.c:73
void lbm_channel_writer_close(lbm_char_channel_t *chan)
Definition lbm_channel.c:61
uint32_t lbm_value
Definition lbm_types.h:44
Definition lbm_channel.h:38
bool more
Definition lbm_channel.h:42
unsigned int column
Definition lbm_channel.h:49
bool mutex_initialized
Definition lbm_channel.h:46
bool reader_closed
Definition lbm_channel.h:44
unsigned int row
Definition lbm_channel.h:48
bool comment
Definition lbm_channel.h:43
unsigned int write_pos
Definition lbm_channel.h:40
unsigned int read_pos
Definition lbm_channel.h:41
mutex_t lock
Definition lbm_channel.h:45
Definition lbm_channel.h:69
void * state
Definition lbm_channel.h:72
int(* write)(struct lbm_char_channel_s *chan, char c)
Definition lbm_channel.h:87
lbm_value dependency
Definition lbm_channel.h:71
bool(* channel_is_full)(struct lbm_char_channel_s *chan)
Definition lbm_channel.h:83
bool(* more)(struct lbm_char_channel_s *chan)
Definition lbm_channel.h:73
void(* reader_close)(struct lbm_char_channel_s *chan)
Definition lbm_channel.h:79
unsigned int(* row)(struct lbm_char_channel_s *chan)
Definition lbm_channel.h:91
int(* peek)(struct lbm_char_channel_s *chan, unsigned int n, char *res)
Definition lbm_channel.h:74
bool(* may_block)(struct lbm_char_channel_s *chan)
Definition lbm_channel.h:94
bool(* comment)(struct lbm_char_channel_s *chan)
Definition lbm_channel.h:77
bool(* channel_is_empty)(struct lbm_char_channel_s *chan)
Definition lbm_channel.h:82
bool(* reader_is_closed)(struct lbm_char_channel_s *chan)
Definition lbm_channel.h:84
unsigned int(* column)(struct lbm_char_channel_s *chan)
Definition lbm_channel.h:92
bool(* drop)(struct lbm_char_channel_s *chan, unsigned int n)
Definition lbm_channel.h:76
void(* writer_close)(struct lbm_char_channel_s *chan)
Definition lbm_channel.h:88
bool(* read)(struct lbm_char_channel_s *chan, char *res)
Definition lbm_channel.h:75
void(* set_comment)(struct lbm_char_channel_s *chan, bool comment)
Definition lbm_channel.h:78
Definition lbm_channel.h:55
unsigned int read_pos
Definition lbm_channel.h:58
bool reader_closed
Definition lbm_channel.h:62
unsigned int column
Definition lbm_channel.h:64
char * str
Definition lbm_channel.h:56
unsigned int row
Definition lbm_channel.h:63
unsigned int write_pos
Definition lbm_channel.h:59
bool comment
Definition lbm_channel.h:61
bool more
Definition lbm_channel.h:60
unsigned int length
Definition lbm_channel.h:57