--- parser3/src/classes/classes.h 2017/02/07 22:00:25 1.40 +++ parser3/src/classes/classes.h 2026/03/01 00:51:19 1.47 @@ -1,14 +1,14 @@ /** @file Parser: @b Methoded class decl. - Copyright (c) 2001-2017 Art. Lebedev Studio (http://www.artlebedev.com) - Author: Alexandr Petrosian (http://paf.design.ru) + Copyright (c) 2001-2024 Art. Lebedev Studio (http://www.artlebedev.com) + Authors: Konstantin Morshnev , Alexandr Petrosian */ #ifndef CLASSES_H #define CLASSES_H -#define IDENT_CLASSES_H "$Id: classes.h,v 1.40 2017/02/07 22:00:25 moko Exp $" +#define IDENT_CLASSES_H "$Id: classes.h,v 1.47 2026/03/01 00:51:19 moko Exp $" // include @@ -33,8 +33,6 @@ public: // Methoded virtual bool used_directly() { return true; } /// use this method to read parameters from root "auto.p"; access r.main_class virtual void configure_admin(Request& ) {} - /// use this method to read parameters from 'MAIN' class; access r.main_class - virtual void configure_user(Request& ) {} private: @@ -69,6 +67,11 @@ Methoded_array& methoded_array(); // defines #define DECLARE_CLASS_VAR(name, self) \ - Methoded* name##_class=self + Methoded* name##_class=NULL; \ + Methoded* name##_instance(){ if(!name##_class){ name##_class=self; } return name##_class; } + +#define ADD_CLASS_VAR(name) \ + Methoded* name##_instance(); \ + *this+=name##_instance(); #endif