Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members  

ClassWalker Class Reference

#include <classwalk.h>

Inheritance diagram for ClassWalker:

Inheritance graph
[legend]
Collaboration diagram for ClassWalker:

Collaboration graph
[legend]
List of all members.

Public Methods

 ClassWalker (Parser *p)
 ClassWalker (Parser *p, Environment *e)
 ClassWalker (Environment *e)
 ClassWalker (Walker *w)
bool IsClassWalker ()
void InsertBeforeStatement (Ptree *)
void AppendAfterStatement (Ptree *)
void InsertBeforeToplevel (Ptree *)
void AppendAfterToplevel (Ptree *)
bool InsertDeclaration (Ptree *, Class *, Ptree *, void *)
void * LookupClientData (Class *, Ptree *)
PtreeGetInsertedPtree ()
PtreeGetAppendedPtree ()
PtreeTranslateMetaclassDecl (Ptree *decl)
PtreeTranslateClassSpec (Ptree *spec, Ptree *userkey, Ptree *class_def, Class *metaobject)
PtreeTranslateTemplateInstantiation (Ptree *spec, Ptree *userkey, Ptree *class_def, Class *metaobject)
PtreeConstructClass (Class *metaobject)
PtreeConstructAccessSpecifier (int access)
PtreeConstructMember (void *)
PtreeTranslateStorageSpecifiers (Ptree *)
PtreeTranslateTemplateFunction (Ptree *temp_def, Ptree *impl)
ClassMakeMetaobjectForCfunctions ()
PtreeTranslateFunctionImplementation (Ptree *)
PtreeMakeMemberDeclarator (bool record, void *, PtreeDeclarator *)
PtreeRecordArgsAndTranslateFbody (Class *, Ptree *args, Ptree *body)
PtreeTranslateFunctionBody (Ptree *)
PtreeTranslateBlock (Ptree *)
PtreeTranslateArgDeclList (bool, Ptree *, Ptree *)
PtreeTranslateInitializeArgs (PtreeDeclarator *, Ptree *)
PtreeTranslateAssignInitializer (PtreeDeclarator *, Ptree *)
PtreeTranslateUserAccessSpec (Ptree *)
PtreeTranslateAssign (Ptree *)
PtreeTranslateInfix (Ptree *)
PtreeTranslateUnary (Ptree *)
PtreeTranslateArray (Ptree *)
PtreeTranslatePostfix (Ptree *)
PtreeTranslateFuncall (Ptree *)
PtreeTranslateDotMember (Ptree *)
PtreeTranslateArrowMember (Ptree *)
PtreeTranslateThis (Ptree *)
PtreeTranslateVariable (Ptree *)
PtreeTranslateUserStatement (Ptree *)
PtreeTranslateStaticUserStatement (Ptree *)
PtreeTranslateNew2 (Ptree *, Ptree *, Ptree *, Ptree *, Ptree *, Ptree *, Ptree *)
PtreeTranslateDelete (Ptree *)

Private Methods

PtreeArrayRecordMembers (Ptree *, Ptree *, Class *)
void RecordMemberDeclaration (Ptree *mem, PtreeArray *tspec_list)
PtreeTranslateStorageSpecifiers2 (Ptree *rest)

Static Private Methods

ClassGetClassMetaobject (TypeInfo &)
PtreeCheckMemberEquiv (Ptree *, Ptree *)
PtreeCheckEquiv (Ptree *p, Ptree *q)

Private Attributes

PtreeArray before_statement
PtreeArray after_statement
PtreeArray before_toplevel
PtreeArray after_toplevel
PtreeArray inserted_declarations
ClientDataLinkclient_data

Constructor & Destructor Documentation

ClassWalker::ClassWalker Parser   p [inline]
 

Definition at line 23 of file classwalk.h.

References client_data, and nil.

ClassWalker::ClassWalker Parser   p,
Environment   e
[inline]
 

Definition at line 24 of file classwalk.h.

References client_data, and nil.

ClassWalker::ClassWalker Environment   e [inline]
 

Definition at line 26 of file classwalk.h.

References client_data, and nil.

ClassWalker::ClassWalker Walker   w [inline]
 

Definition at line 27 of file classwalk.h.

References client_data, and nil.


Member Function Documentation

void ClassWalker::AppendAfterStatement Ptree  
 

Definition at line 48 of file classwalk.cc.

References after_statement, and PtreeArray::Append().

void ClassWalker::AppendAfterToplevel Ptree  
 

Definition at line 58 of file classwalk.cc.

References after_toplevel, and PtreeArray::Append().

Ptree* ClassWalker::CheckEquiv Ptree   p,
Ptree   q
[inline, static, private]
 

Definition at line 87 of file classwalk.h.

References Ptree::Equiv().

Referenced by TranslateArray(), TranslateArrowMember(), TranslateAssign(), TranslateDelete(), TranslateDotMember(), TranslateFuncall(), TranslateInfix(), TranslateNew2(), TranslatePostfix(), and TranslateUnary().

Ptree * ClassWalker::CheckMemberEquiv Ptree  ,
Ptree  
[static, private]
 

Definition at line 735 of file classwalk.cc.

References Ptree::Car(), Ptree::Cdr(), Ptree::Equiv(), and Ptree::IsLeaf().

Referenced by TranslateAssign(), TranslateFuncall(), and TranslatePostfix().

Ptree * ClassWalker::ConstructAccessSpecifier int    access
 

Definition at line 296 of file classwalk.cc.

References Class::colon_t, Ptree::List(), Class::Private, Class::private_t, Class::Protected, Class::protected_t, Class::Public, and Class::public_t.

Referenced by ClassBodyWalker::AppendNewMembers().

Ptree * ClassWalker::ConstructClass Class   metaobject
 

Definition at line 189 of file classwalk.cc.

References Ptree::Car(), Ptree::Cons(), Class::Definition(), Class::GetBaseClasses(), Class::GetClassSpecifier(), Ptree::GetEncodedName(), Class::GetNewName(), Ptree::List(), nil, Ptree::Nth(), Ptree::Second(), Class::semicolon_t, ClassBodyWalker::TranslateClassBody(), and Class::TranslateClassHasFinished().

Ptree * ClassWalker::ConstructMember void *   
 

Definition at line 315 of file classwalk.cc.

References ChangedMemberList::Cmem::body, Walker::ChangeScope(), Ptree::Cons(), ChangedMemberList::Cmem::declarator, ChangedMemberList::Cmem::def, Environment::DontRecordDeclarator(), Walker::env, Walker::ExitScope(), FALSE, Ptree::First(), Ptree::IsA(), Ptree::List(), MakeMemberDeclarator(), Walker::NewScope(), nil, ntDeclarator, Ptree::Nth(), Walker::RestoreScope(), Ptree::Second(), Class::semicolon_t, Ptree::Third(), TranslateFunctionBody(), TranslateStorageSpecifiers(), Walker::TranslateTypespecifier(), and TRUE.

Referenced by ClassBodyWalker::AppendNewMembers().

Ptree * ClassWalker::GetAppendedPtree  
 

Definition at line 110 of file classwalk.cc.

References after_statement, after_toplevel, PtreeArray::All(), PtreeArray::Clear(), Ptree::Nconc(), nil, and PtreeArray::Number().

Referenced by ParseOpencxx().

Class * ClassWalker::GetClassMetaobject TypeInfo   [static, private]
 

Definition at line 24 of file classwalk.cc.

References TypeInfo::Dereference(), TypeInfo::IsClass(), TypeInfo::IsReferenceType(), and nil.

Referenced by TranslateArray(), TranslateArrowMember(), TranslateAssign(), TranslateDelete(), TranslateDotMember(), TranslateFuncall(), TranslateInfix(), TranslateNew2(), TranslatePostfix(), TranslateStaticUserStatement(), TranslateThis(), TranslateUnary(), TranslateUserStatement(), and TranslateVariable().

Ptree * ClassWalker::GetInsertedPtree  
 

Definition at line 91 of file classwalk.cc.

References PtreeArray::All(), before_statement, before_toplevel, PtreeArray::Clear(), client_data, inserted_declarations, Ptree::Nconc(), nil, and PtreeArray::Number().

Referenced by ParseOpencxx().

void ClassWalker::InsertBeforeStatement Ptree  
 

Definition at line 43 of file classwalk.cc.

References PtreeArray::Append(), and before_statement.

void ClassWalker::InsertBeforeToplevel Ptree  
 

Definition at line 53 of file classwalk.cc.

References PtreeArray::Append(), and before_toplevel.

bool ClassWalker::InsertDeclaration Ptree  ,
Class  ,
Ptree  ,
void *   
 

Definition at line 63 of file classwalk.cc.

References PtreeArray::Append(), client_data, ClassWalker::ClientDataLink::data, FALSE, inserted_declarations, ClassWalker::ClientDataLink::key, LookupClientData(), ClassWalker::ClientDataLink::metaobject, ClassWalker::ClientDataLink::next, nil, and TRUE.

bool ClassWalker::IsClassWalker   [virtual]
 

Reimplemented from Walker.

Definition at line 38 of file classwalk.cc.

References TRUE.

void * ClassWalker::LookupClientData Class  ,
Ptree  
 

Definition at line 82 of file classwalk.cc.

References client_data, ClassWalker::ClientDataLink::data, Ptree::Eq(), ClassWalker::ClientDataLink::key, ClassWalker::ClientDataLink::metaobject, ClassWalker::ClientDataLink::next, and nil.

Referenced by InsertDeclaration().

Ptree * ClassWalker::MakeMemberDeclarator bool    record,
void *   ,
PtreeDeclarator  
 

Definition at line 496 of file classwalk.cc.

References Ptree::Append(), ChangedMemberList::Cmem::arg_name_filled, ChangedMemberList::Cmem::args, Ptree::Car(), Ptree::Cdr(), Walker::env, Ptree::Eq(), FALSE, Walker::GetArgDeclList(), ChangedMemberList::Cmem::init, Ptree::IsLeaf(), Ptree::Last(), ChangedMemberList::Cmem::name, PtreeDeclarator::Name(), nil, ChangedMemberList::Cmem::removed, Ptree::Subst(), Walker::TranslateArgDeclList2(), and TRUE.

Referenced by ConstructMember(), ClassBodyWalker::TranslateDeclarator(), TranslateFunctionImplementation(), and TranslateTemplateFunction().

Class * ClassWalker::MakeMetaobjectForCfunctions  
 

Definition at line 470 of file classwalk.cc.

References Class::class_t, Class::empty_block_t, Walker::env, Class::for_c_functions, Encoding::Get(), Ptree::List(), Class::metaclass_for_c_functions, MopErrorMessage2(), opcxx_ListOfMetaclass::New(), nil, Class::SetEnvironment(), and Encoding::SimpleName().

Referenced by TranslateFunctionImplementation().

Ptree * ClassWalker::RecordArgsAndTranslateFbody Class  ,
Ptree   args,
Ptree   body
[virtual]
 

Reimplemented from Walker.

Definition at line 556 of file classwalk.cc.

References Walker::ChangeScope(), Walker::env, Walker::ExitScope(), FALSE, Class::GetEnvironment(), Walker::NewScope(), nil, Walker::RestoreScope(), Walker::TranslateArgDeclList2(), TranslateFunctionBody(), and TRUE.

void ClassWalker::RecordMemberDeclaration Ptree   mem,
PtreeArray   tspec_list
[private]
 

Definition at line 269 of file classwalk.cc.

References PtreeArray::Append(), Ptree::Car(), Ptree::Cdr(), Walker::env, Ptree::IsA(), Ptree::IsLeaf(), nil, ntDeclarator, Environment::RecordDeclarator(), Ptree::Second(), Ptree::Third(), and Walker::TranslateTypespecifier().

Referenced by RecordMembers().

PtreeArray * ClassWalker::RecordMembers Ptree  ,
Ptree  ,
Class  
[private]
 

Definition at line 218 of file classwalk.cc.

References PtreeArray::Append(), Ptree::Car(), Ptree::Cdr(), Walker::env, Walker::ExitScope(), Walker::NewScope(), nil, ntDeclaration, Ptree::Nth(), ntMetaclassDecl, ntTemplateDecl, ntTemplateInstantiation, ntTypedef, ntUsing, PtreeArray::Number(), Walker::RecordBaseclassEnv(), RecordMemberDeclaration(), Environment::RecordMetaclassName(), Environment::RecordTypedefName(), Ptree::Second(), Ptree::Third(), Walker::TranslateTypespecifier(), and Ptree::What().

Referenced by TranslateClassSpec().

Ptree * ClassWalker::TranslateArgDeclList bool   ,
Ptree  ,
Ptree  
[virtual]
 

Reimplemented from Walker.

Definition at line 645 of file classwalk.cc.

References Walker::env, FALSE, Walker::TranslateArgDeclList2(), and TRUE.

Ptree * ClassWalker::TranslateArray Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 824 of file classwalk.cc.

References Ptree::Car(), Ptree::Cdr(), CheckEquiv(), Walker::env, GetClassMetaobject(), nil, Ptree::ShallowSubst(), Ptree::Third(), Walker::Translate(), Class::TranslateSubscript(), and Walker::Typeof().

Ptree * ClassWalker::TranslateArrowMember Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 967 of file classwalk.cc.

References Ptree::Car(), Ptree::Cdr(), CheckEquiv(), TypeInfo::Dereference(), Walker::env, GetClassMetaobject(), nil, Ptree::Second(), Ptree::Third(), Walker::Translate(), Class::TranslateMemberRead(), and Walker::Typeof().

Ptree * ClassWalker::TranslateAssign Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 684 of file classwalk.cc.

References CheckEquiv(), CheckMemberEquiv(), TypeInfo::Dereference(), Walker::env, Ptree::Eq(), Ptree::First(), GetClassMetaobject(), Ptree::IsA(), Environment::IsClassEnvironment(), Environment::IsMember(), Ptree::List(), nil, ntArrowMemberExpr, ntDotMemberExpr, Ptree::Second(), Ptree::Third(), Walker::Translate(), Class::TranslateAssign(), Class::TranslateMemberWrite(), and Walker::Typeof().

Ptree * ClassWalker::TranslateAssignInitializer PtreeDeclarator  ,
Ptree  
[virtual]
 

Reimplemented from Walker.

Reimplemented in ClassBodyWalker.

Definition at line 661 of file classwalk.cc.

References Ptree::Car(), TypeInfo::ClassMetaobject(), Walker::env, Ptree::List(), Environment::Lookup(), PtreeDeclarator::Name(), nil, Ptree::Second(), Walker::Translate(), and Class::TranslateInitializer().

Referenced by ClassBodyWalker::TranslateAssignInitializer().

Ptree * ClassWalker::TranslateBlock Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 597 of file classwalk.cc.

References after_statement, PtreeArray::All(), PtreeArray::Append(), before_statement, Ptree::Car(), Ptree::Cdr(), PtreeArray::Clear(), Walker::ExitScope(), FALSE, Ptree::First(), Walker::NewScope(), nil, PtreeArray::Number(), Ptree::Second(), Ptree::Third(), Walker::Translate(), TRUE, and uint.

Ptree * ClassWalker::TranslateClassSpec Ptree   spec,
Ptree   userkey,
Ptree   class_def,
Class   metaobject
[virtual]
 

Reimplemented from Walker.

Definition at line 130 of file classwalk.cc.

References Ptree::Car(), Ptree::Cdr(), Ptree::Cons(), Walker::env, Class::GetBaseClasses(), Class::GetClassSpecifier(), Ptree::GetEncodedName(), Class::GetNewName(), Ptree::List(), nil, Ptree::Nth(), RecordMembers(), Class::removed, Ptree::Second(), Ptree::Third(), Class::TranslateClass(), ClassBodyWalker::TranslateClassBody(), and Class::TranslateClassHasFinished().

Ptree * ClassWalker::TranslateDelete Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 1127 of file classwalk.cc.

References Ptree::Car(), Ptree::Cdr(), CheckEquiv(), TypeInfo::Dereference(), Walker::env, GetClassMetaobject(), Ptree::Last(), Ptree::Length(), nil, Ptree::ShallowSubst(), Walker::Translate(), Class::TranslateDelete(), and Walker::Typeof().

Ptree * ClassWalker::TranslateDotMember Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 946 of file classwalk.cc.

References Ptree::Car(), Ptree::Cdr(), CheckEquiv(), Walker::env, GetClassMetaobject(), nil, Ptree::Second(), Ptree::Third(), Walker::Translate(), Class::TranslateMemberRead(), and Walker::Typeof().

Ptree * ClassWalker::TranslateFuncall Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 893 of file classwalk.cc.

References Ptree::Car(), Ptree::Cdr(), CheckEquiv(), CheckMemberEquiv(), TypeInfo::Dereference(), Walker::env, Ptree::Eq(), Ptree::First(), Class::for_c_functions, GetClassMetaobject(), Ptree::IsA(), Environment::IsClassEnvironment(), Environment::IsMember(), nil, ntArrowMemberExpr, ntDotMemberExpr, Ptree::Second(), Ptree::Third(), Walker::Translate(), Walker::TranslateArguments(), Class::TranslateFunctionCall(), Class::TranslateMemberCall(), and Walker::Typeof().

Ptree * ClassWalker::TranslateFunctionBody Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 576 of file classwalk.cc.

References PtreeArray::All(), PtreeArray::Clear(), client_data, Ptree::First(), inserted_declarations, Ptree::IsLeaf(), Ptree::Nconc(), nil, PtreeArray::Number(), Ptree::Second(), Ptree::Third(), and Walker::Translate().

Referenced by ConstructMember(), RecordArgsAndTranslateFbody(), TranslateFunctionImplementation(), and ClassBodyWalker::TranslateFunctionImplementation().

Ptree * ClassWalker::TranslateFunctionImplementation Ptree   [virtual]
 

Reimplemented from Walker.

Reimplemented in ClassBodyWalker.

Definition at line 415 of file classwalk.cc.

References ChangedMemberList::Cmem::body, Walker::ChangeScope(), ChangedMemberList::Copy(), Walker::env, Walker::ExitScope(), Ptree::First(), Environment::IsClassEnvironment(), Ptree::List(), MakeMemberDeclarator(), MakeMetaobjectForCfunctions(), Class::metaclass_for_c_functions, Walker::NewScope(), nil, Ptree::Nth(), Environment::RecordDeclarator(), Walker::RestoreScope(), Ptree::Second(), Ptree::Third(), Walker::TranslateDeclarator(), TranslateFunctionBody(), Class::TranslateMemberFunction(), TranslateStorageSpecifiers(), Walker::TranslateTypespecifier(), TRUE, and Class::Undefined.

Ptree * ClassWalker::TranslateInfix Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 745 of file classwalk.cc.

References CheckEquiv(), Walker::env, Ptree::First(), GetClassMetaobject(), Ptree::List(), nil, Ptree::Second(), Ptree::Third(), Walker::Translate(), Class::TranslateBinary(), and Walker::Typeof().

Ptree * ClassWalker::TranslateInitializeArgs PtreeDeclarator  ,
Ptree  
[virtual]
 

Reimplemented from Walker.

Reimplemented in ClassBodyWalker.

Definition at line 650 of file classwalk.cc.

References TypeInfo::ClassMetaobject(), Walker::env, Environment::Lookup(), PtreeDeclarator::Name(), nil, Walker::TranslateArguments(), and Class::TranslateInitializer().

Referenced by ClassBodyWalker::TranslateInitializeArgs().

Ptree * ClassWalker::TranslateMetaclassDecl Ptree   decl [virtual]
 

Reimplemented from Walker.

Reimplemented in ClassBodyWalker.

Definition at line 124 of file classwalk.cc.

References Walker::env, nil, and Environment::RecordMetaclassName().

Ptree * ClassWalker::TranslateNew2 Ptree  ,
Ptree  ,
Ptree  ,
Ptree  ,
Ptree  ,
Ptree  ,
Ptree  
[virtual]
 

Reimplemented from Walker.

Definition at line 1077 of file classwalk.cc.

References Ptree::Car(), Ptree::Cdr(), CheckEquiv(), Walker::env, Ptree::Eq(), Walker::ErrorMessage(), GetClassMetaobject(), Ptree::GetEncodedType(), nil, Ptree::Second(), TypeInfo::Set(), Ptree::ShallowSubst(), Walker::TranslateArguments(), Class::TranslateNew(), and Walker::TranslateNew3().

Ptree * ClassWalker::TranslatePostfix Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 847 of file classwalk.cc.

References Ptree::Car(), Ptree::Cdr(), CheckEquiv(), CheckMemberEquiv(), TypeInfo::Dereference(), Walker::env, Ptree::Eq(), Ptree::First(), GetClassMetaobject(), Ptree::IsA(), Environment::IsClassEnvironment(), Environment::IsMember(), nil, ntArrowMemberExpr, ntDotMemberExpr, Ptree::Second(), Ptree::Third(), Walker::Translate(), Class::TranslatePostfix(), Class::TranslatePostfixOnMember(), and Walker::Typeof().

Ptree * ClassWalker::TranslateStaticUserStatement Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 1050 of file classwalk.cc.

References Walker::env, Walker::ErrorMessage(), Walker::ExitScope(), FALSE, Ptree::First(), GetClassMetaobject(), Ptree::IsA(), Ptree::ListTail(), Environment::Lookup(), Walker::NewScope(), nil, Ptree::Second(), Ptree::Third(), Walker::TranslateArgDeclList2(), Class::TranslateStaticUserStatement(), TRUE, and UserKeyword2.

Ptree * ClassWalker::TranslateStorageSpecifiers Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 361 of file classwalk.cc.

References TranslateStorageSpecifiers2().

Referenced by ConstructMember(), TranslateFunctionImplementation(), and ClassBodyWalker::TranslateFunctionImplementation().

Ptree * ClassWalker::TranslateStorageSpecifiers2 Ptree   rest [private]
 

Definition at line 366 of file classwalk.cc.

References Ptree::Car(), Ptree::Cdr(), Ptree::Cons(), Ptree::IsA(), nil, and ntUserdefKeyword.

Referenced by TranslateStorageSpecifiers().

Ptree * ClassWalker::TranslateTemplateFunction Ptree   temp_def,
Ptree   impl
[virtual]
 

Reimplemented from Walker.

Definition at line 383 of file classwalk.cc.

References Walker::ChangeScope(), ChangedMemberList::Copy(), Walker::env, Walker::ExitScope(), Ptree::First(), Environment::IsClassEnvironment(), Ptree::List(), MakeMemberDeclarator(), Walker::NewScope(), nil, Ptree::Nth(), Environment::RecordTemplateFunction(), Walker::RestoreScope(), Ptree::Second(), Ptree::Third(), Class::TranslateMemberFunction(), TRUE, and Class::Undefined.

Ptree * ClassWalker::TranslateTemplateInstantiation Ptree   spec,
Ptree   userkey,
Ptree   class_def,
Class   metaobject
[virtual]
 

Reimplemented from Walker.

Definition at line 168 of file classwalk.cc.

References Class::AcceptTemplate(), Walker::env, nil, and TemplateClass::TranslateInstantiation().

Ptree * ClassWalker::TranslateThis Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 989 of file classwalk.cc.

References TypeInfo::Dereference(), Walker::env, GetClassMetaobject(), nil, Class::TranslatePointer(), and Walker::Typeof().

Ptree * ClassWalker::TranslateUnary Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 774 of file classwalk.cc.

References Ptree::Car(), CheckEquiv(), TypeInfo::Dereference(), Walker::env, Ptree::Eq(), Ptree::Equiv(), Ptree::First(), GetClassMetaobject(), Ptree::IsA(), Environment::IsClassEnvironment(), Environment::IsMember(), Ptree::Length(), Ptree::List(), nil, ntArrowMemberExpr, ntDotMemberExpr, Ptree::Second(), Ptree::Third(), Walker::Translate(), Class::TranslateUnary(), Class::TranslateUnaryOnMember(), and Walker::Typeof().

Ptree * ClassWalker::TranslateUserAccessSpec Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 679 of file classwalk.cc.

References nil.

Ptree * ClassWalker::TranslateUserStatement Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 1022 of file classwalk.cc.

References TypeInfo::Dereference(), Walker::env, Ptree::Eq(), Walker::ErrorMessage(), Walker::ExitScope(), FALSE, Ptree::First(), GetClassMetaobject(), Ptree::IsA(), Ptree::ListTail(), Walker::NewScope(), nil, Ptree::Second(), Ptree::Third(), Walker::TranslateArgDeclList2(), Class::TranslateUserStatement(), TRUE, Walker::Typeof(), and UserKeyword2.

Ptree * ClassWalker::TranslateVariable Ptree   [virtual]
 

Reimplemented from Walker.

Definition at line 1001 of file classwalk.cc.

References TypeInfo::Dereference(), Walker::env, GetClassMetaobject(), Environment::IsClassEnvironment(), Environment::IsMember(), TypeInfo::IsPointerType(), nil, Class::TranslateMemberRead(), Class::TranslatePointer(), and Walker::Typeof().


Member Data Documentation

PtreeArray ClassWalker::after_statement [private]
 

Definition at line 99 of file classwalk.h.

Referenced by AppendAfterStatement(), GetAppendedPtree(), and TranslateBlock().

PtreeArray ClassWalker::after_toplevel [private]
 

Definition at line 100 of file classwalk.h.

Referenced by AppendAfterToplevel(), and GetAppendedPtree().

PtreeArray ClassWalker::before_statement [private]
 

Definition at line 99 of file classwalk.h.

Referenced by GetInsertedPtree(), InsertBeforeStatement(), and TranslateBlock().

PtreeArray ClassWalker::before_toplevel [private]
 

Definition at line 100 of file classwalk.h.

Referenced by GetInsertedPtree(), and InsertBeforeToplevel().

ClientDataLink* ClassWalker::client_data [private]
 

Definition at line 102 of file classwalk.h.

Referenced by ClassWalker(), GetInsertedPtree(), InsertDeclaration(), LookupClientData(), and TranslateFunctionBody().

PtreeArray ClassWalker::inserted_declarations [private]
 

Definition at line 101 of file classwalk.h.

Referenced by GetInsertedPtree(), InsertDeclaration(), and TranslateFunctionBody().


The documentation for this class was generated from the following files:
Generated on Mon Feb 10 17:35:26 2003 for VFiasco Semantics Compiler by doxygen1.2.15