File:  [parser3project] / parser3 / src / include / pa_globals.h
Revision 1.101.2.1: download - view: text, annotated - select for diffs - revision graph
Thu Jan 23 15:38:05 2003 UTC (23 years, 5 months ago) by paf
aint that easy

/** @file
	Parser: global decls.

	Copyright (c) 2001, 2003 ArtLebedev Group (http://www.artlebedev.com)
	Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)
*/

#ifndef PA_GLOBALS_H
#define PA_GLOBALS_H

static const char* IDENT_GLOBALS_H="$Date: 2003/01/23 15:38:05 $";

#include "pa_pool.h"
#include "pa_hash.h"
#include "pa_string.h"

class Dictionary;
class Charset;
class Table;

//@{
/// constant string. class name, predefined method & co
#define AUTO_FILE_NAME "auto.p"

#define CONTENT_TYPE_NAME "content-type"
#define CHARSET_NAME "charset"
#define BODY_NAME "body"
#define DOWNLOAD_NAME "download"
#define VALUE_NAME "value"
#define EXPIRES_NAME "expires"
#define PATH_NAME "path"
#define NAME_NAME "name"
#define NONAME_DAT "noname.dat"
#define SIZE_NAME "size"
#define TEXT_NAME "text"

#define CONF_METHOD_NAME "conf"
#define AUTO_METHOD_NAME "auto"

#define MAIN_CLASS_NAME "MAIN"

#define DEFAULTS_NAME "DEFAULTS"
#define CHARSETS_NAME "CHARSETS"
#define MIME_TYPES_NAME "MIME-TYPES"
#define ORIGINS_MODE_NAME "ORIGINS"

#define RESULT_VAR_NAME "result"
#define MATCH_VAR_NAME "match"

#define EXCEPTION_VAR_NAME "exception"
#define EXCEPTION_TYPE_PART_NAME "type"
#define EXCEPTION_SOURCE_PART_NAME "source"
#define EXCEPTION_COMMENT_PART_NAME "comment"
#define EXCEPTION_HANDLED_PART_NAME "handled"


#define DATE_CALENDAR_WEEKNO_NAME "week"
#define DATE_CALENDAR_WEEKYEAR_NAME "year"

#define CONTENT_DISPOSITION_NAME "content-disposition"
#define CONTENT_DISPOSITION_VALUE "attachment"
#define CONTENT_DISPOSITION_FILENAME_NAME "filename"

#define SWITCH_DATA_NAME "SWITCH-DATA"

#define CACHE_DATA_NAME "CACHE-DATA"

#define CLASS_PATH_NAME "CLASS_PATH"

#define SQL_LIMIT_NAME "limit"
#define SQL_OFFSET_NAME "offset"
#define SQL_DEFAULT_NAME "default"
#define SQL_DISTINCT_NAME "distinct"

#define CHARSET_UTF8_NAME "UTF-8"

#define HASH_DEFAULT_ELEMENT_NAME "_default"

#define HTTP_METHOD_NAME  "method"
#define HTTP_TIMEOUT_NAME    "timeout"
#define HTTP_HEADERS_NAME "headers"
#define HTTP_ANY_STATUS_NAME "any-status"
#define FILE_STATUS_NAME  "status"

//@}

/// core func
void pa_globals_init(Pool& pool);

/// hex_value[c] = hex value of c
extern short hex_value[0x100];

//@{
/// global string
extern String optimized_html_name;
extern String content_type_name;
extern String charset_name;
extern String body_name;
extern String download_name;
extern String value_name;
extern String expires_name;
extern String path_name;
extern String name_name;
extern String size_name;
extern String text_name;

extern String conf_method_name;
extern String auto_method_name;

extern String main_class_name;


extern String charsets_name;

extern String mime_types_name;
extern String origins_mode_name;

extern String result_var_name;
extern String match_var_name;

extern String exception_var_name;
extern String exception_type_part_name;
extern String exception_source_part_name;
extern String exception_comment_part_name;
extern String exception_handled_part_name;

extern String content_disposition_name;
extern String content_disposition_value;
extern String content_disposition_filename_name;

extern String limits_name;

extern String class_path_name;

extern String switch_data_name;

extern String cache_data_name;

extern String sql_limit_name;
extern String sql_offset_name;
extern String sql_default_name;
extern String sql_distinct_name;

extern String charset_UTF8_name;

extern String hash_default_element_name;

extern String http_method_name;
extern String http_timeout_name;
extern String http_headers_name;
extern String http_any_status_name;
extern String file_status_name;

//@}

extern Table date_calendar_table_template;

/// name to enum language table
extern Hash<String, int> untaint_lang_name2enum;

/// 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

E-mail: