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: