Mercurial > urweb
annotate include/types.h @ 853:19fdeef40ada
Factor out common request functionality, in preparation for supporting different protocols
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Tue, 23 Jun 2009 14:05:12 -0400 |
parents | 395a5d450cc0 |
children | 86ec89baee01 |
rev | line source |
---|---|
adamc@764 | 1 #ifndef URWEB_TYPES_H |
adamc@764 | 2 #define URWEB_TYPES_H |
adamc@764 | 3 |
adamc@436 | 4 #include <time.h> |
adamc@436 | 5 |
adamc@311 | 6 typedef long long uw_Basis_int; |
adamc@311 | 7 typedef double uw_Basis_float; |
adamc@311 | 8 typedef char* uw_Basis_string; |
adamc@821 | 9 typedef char uw_Basis_char; |
adamc@436 | 10 typedef time_t uw_Basis_time; |
adamc@737 | 11 typedef struct { |
adamc@737 | 12 size_t size; |
adamc@737 | 13 char *data; |
adamc@737 | 14 } uw_Basis_blob; |
adamc@102 | 15 |
adamc@311 | 16 struct __uws_0 { |
adamc@102 | 17 }; |
adamc@102 | 18 |
adamc@311 | 19 typedef struct __uws_0 uw_unit; |
adamc@311 | 20 typedef uw_unit uw_Basis_unit; |
adamc@117 | 21 |
adamc@311 | 22 typedef enum uw_Basis_bool { uw_Basis_False, uw_Basis_True } uw_Basis_bool; |
adamc@186 | 23 |
adamc@311 | 24 typedef struct uw_context *uw_context; |
adamc@117 | 25 |
adamc@311 | 26 typedef uw_Basis_string uw_Basis_xhtml; |
adamc@311 | 27 typedef uw_Basis_string uw_Basis_page; |
adamc@757 | 28 typedef uw_Basis_string uw_Basis_xbody; |
adamc@721 | 29 typedef uw_Basis_string uw_Basis_css_class; |
adamc@682 | 30 |
adamc@682 | 31 typedef unsigned uw_Basis_client; |
adamc@682 | 32 typedef struct { |
adamc@682 | 33 unsigned cli, chn; |
adamc@682 | 34 } uw_Basis_channel; |
adamc@167 | 35 |
adamc@737 | 36 typedef struct uw_Basis_file { |
adamc@740 | 37 uw_Basis_string name, type; |
adamc@737 | 38 uw_Basis_blob data; |
adamc@737 | 39 } uw_Basis_file; |
adamc@737 | 40 |
adamc@741 | 41 typedef enum { SUCCESS, FATAL, BOUNDED_RETRY, UNLIMITED_RETRY, RETURN_BLOB } failure_kind; |
adamc@295 | 42 |
adamc@853 | 43 typedef enum { SERVED, KEEP_OPEN, FAILED } request_result; |
adamc@853 | 44 |
adamc@756 | 45 typedef struct input *uw_input; |
adamc@295 | 46 |
adamc@295 | 47 #define INTS_MAX 50 |
adamc@295 | 48 #define FLOATS_MAX 100 |
adamc@436 | 49 #define TIMES_MAX 100 |
adamc@668 | 50 |
adamc@771 | 51 typedef void (*uw_callback)(void *); |
adamc@771 | 52 |
adamc@764 | 53 #endif |