Annotation of parser3/src/include/pa_methoded.h, revision 1.1
1.1 ! paf 1: /** @file
! 2: Parser: @b Methoded class decl.
! 3:
! 4: Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com)
! 5:
! 6: Author: Alexander Petrosyan <paf@design.ru> (http://design.ru/paf)
! 7:
! 8: $Id: classes.h,v 1.3 2001/04/28 10:58:25 paf Exp $
! 9: */
! 10:
! 11: #ifndef PA_METHODED_H
! 12: #define PA_METHODED_H
! 13:
! 14: #include "pa_vstateless_class.h"
! 15: #include "pa_array.h"
! 16:
! 17: /** Pure virtual base for configurable Methoded descendants
! 18: */
! 19: class Methoded : public VStateless_class {
! 20: public: // Value
! 21:
! 22: /// all: for error reporting after fail(), etc
! 23: const char *type() const { return "m_base"; }
! 24:
! 25: public: // Methoded
! 26:
! 27: virtual bool used_directly() =0;
! 28: virtual void configure_admin(Request& r) {}
! 29: virtual void configure_user(Request& r) {}
! 30:
! 31: public: // usage
! 32:
! 33: Methoded(Pool& pool) : VStateless_class(pool) {
! 34: }
! 35:
! 36: void register_directly_used(Request& r);
! 37:
! 38: };
! 39:
! 40:
! 41: class Methoded_array : public Array {
! 42: public:
! 43: Methoded_array(Pool& pool);
! 44:
! 45: public: // Methoded for_each-es
! 46: void configure_admin(Request& r);
! 47: void configure_user(Request& r);
! 48: void register_directly_used(Request& r);
! 49: };
! 50:
! 51: extern Methoded_array *methoded_array;
! 52: void init_methoded_array(Pool& pool);
! 53:
! 54: #endif
E-mail: