로딩중...
검색중...
일치하는것 없음
by::stelaVisitor 클래스 참조

Preorder visitor for the stela AST. 더 자세히 ...

#include <stelaVisitor.hpp>

by::stelaVisitor에 대한 상속 다이어그램 :
by::typeProvidable by::clonable by::stelaWriter

Public 멤버 함수

void work (stela &root)
 
virtual nbool onVisit (const stelaVisitInfo &i, valStela &it)
 
virtual void onLeave (const stelaVisitInfo &i, valStela &it)
 
virtual void visit (const stelaVisitInfo &i, stela &it)
 
virtual nbool onVisit (const stelaVisitInfo &i, stela &it)
 
virtual void onLeave (const stelaVisitInfo &i, stela &it)
 
virtual void onTraverse (const stelaVisitInfo &i, stela &it)
 
- by::typeProvidable(으)로부터 상속된 Public 멤버 함수
nbool operator== (const me &rhs) const
 
nbool operator!= (const me &rhs) const
 
virtual const typegetType () const =0
 
nbool isSub (const type &it) const
 
nbool isSub (const type *it) const BY_SIDE_FUNC(isSub)
 
nbool isSub (const me &it) const
 
nbool isSub (const me *it) const BY_SIDE_FUNC(isSub)
 
nbool isSuper (const type &it) const
 
nbool isSuper (const type *it) const BY_SIDE_FUNC(isSuper)
 
nbool isSuper (const me &it) const
 
nbool isSuper (const me *it) const BY_SIDE_FUNC(isSuper)
 
template<typename T >
nint isSub () const
 
template<typename T >
nint isSuper () const
 
template<typename T >
T * cast ()
 
template<typename T >
const T * cast () const BY_CONST_FUNC(cast< T >()) virtual void *cast(const type &to)
 Safe cast to target type using type hierarchy information
 
const void * cast (const type &to) const BY_CONST_FUNC(cast(to)) void *cast(const type *it) BY_SIDE_FUNC(cast)
 
- by::clonable(으)로부터 상속된 Public 멤버 함수
virtual me * clone () const =0
 
virtual me * cloneDeep () const
 
virtual void onCloneDeep (const me &from)
 

상세한 설명

Preorder visitor for the stela AST.

Mirrors byeol's visitor in miniature. Each visit goes through three phases:

  1. onVisit() — inspect the node; return false to skip the subtree.
  2. onTraverse() — descend into children (default: iterate the child map).
  3. onLeave() — post-visit hook.

Typed overloads (onVisit(..., valStela&)) are dispatched from each subclass's accept() (injected by the VISIT macro). A type-specific override that is not provided chains up to onVisit(..., stela&) via the super typedef, matching byeol's convention.

stela trees are pure (no shared subgraphs), so unlike byeol's visitor no visited-set is maintained.


이 클래스에 대한 문서화 페이지는 다음의 파일로부터 생성되었습니다.:
to Top