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

1.6       paf         1: /** @file
1.8       paf         2:        Parser: @b cookie class decls.
1.6       paf         3: 
1.44    ! moko        4:        Copyright (c) 2001-2023 Art. Lebedev Studio (http://www.artlebedev.com)
        !             5:        Authors: Konstantin Morshnev <moko@design.ru>, Alexandr Petrosian <paf@design.ru>
1.1       paf         6: */
                      7: 
                      8: #ifndef PA_VCOOKIE_H
                      9: #define PA_VCOOKIE_H
1.17      paf        10: 
1.44    ! moko       11: #define IDENT_PA_VCOOKIE_H "$Id: pa_vcookie.h,v 1.43 2020/12/15 17:10:39 moko Exp $"
1.1       paf        12: 
1.7       paf        13: #include "pa_hash.h"
1.3       paf        14: #include "pa_common.h"
1.41      moko       15: #include "pa_vstateless_class.h"
1.24      paf        16: #include "pa_sapi.h"
1.9       paf        17: 
1.33      misha      18: // forwards
                     19: class Request_info;
                     20: class Request_charsets;
                     21: 
1.6       paf        22: /// cookie class
1.41      moko       23: class VCookie: public VStateless_class {
1.24      paf        24: 
1.33      misha      25:        HashStringValue before;
                     26:        HashStringValue after;
                     27:        HashStringValue deleted;
1.24      paf        28: 
1.1       paf        29: public: // Value
                     30:        
1.41      moko       31:        override const char* type() const { return "cookie"; }
1.1       paf        32: 
1.39      misha      33:        // cookie: field
1.36      misha      34:        override Value* get_element(const String& aname);
1.1       paf        35:        // cookie: field
1.38      moko       36:        override const VJunction* put_element(const String& name, Value* value);
1.1       paf        37: 
                     38: public: // usage
                     39: 
1.33      misha      40:        VCookie(Request_charsets& acharsets, Request_info& arequest_info);
1.24      paf        41:        void output_result(SAPI_Info& sapi_info);
1.1       paf        42: 
1.33      misha      43: private:
                     44:        Request_charsets& fcharsets;
                     45:        Request_info& frequest_info;
                     46: 
                     47: private:
                     48:        Charset* filled_source;
                     49:        Charset* filled_client;
                     50: 
                     51:        bool should_refill();
                     52:        void refill();
1.1       paf        53: };
                     54: 
                     55: #endif

E-mail: