Annotation of parser3/src/classes/xnode.h, revision 1.21

1.1       parser      1: /** @file
                      2:        Parser: @b dnode methods class - MDnode class decl.
                      3: 
1.21    ! paf         4:        Copyright (c) 2001-2004 ArtLebedev Group (http://www.artlebedev.com)
1.9       paf         5:        Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)
1.1       parser      6: */
                      7: 
                      8: #ifndef XNODE_H
                      9: #define XNODE_H
                     10: 
1.21    ! paf        11: static const char * const IDENT_XNODE_H="$Date: 2003/11/20 16:34:24 $";
1.1       parser     12: 
1.19      paf        13: class MXnode: public Methoded {
1.2       parser     14: public: // Value
                     15: 
                     16:        /// MXnode: +$const
1.19      paf        17:        Value* get_element(const String& aname, Value& aself, bool looking_up) {
1.14      paf        18:                // $method
1.19      paf        19:                if(Value* result=Methoded::get_element(aname, aself, looking_up))
1.2       parser     20:                        return result;
                     21: 
                     22:                // $const
1.19      paf        23:                if(Value* result=consts.get(aname))
1.2       parser     24:                        return result;
                     25:                
                     26:                return 0;
                     27:        }
                     28: 
                     29: 
1.1       parser     30: public: // VStateless_class
1.19      paf        31:        Value* create_new_value() { return new VXnode(0, 0); }
1.1       parser     32: 
                     33: public:
1.19      paf        34:        MXnode(const char* aname=0, VStateless_class* abase=0);
1.1       parser     35: 
                     36: public: // Methoded
                     37:        bool used_directly() { return true; }
1.2       parser     38: 
                     39: private:
                     40: 
1.19      paf        41:        HashStringValue consts;
1.1       parser     42: };
1.6       paf        43: 
1.19      paf        44: GdomeNode* as_node(MethodParams& params, int index, const char* msg);
1.1       parser     45: 
                     46: #endif

E-mail: