libNuML 1.1.1
Library for reading / writing NuML documents
NUMLVisitor Class Reference

Implementation of the Visitor design pattern, for operations on NUML objects. More...

#include <NUMLVisitor.h>

Public Member Functions

virtual ~NUMLVisitor ()
 
virtual void visit (const NUMLDocument &x)
 
virtual void visit (const NUMLList &x, NUMLTypeCode_t type)
 
virtual bool visit (const NMBase &x)
 
virtual bool visit (const OntologyTerm &x)
 
virtual bool visit (const ResultComponent &x)
 
virtual bool visit (const Dimension &x)
 
virtual bool visit (const CompositeValue &x)
 
virtual bool visit (const AtomicValue &x)
 
virtual bool visit (const Tuple &x)
 
virtual bool visit (const DimensionDescription &x)
 
virtual bool visit (const CompositeDescription &x)
 
virtual bool visit (const AtomicDescription &x)
 
virtual bool visit (const TupleDescription &x)
 
virtual void leave (const NUMLDocument &x)
 
virtual void leave (const OntologyTerm &x)
 
virtual void leave (const Tuple &x)
 
virtual void leave (const ResultComponent &x)
 
virtual void leave (const Dimension &x)
 
virtual void leave (const DimensionDescription &x)
 
virtual void leave (const CompositeValue &x)
 
virtual void leave (const AtomicValue &x)
 
virtual void leave (const CompositeDescription &x)
 
virtual void leave (const TupleDescription &x)
 
virtual void leave (const AtomicDescription &x)
 
virtual void leave (const NUMLList &x, NUMLTypeCode_t type)
 

Detailed Description

Implementation of the Visitor design pattern, for operations on NUML objects.

visitor for numl classes

The Visitor Pattern (Design Patterns, Gamma et al. ) allows you to add operations to an established class hierarchy without actually modifying the classes in heirarchy. For computer science types, C++ implementations of Visitor are a form of double-dispatch.

For convenience, an NUMLVisitor couples the notion of visitation with NUML object tree traversal.

Constructor & Destructor Documentation

◆ ~NUMLVisitor()

LIBNUML_CPP_NAMESPACE_BEGIN NUMLVisitor::~NUMLVisitor ( )
virtual

Member Function Documentation

◆ leave() [1/12]

void NUMLVisitor::leave ( const AtomicDescription x)
virtual

◆ leave() [2/12]

void NUMLVisitor::leave ( const AtomicValue x)
virtual

◆ leave() [3/12]

void NUMLVisitor::leave ( const CompositeDescription x)
virtual

◆ leave() [4/12]

void NUMLVisitor::leave ( const CompositeValue x)
virtual

◆ leave() [5/12]

void NUMLVisitor::leave ( const Dimension x)
virtual

◆ leave() [6/12]

void NUMLVisitor::leave ( const DimensionDescription x)
virtual

◆ leave() [7/12]

void NUMLVisitor::leave ( const NUMLDocument x)
virtual

◆ leave() [8/12]

void NUMLVisitor::leave ( const NUMLList x,
NUMLTypeCode_t  type 
)
virtual

◆ leave() [9/12]

void NUMLVisitor::leave ( const OntologyTerm x)
virtual

◆ leave() [10/12]

void NUMLVisitor::leave ( const ResultComponent x)
virtual

◆ leave() [11/12]

void NUMLVisitor::leave ( const Tuple x)
virtual

◆ leave() [12/12]

void NUMLVisitor::leave ( const TupleDescription x)
virtual

◆ visit() [1/13]

bool NUMLVisitor::visit ( const AtomicDescription x)
virtual

◆ visit() [2/13]

bool NUMLVisitor::visit ( const AtomicValue x)
virtual

◆ visit() [3/13]

bool NUMLVisitor::visit ( const CompositeDescription x)
virtual

◆ visit() [4/13]

bool NUMLVisitor::visit ( const CompositeValue x)
virtual

◆ visit() [5/13]

bool NUMLVisitor::visit ( const Dimension x)
virtual

◆ visit() [6/13]

bool NUMLVisitor::visit ( const DimensionDescription x)
virtual

◆ visit() [7/13]

bool NUMLVisitor::visit ( const NMBase x)
virtual

◆ visit() [8/13]

void NUMLVisitor::visit ( const NUMLDocument x)
virtual

◆ visit() [9/13]

void NUMLVisitor::visit ( const NUMLList x,
NUMLTypeCode_t  type 
)
virtual

◆ visit() [10/13]

bool NUMLVisitor::visit ( const OntologyTerm x)
virtual

◆ visit() [11/13]

bool NUMLVisitor::visit ( const ResultComponent x)
virtual

◆ visit() [12/13]

bool NUMLVisitor::visit ( const Tuple x)
virtual

◆ visit() [13/13]

bool NUMLVisitor::visit ( const TupleDescription x)
virtual

The documentation for this class was generated from the following files: