Annotation of parser3/src/types/pa_vcookie.h, revision 1.33

1.6       paf         1: /** @file
1.8       paf         2:        Parser: @b cookie class decls.
1.6       paf         3: 
1.31      paf         4:        Copyright (c) 2001-2005 ArtLebedev Group (http://www.artlebedev.com)
1.15      paf         5:        Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)
1.1       paf         6: */
                      7: 
                      8: #ifndef PA_VCOOKIE_H
                      9: #define PA_VCOOKIE_H
1.17      paf        10: 
1.33    ! misha      11: static const char * const IDENT_VCOOKIE_H="$Date: 2007/02/06 16:22:08 $";
1.1       paf        12: 
1.7       paf        13: #include "pa_hash.h"
1.3       paf        14: #include "pa_common.h"
1.5       paf        15: #include "pa_value.h"
1.24      paf        16: #include "pa_sapi.h"
1.9       paf        17: 
                     18: #define COOKIE_CLASS_NAME "cookie"
1.1       paf        19: 
1.33    ! misha      20: // forwards
        !            21: class Request_info;
        !            22: class Request_charsets;
        !            23: 
1.6       paf        24: /// cookie class
1.24      paf        25: class VCookie: public Value {
                     26: 
1.33    ! misha      27:        HashStringValue before;
        !            28:        HashStringValue after;
        !            29:        HashStringValue deleted;
1.24      paf        30: 
1.1       paf        31: public: // Value
                     32:        
1.32      misha      33:        override const char* type() const { return COOKIE_CLASS_NAME; }
1.16      paf        34:        /// VCookie: 0
1.24      paf        35:        override VStateless_class *get_class() { return 0; }
1.1       paf        36: 
1.11      parser     37:        // cookie: CLASS,method,field
1.24      paf        38:        override Value* get_element(const String& aname, Value& aself, bool /*looking_up*/);
1.1       paf        39:        // cookie: field
1.30      paf        40:        override const VJunction* put_element(Value& self, const String& name, Value* value, bool replace);
1.1       paf        41: 
                     42: public: // usage
                     43: 
1.33    ! misha      44:        VCookie(Request_charsets& acharsets, Request_info& arequest_info);
1.24      paf        45:        void output_result(SAPI_Info& sapi_info);
1.1       paf        46: 
1.33    ! misha      47: private:
        !            48:        Request_charsets& fcharsets;
        !            49:        Request_info& frequest_info;
        !            50: 
        !            51: private:
        !            52:        Charset* filled_source;
        !            53:        Charset* filled_client;
        !            54: 
        !            55:        bool should_refill();
        !            56:        void refill();
1.1       paf        57: };
                     58: 
                     59: #endif

E-mail: