--- parser3/src/include/pa_request.h 2007/10/22 13:44:42 1.185 +++ parser3/src/include/pa_request.h 2009/04/29 03:26:38 1.190 @@ -1,14 +1,14 @@ /** @file Parser: request class decl. - Copyright (c) 2001-2005 ArtLebedev Group (http://www.artlebedev.com) + Copyright (c) 2001-2009 ArtLebedev Group (http://www.artlebedev.com) Author: Alexandr Petrosian (http://paf.design.ru) */ #ifndef PA_REQUEST_H #define PA_REQUEST_H -static const char * const IDENT_REQUEST_H="$Date: 2007/10/22 13:44:42 $"; +static const char * const IDENT_REQUEST_H="$Date: 2009/04/29 03:26:38 $"; #include "pa_pool.h" #include "pa_hash.h" @@ -201,6 +201,7 @@ public: /// executes ops void execute(ArrayOperation& ops); // execute.C + WContext* op_call(VMethodFrame& frame); /// execute ops with anti-recoursion check void recoursion_checked_execute(/*const String& name, */ArrayOperation& ops) { // anti_endless_execute_recoursion @@ -355,7 +356,7 @@ public: // status read methods StringOrValue execute_method(VMethodFrame& amethodFrame, const Method& method); //{ for @conf[filespec] and @auto[filespec] and parser://method/call const String* execute_method(Value& aself, - const Method& method, VString* optional_param, + const Method& method, Value* optional_param, bool do_return_string); struct Execute_nonvirtual_method_result { const String* string; @@ -391,14 +392,14 @@ private: private: // compile.C - VStateless_class& compile(VStateless_class* aclass, + ArrayClass& compile(VStateless_class* aclass, const char* source, const String* main_alias, uint file_no, int line_no_offset); private: // execute.C - void put_element(Value& ncontext, const String& name, Value& value); + void put_element(Value& ncontext, const String& name, Value* value); Value& get_element(Value& ncontext, const String& name, bool can_call_operator); private: // defaults @@ -510,10 +511,12 @@ public: // defines for externs +#define CONTENT_TRANSFER_ENCODING_NAME "content-transfer-encoding" #define CONTENT_DISPOSITION_NAME "content-disposition" #define CONTENT_DISPOSITION_ATTACHMENT "attachment" #define CONTENT_DISPOSITION_INLINE "inline" #define CONTENT_DISPOSITION_FILENAME_NAME "filename" + #define EXCEPTION_HANDLED_PART_NAME "handled" @@ -522,6 +525,8 @@ public: extern const String main_method_name; extern const String auto_method_name; extern const String body_name; + +extern const String content_transfer_encoding_name; extern const String content_disposition_name; extern const String content_disposition_attachment; extern const String content_disposition_inline;