|
|
| version 1.7, 2001/03/16 12:30:22 | version 1.121, 2026/04/25 13:38:46 |
|---|---|
| Line 1 | Line 1 |
| /* | /** @file |
| Parser | Parser: global decls. |
| Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com) | |
| Author: Alexander Petrosyan <paf@design.ru> (http://design.ru/paf) | |
| $Id$ | Copyright (c) 2001-2026 Art. Lebedev Studio (https://www.artlebedev.com) |
| Authors: Konstantin Morshnev <moko@design.ru>, Alexandr Petrosian <paf@design.ru> | |
| */ | */ |
| #ifndef PA_GLOBALS_H | #ifndef PA_GLOBALS_H |
| #define PA_GLOBALS_H | #define PA_GLOBALS_H |
| #include "pa_string.h" | #define IDENT_PA_GLOBALS_H "$Id$" |
| #include "pa_hash.h" | |
| #define AUTO_FILE_NAME "auto.p" | #ifdef XML |
| # include "libxml/tree.h" | |
| #define EXCEPTION_METHOD_NAME "exception" | #endif |
| #define UNNAMED_NAME "unnamed" | |
| #define MAIN_METHOD_NAME "main" | |
| #define AUTO_METHOD_NAME "auto" | |
| #define ROOT_CLASS_NAME "ROOT" | |
| #define MAIN_CLASS_NAME "MAIN" | |
| #define TABLE_CLASS_NAME "table" | |
| #define ENV_CLASS_NAME "env" | |
| #define FORM_CLASS_NAME "form" | |
| #define REQUEST_CLASS_NAME "request" | |
| #define LIMITS_NAME "limits" | |
| #define POST_MAX_SIZE_NAME "post_max_size" | |
| #define RESULT_VAR_NAME "result" | class Request; |
| struct Service_funcs { | /// initialize global variables |
| int (*read_post)(char *buf, int max_bytes); | void pa_globals_init(); |
| }; | |
| /// finalize global variables | |
| void pa_globals_done(); | |
| // core func | /// for lt_dlinit to be called once |
| void globals_init(Pool& pool); | void pa_dlinit(); |
| // hex_value[c] = hex value of c | /// hex_value[c] = hex value of c |
| extern short hex_value[0x100]; | extern short hex_value[0x100]; |
| // | #ifdef XML |
| extern Service_funcs service_funcs; | /// flag whether there were some xml generic errors on current thread |
| bool xmlHaveGenericErrors(); | |
| // global strings | /// get xml generic error accumulated for current thread. WARNING: it is up to caller to free up |
| extern String *exception_method_name; | const char* xmlGenericErrors(); |
| #endif | |
| extern String *unnamed_name; | |
| extern String *empty_string; | |
| extern String *auto_method_name; | |
| extern String *main_method_name; | |
| extern String *root_class_name; | |
| extern String *main_class_name; | |
| extern String *env_class_name; | |
| extern String *table_class_name; | |
| extern String *form_class_name; | |
| extern String *request_class_name; | |
| extern String *limits_name; | |
| extern String *post_max_size_name; | |
| extern String *result_var_name; | |
| // global hashes | /// register request for local thread to retrive later with pa_get_request() |
| extern Hash *untaint_lang_name2enum; | void pa_register_thread_request(Request&); |
| /// retrives request set by pa_set_request function, useful in contextless places [slow] | |
| Request& pa_thread_request(); | |
| #endif | #endif |