Diff for /parser3/src/include/Attic/pa_vclass.h between versions 1.8 and 1.12

version 1.8, 2001/02/23 21:59:07 version 1.12, 2001/02/24 13:21:58
Line 24  public: // Value Line 24  public: // Value
                 // $method=junction(this+method)                  // $method=junction(this+method)
                 if(Method *method=static_cast<Method *>(methods.get(name))) {                  if(Method *method=static_cast<Method *>(methods.get(name))) {
                         Junction& j=*NEW Junction(pool(),                           Junction& j=*NEW Junction(pool(), 
                                 method,                                  *this,
                                 this,this,this,0);                                  method,0,0,0,0);
   
                         return NEW VJunction(j);                          return NEW VJunction(j);
                 }                  }
Line 47  public: // Value Line 47  public: // Value
                 if(this==&ancestor)                  if(this==&ancestor)
                         return true; // it's me                          return true; // it's me
   
                 return parents_hash.get(ancestor.name())!=0;                  return parents_hash.get(*ancestor.name())!=0;
         }          }
   
 public: // usage  public: // usage
           
         const String& name() const { return *fname; }  
   
 public: // creation          VClass(Pool& apool, const Array& immediate_parents) : 
   
         VClass(Pool& apool, String& aname, const Array& immediate_parents) :   
                 Value(apool),                   Value(apool), 
                 fname(&aname),  
                 STATIC(apool),                  STATIC(apool),
                 methods(apool),                  methods(apool),
                 parents(apool),                  parents(apool),
Line 66  public: // creation Line 61  public: // creation
                 // TODO: monkey immediate_parents                   // TODO: monkey immediate_parents 
                         // fill parents & parents_hash                          // fill parents & parents_hash
         }          }
           
         void rename(String *aname) { fname=aname; }  
   
         void add_method(const String& name, Method& method) {          void add_method(const String& name, Method& method) {
                 methods.put(name, &method);                  methods.put(name, &method);
         }          }
         void add_parent(VClass& parent) {          void add_parent(VClass& parent) {
                 parents+=&parent;                  parents+=&parent;
                 parents_hash.put(parent.name(), &parent);                  parents_hash.put(*parent.name(), &parent);
         }          }
   
 private:  public: //usage
   
         String *fname;  
         VHash STATIC;          VHash STATIC;
   
   private:
   
         Hash methods;          Hash methods;
         Array parents;  Hash parents_hash;          Array parents;  Hash parents_hash;
 };  };

Removed from v.1.8  
changed lines
  Added in v.1.12


E-mail: