Annotation of parser3/src/types/pa_vclass.C, revision 1.1
1.1 ! paf 1: /*
! 2: Parser
! 3: Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com)
! 4: Author: Alexander Petrosyan <paf@design.ru>
! 5:
! 6: $Id: pa_vclass.C,v 1.4 2001/03/10 16:34:40 paf Exp $
! 7: */
! 8:
! 9: #include "pa_vclass.h"
! 10: #include "pa_vstring.h"
! 11:
! 12: Value *VClass::get_element(const String& aname) {
! 13: // $NAME=my name
! 14: if(aname==NAME_NAME)
! 15: return NEW VString(fclass_alias->name());
! 16: // $CLASS=my class=myself
! 17: if(aname==CLASS_NAME)
! 18: return fclass_alias;
! 19: // $BASE=my parent
! 20: if(aname==BASE_NAME)
! 21: return fclass_alias->base();
! 22: // $method=junction(self+class+method)
! 23: if(Junction *junction=get_junction(*this, aname))
! 24: return NEW VJunction(*junction);
! 25: // $field=static field
! 26: return get_field(aname);
! 27: }
! 28:
! 29: // object_class, operator_class: (field)=value - static values only
! 30: void VClass::put_element(const String& name, Value *value) {
! 31: set_field(name, value);
! 32: }
E-mail: