Diff for /parser3/src/include/pa_request.h between versions 1.11 and 1.27

version 1.11, 2001/02/24 08:28:35 version 1.27, 2001/03/10 14:05:35
Line 11 Line 11
 #include "pa_wcontext.h"  #include "pa_wcontext.h"
 #include "pa_value.h"  #include "pa_value.h"
 #include "pa_stack.h"  #include "pa_stack.h"
   #include "pa_vclass.h"
   
 #define MAIN_METHOD_NAME "main"  #define MAIN_METHOD_NAME "main"
 #define SELF_NAME "self"  #define AUTO_METHOD_NAME "auto"
   #define RUN_NAME "RUN"
   
   #define ROOT_NAME "ROOT"
   #define ENV_NAME "ENV"
   
 #ifndef NO_STRING_ORIGIN  #ifndef NO_STRING_ORIGIN
 #       define COMPILE_PARAMS char *source, char *file  #       define COMPILE_PARAMS char *source, String *name, char *file
 #       define COMPILE(source, file) real_compile(source, file)  #       define COMPILE(source, name, file) real_compile(source, name, file)
 #else  #else
 #       define COMPILE_PARAMS char *source  #       define COMPILE_PARAMS char *source, String *name
 #       define COMPILE(source, file) real_compile(source)  #       define COMPILE(source, name, file) real_compile(source, name)
 #endif  #endif
   
 class Local_request_exception;  class Local_request_exception;
Line 28  class Local_request_exception; Line 33  class Local_request_exception;
 class Request : public Pooled {  class Request : public Pooled {
 public:  public:
                   
         Request(Pool& apool) : Pooled(apool),          Request(Pool& apool);
                 stack(apool),  
                 fclasses(apool)  
                 {  
         }  
         ~Request() {}          ~Request() {}
   
         // global classes          // global classes
         Hash& classes() { return fclasses; }          Hash& classes() { return fclasses; }
           Array& classes_array() { return fclasses_array; }
   
         // core request processing          // core request processing
         void core();          void core();
   
 private: // core data          void use(char *file, String *alias); // core.C
           Value& autocalc(Value& value, const String *name=0, bool make_string=true); // execute.C
   
         // classes          void write(Value& avalue) {
         Hash fclasses;                  // appending possible string, assigning untaint language
                   wcontext->write(avalue, lang); 
           }
   
   public:
           
           // default base
           VClass root_class;
           // $ENV:fields here
           VClass env_class;
   
         // contexts          // contexts
         Value *self, *root, *rcontext;          Value *self, *root, *rcontext;
         WContext *wcontext;          WContext *wcontext;
           
   private: // core data
   
           // classes
           Hash fclasses;
           Array fclasses_array;
   
         // execution stack          // execution stack
         Stack stack;          Stack stack;
   
 private: // core.C  private: // core.C
   
         Array& load_and_compile_RUN();          char *execute_MAIN();
         VClass *construct_class(String& name, Array& compiled_methods);  
         char *execute_MAIN(VClass *class_RUN);  
   
 private: // compile.C  private: // compile.C
   
         Array& real_compile(COMPILE_PARAMS);          VClass& real_compile(COMPILE_PARAMS);
   
 private: // execute.C  private: // execute.C
   
           char *execute_static(VClass& vclass, String& method_name, bool return_cstr);
         void execute(const Array& ops);          void execute(const Array& ops);
   
         Value *get_element();          Value *get_element();
   
 };  private: // lang&raw 
           
           String::Untaint_lang lang;
   
 // core func  private: // lang&raw manipulation
 void core();  
           // TODO
   };
   
 #endif  #endif

Removed from v.1.11  
changed lines
  Added in v.1.27


E-mail: