Poco::XSD::Types

class Visitable

Library: XSD/Types
Package: Visitor
Header: Poco/XSD/Types/Visitable.h

Description

Interface class Visitable, used to implement visitor pattern.

Inheritance

Direct Base Classes: Poco::RefCountedObject

All Base Classes: Poco::RefCountedObject

Known Derived Classes: AbstractGroup, Binding, AbstractList, Notation, OrderContent, Type, AbstractElementImpl, AnnotationContent, Attribute, AttributeTypeRef, Order, Service, Annotation, AppInfo, AttributeGroup, SimpleTypeInheritance, AttributeRef, GroupRef, AnnotatedObject, AnyAttribute, AttributeGroupRef, Definitions, ElementTypeRef, Documentation, Element, Message, Operation, SimpleType, AbstractAttributeGroup, All, AttributeContent, CollectionContent, ElementImpl, InheritanceInfo, List, Group, Schema, PortType, Sequence, Union, SimpleRestriction, ComplexType, ElementRef, Content, ListTypeRef, AbstractAttribute, Any, Choice, SimpleRestrictionInlineType

Member Summary

Member Functions: accept, id

Inherited Functions: duplicate, referenceCount, release

Constructors

Visitable

Visitable();

Creates the Visitable.

Visitable

Visitable(
    const std::string & id
);

Creates the Visitable with the given ID.

Destructor

~Visitable virtual

virtual ~Visitable();

Destroys the Visitable.

Member Functions

accept virtual

virtual void accept(
    Visitor & v
) const = 0;

Implements the visitor pattern. Each subclass must implement it as v.visit(*this);

id inline

const std::string & id() const;

Returns the id of the object