Annotation of parser3/src/include/pa_globals.h, revision 1.14

1.13      paf         1: /** @file
1.1       paf         2:        Parser
                      3:        Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com)
                      4:        Author: Alexander Petrosyan <paf@design.ru> (http://design.ru/paf)
                      5: 
1.14    ! paf         6:        $Id: pa_globals.h,v 1.13 2001/03/19 15:29:37 paf Exp $
1.1       paf         7: */
                      8: 
                      9: #ifndef PA_GLOBALS_H
                     10: #define PA_GLOBALS_H
                     11: 
                     12: #include "pa_string.h"
                     13: #include "pa_hash.h"
                     14: 
1.14    ! paf        15: //@{
        !            16: /// constant string. class name, predefined method & co
1.1       paf        17: #define AUTO_FILE_NAME "auto.p"
                     18: 
1.8       paf        19: #define CONTENT_TYPE_NAME "content-type"
                     20: #define BODY_NAME "body"
1.11      paf        21: #define VALUE_NAME "value"
1.12      paf        22: #define EXPIRES_NAME "expires"
                     23: #define PATH_NAME "path"
1.8       paf        24: 
1.1       paf        25: #define EXCEPTION_METHOD_NAME "exception"
                     26: 
                     27: #define UNNAMED_NAME "unnamed"
                     28: 
                     29: #define MAIN_METHOD_NAME "main"
                     30: #define AUTO_METHOD_NAME "auto"
                     31: 
                     32: #define ROOT_CLASS_NAME "ROOT"
                     33: #define MAIN_CLASS_NAME "MAIN"
                     34: #define TABLE_CLASS_NAME "table"
                     35: #define ENV_CLASS_NAME "env"
                     36: #define FORM_CLASS_NAME "form"
1.7       paf        37: #define REQUEST_CLASS_NAME "request"
1.8       paf        38: #define RESPONSE_CLASS_NAME "response"
1.12      paf        39: #define COOKIE_CLASS_NAME "cookie"
1.1       paf        40: 
1.4       paf        41: #define LIMITS_NAME "limits"
                     42: #define POST_MAX_SIZE_NAME "post_max_size"
1.9       paf        43: #define DEFAULTS_NAME "defaults"
1.4       paf        44: 
1.6       paf        45: #define RESULT_VAR_NAME "result"
1.14    ! paf        46: //@}
1.6       paf        47: 
1.14    ! paf        48: /// target-specific service functions
1.3       paf        49: struct Service_funcs {
1.14    ! paf        50:        /// read POST request bytes
1.5       paf        51:        int (*read_post)(char *buf, int max_bytes);
1.14    ! paf        52:        /// output response header attribute
1.10      paf        53:        void (*output_header_attribute)(const char *key, const char *value);
1.14    ! paf        54:        /// output body bytes
1.10      paf        55:        void (*output_body)(const char *buf, size_t size);
1.3       paf        56: };
                     57: 
                     58: 
1.14    ! paf        59: /// core func
1.2       paf        60: void globals_init(Pool& pool);
1.5       paf        61: 
1.14    ! paf        62: /// hex_value[c] = hex value of c
1.5       paf        63: extern short hex_value[0x100];
1.3       paf        64: 
1.14    ! paf        65: /// target-specific service functions
1.3       paf        66: extern Service_funcs service_funcs;
1.1       paf        67: 
1.14    ! paf        68: //@{
        !            69: /// global string
1.8       paf        70: extern String *content_type_name;
                     71: extern String *body_name;
1.11      paf        72: extern String *value_name;
1.12      paf        73: extern String *expires_name;
                     74: extern String *path_name;
1.8       paf        75: 
1.1       paf        76: extern String *exception_method_name;
                     77: 
                     78: extern String *unnamed_name;
                     79: extern String *empty_string;
                     80: 
                     81: extern String *auto_method_name;
                     82: extern String *main_method_name;
                     83: 
                     84: extern String *root_class_name;
                     85: extern String *main_class_name;
                     86: extern String *env_class_name;
                     87: extern String *table_class_name;
                     88: extern String *form_class_name;
1.7       paf        89: extern String *request_class_name;
1.8       paf        90: extern String *response_class_name;
1.12      paf        91: extern String *cookie_class_name;
1.4       paf        92: 
                     93: extern String *limits_name;
                     94: extern String *post_max_size_name;
1.9       paf        95: 
                     96: extern String *defaults_name;
1.6       paf        97: 
                     98: extern String *result_var_name;
1.14    ! paf        99: //@}
1.1       paf       100: 
1.14    ! paf       101: /// global hash
1.1       paf       102: extern Hash *untaint_lang_name2enum;
                    103: 
                    104: #endif

E-mail: