17 #ifndef APT_TEXT_STREAM_H 
   18 #define APT_TEXT_STREAM_H 
   31 #define APT_TOKEN_SP 0x20 
   33 #define APT_TOKEN_HTAB 0x09 
   35 #define APT_TOKEN_CR 0x0D 
   37 #define APT_TOKEN_LF 0x0A 
  124     stream->pos = stream->text.buf;
 
  125     stream->end = stream->text.buf + stream->text.length;
 
  126     stream->is_eos = FALSE;
 
  130 static APR_INLINE 
void apt_text_stream_init(
apt_text_stream_t *stream, 
char *buffer, apr_size_t size)
 
  134     apt_text_stream_reset(stream);
 
  140     if(stream->
pos + 2 < stream->
end) {
 
  151     if(stream->
pos + 1 < stream->
end) {
 
  171 static APR_INLINE 
apt_bool_t apt_text_is_wsp(
char ch)
 
  186     while(stream->
pos < stream->
end && apt_text_is_wsp(*stream->
pos) == TRUE)
 
  193     if(stream->
pos < stream->
end && *stream->
pos == ch) stream->
pos++;
 
  199     while(stream->
pos < stream->
end && *stream->
pos == ch) stream->
pos++;
 
  205     while(stream->
pos < stream->
end && *stream->
pos != ch) stream->
pos++;
 
  211     return (stream->
pos >= stream->
end || stream->
is_eos == TRUE) ? TRUE : FALSE;
 
apr_array_header_t apt_pair_arr_t
Definition: apt_pair.h:42
 
Definition: apt_pair.h:34
 
Definition: apt_text_stream.h:43
 
apt_bool_t apt_id_resource_parse(const apt_str_t *str, char separator, apt_str_t *id, apt_str_t *resource, apr_pool_t *pool)
 
apr_size_t apt_size_value_parse(const apt_str_t *str)
 
#define APT_END_EXTERN_C
Definition: apt.h:38
 
apt_bool_t apt_id_resource_generate(const apt_str_t *id, const apt_str_t *resource, char separator, apt_str_t *str, apr_pool_t *pool)
 
#define APT_TOKEN_CR
Definition: apt_text_stream.h:35
 
int apt_bool_t
Definition: apt.h:57
 
apt_bool_t apt_text_string_insert(apt_text_stream_t *stream, const apt_str_t *str)
 
apt_bool_t apt_completion_cause_generate(const apt_str_table_item_t table[], apr_size_t size, apr_size_t cause, apt_str_t *str, apr_pool_t *pool)
 
apt_bool_t is_eos
Definition: apt_text_stream.h:52
 
apt_bool_t apt_text_field_read(apt_text_stream_t *stream, char separator, apt_bool_t skip_spaces, apt_str_t *field)
 
apt_bool_t apt_pair_array_generate(const apt_pair_arr_t *arr, apt_str_t *str, apr_pool_t *pool)
 
apt_bool_t apt_text_float_value_insert(apt_text_stream_t *stream, float value)
 
#define APT_TOKEN_LF
Definition: apt_text_stream.h:37
 
apt_bool_t apt_text_line_read(apt_text_stream_t *stream, apt_str_t *line)
 
apt_bool_t apt_text_header_read(apt_text_stream_t *stream, apt_pair_t *pair)
 
apr_size_t length
Definition: apt_string.h:40
 
#define APT_BEGIN_EXTERN_C
Definition: apt.h:36
 
#define APT_DECLARE(type)
Definition: apt.h:53
 
apt_bool_t apt_boolean_value_parse(const apt_str_t *str, apt_bool_t *value)
 
char * pos
Definition: apt_text_stream.h:48
 
apt_bool_t apt_pair_array_parse(apt_pair_arr_t *arr, const apt_str_t *value, apr_pool_t *pool)
 
apt_bool_t apt_text_size_value_insert(apt_text_stream_t *stream, apr_size_t value)
 
apt_bool_t apt_text_stream_scroll(apt_text_stream_t *stream)
 
apt_bool_t apt_var_length_value_generate(apr_size_t *value, apr_size_t max_count, apt_str_t *str)
 
apt_bool_t apt_unique_id_generate(apt_str_t *id, apr_size_t length, apr_pool_t *pool)
 
#define APT_TOKEN_HTAB
Definition: apt_text_stream.h:33
 
Definition: apt_string.h:36
 
#define APT_TOKEN_SP
Definition: apt_text_stream.h:31
 
apt_bool_t apt_size_value_generate(apr_size_t value, apt_str_t *str, apr_pool_t *pool)
 
apt_bool_t apt_boolean_value_generate(apt_bool_t value, apt_str_t *str, apr_pool_t *pool)
 
apt_str_t text
Definition: apt_text_stream.h:45
 
const char * end
Definition: apt_text_stream.h:50
 
apt_bool_t apt_text_header_name_insert(apt_text_stream_t *stream, const apt_str_t *name)
 
apt_bool_t apt_text_name_value_insert(apt_text_stream_t *stream, const apt_str_t *name, const apt_str_t *value)
 
float apt_float_value_parse(const apt_str_t *str)
 
apt_bool_t apt_float_value_generate(float value, apt_str_t *str, apr_pool_t *pool)
 
char * buf
Definition: apt_string.h:38
 
Definition: apt_string_table.h:34