--- parser3/src/include/pa_globals.h 2001/04/11 13:03:42 1.47 +++ parser3/src/include/pa_globals.h 2002/02/08 07:27:44 1.77 @@ -1,11 +1,10 @@ /** @file Parser: global decls. - Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com) + Copyright (c) 2001, 2002 ArtLebedev Group (http://www.artlebedev.com) + Author: Alexander Petrosyan (http://paf.design.ru) - Author: Alexander Petrosyan (http://design.ru/paf) - - $Id: pa_globals.h,v 1.47 2001/04/11 13:03:42 paf Exp $ + $Id: pa_globals.h,v 1.77 2002/02/08 07:27:44 paf Exp $ */ #ifndef PA_GLOBALS_H @@ -15,15 +14,16 @@ class String; class Hash; -class Table; +class Dictionary; +class Charset; //@{ /// constant string. class name, predefined method & co +#define CONFIG_FILE_NAME "parser3.conf" #define AUTO_FILE_NAME "auto.p" -#define HTML_TYPO_NAME "html-typo" - #define CONTENT_TYPE_NAME "content-type" +#define CHARSET_NAME "charset" #define BODY_NAME "body" #define VALUE_NAME "value" #define EXPIRES_NAME "expires" @@ -34,49 +34,44 @@ class Table; #define TEXT_NAME "text" #define EXCEPTION_METHOD_NAME "exception" -#define POST_PROCESS_METHOD_NAME "post-process" - -#define CONTENT_DISPOSITION_NAME "content-disposition" -#define CONTENT_DISPOSITION_FILENAME_NAME "filename" +#define POST_PROCESS_METHOD_NAME "postprocess" #define UNNAMED_NAME "unnamed" #define MAIN_METHOD_NAME "main" #define AUTO_METHOD_NAME "auto" -#define OP_CLASS_NAME "OP" #define MAIN_CLASS_NAME "MAIN" -#define STRING_CLASS_NAME "string" -#define DOUBLE_CLASS_NAME "double" -#define INT_CLASS_NAME "int" -#define TABLE_CLASS_NAME "table" -#define FILE_CLASS_NAME "file" -#define ENV_CLASS_NAME "env" -#define FORM_CLASS_NAME "form" -#define REQUEST_CLASS_NAME "request" -#define RESPONSE_CLASS_NAME "response" -#define COOKIE_CLASS_NAME "cookie" -#define RANDOM_CLASS_NAME "random" -#define MAIL_CLASS_NAME "mail" -#define IMAGE_CLASS_NAME "image" -#define LIMITS_NAME "LIMITS" -#define POST_MAX_SIZE_NAME "post_max_size" #define DEFAULTS_NAME "DEFAULTS" -#define LOCALE_NAME "LOCALE" -#define LOCALE_CTYPE_NAME "ctype" +#define CHARSETS_NAME "CHARSETS" #define MIME_TYPES_NAME "MIME-TYPES" #define VFILE_MIME_TYPE_NAME "mime-type" -#define MAIL_NAME "MAIL" - -#define MAIN_SQL_NAME "SQL" -#define MAIN_SQL_DRIVERS_NAME "drivers" +#define ORIGINS_MODE_NAME "ORIGINS" #define RESULT_VAR_NAME "result" +#define MATCH_VAR_NAME "match" -#define STRING_PRE_MATCH_NAME "pre-match" +#define STRING_PRE_MATCH_NAME "prematch" #define STRING_MATCH_NAME "match" -#define STRING_POST_MATCH_NAME "post-match" +#define STRING_POST_MATCH_NAME "postmatch" + +#define CONTENT_DISPOSITION_NAME "content-disposition" +#define CONTENT_DISPOSITION_FILENAME_NAME "filename" + +#define SWITCH_DATA_NAME "SWITCH-DATA" +#define CASE_DEFAULT_VALUE "DEFAULT" + +#define CLASS_PATH_NAME "CLASS_PATH" + +#define SQL_LIMIT_NAME "limit" +#define SQL_OFFSET_NAME "offset" +#define SQL_DEFAULT_NAME "default" + +#define CHARSET_UTF8_NAME "UTF-8" + +#define HASH_DEFAULT_ELEMENT_NAME "_default" + //@} /// core func @@ -87,8 +82,9 @@ extern short hex_value[0x100]; //@{ /// global string -extern String *html_typo_name; +extern String *optimized_html_name; extern String *content_type_name; +extern String *charset_name; extern String *body_name; extern String *value_name; extern String *expires_name; @@ -100,57 +96,61 @@ extern String *text_name; extern String *exception_method_name; extern String *post_process_method_name; -extern String *content_disposition_name; -extern String *content_disposition_filename_name; - extern String *unnamed_name; -extern String *empty_string; extern String *auto_method_name; extern String *main_method_name; -extern String *op_class_name; extern String *main_class_name; -extern String *string_class_name; -extern String *double_class_name; -extern String *int_class_name; -extern String *env_class_name; -extern String *table_class_name; -extern String *file_class_name; -extern String *form_class_name; -extern String *request_class_name; -extern String *response_class_name; -extern String *cookie_class_name; -extern String *random_class_name; -extern String *mail_class_name; -extern String *image_class_name; -extern String *limits_name; -extern String *post_max_size_name; -extern String *defaults_name; -extern String *locale_name; -extern String *locale_ctype_name; +extern String *charsets_name; + extern String *mime_types_name; extern String *vfile_mime_type_name; -extern String *mail_name; - -extern String *main_sql_name; -extern String *main_sql_drivers_name; +extern String *origins_mode_name; extern String *result_var_name; +extern String *match_var_name; extern String *string_pre_match_name; extern String *string_match_name; extern String *string_post_match_name; + +extern String *content_disposition_name; +extern String *content_disposition_filename_name; + +extern String *limits_name; + +extern String *class_path_name; + +extern String *switch_data_name; +extern String *case_default_value; + +extern String *sql_limit_name; +extern String *sql_offset_name; +extern String *sql_default_name; + +extern String *charset_UTF8_name; + +extern String *hash_default_element_name; + //@} -/// global hash +/// name to enum language table extern Hash *untaint_lang_name2enum; -/// global table -extern Table *default_typo_table; -/// global pcre tables -extern const unsigned char *pcre_tables; +/// UTF8 charset +extern Charset *utf8_charset; + +#ifdef XML +/// DOMImplementation +extern GdomeDOMImplementation *domimpl; + +/// flag whether there were some xml generic errors on current thread +bool xmlHaveGenericErrors(); +/// get xml generic error accumulated for current thread. WARNING: it is up to caller to free up +const char *xmlGenericErrors(); +#endif #endif