Poco::XSD::Types

class Union

File Information

Library: XSD/Types
Package: XSDTypes
Header: Poco/XSD/Types/Union.h

Description

This class represents a Union in an XML Schema.

Inheritance

Direct Base Classes: SimpleTypeInheritance

All Base Classes: Poco::RefCountedObject, AnnotatedObject, SimpleTypeInheritance, Visitable

Member Summary

Member Functions: accept, fixup, inlineTypes, isList, isRestriction, isUnion, typeReferences, types

Inherited Functions: accept, addAnnotation, duplicate, fixup, getAnnotations, id, isList, isRestriction, isUnion, referenceCount, release, types

Types

Ptr

typedef AutoPtr < Union > Ptr;

Constructors

Union

Union(
    const std::string & id,
    const std::vector < QName > & memberTypes
);

Creates the Union.

Destructor

~Union virtual

virtual ~Union();

Destroys the Union.

Member Functions

accept virtual

void accept(
    Visitor & v
) const;

fixup virtual

void fixup();

Replaces type references with the referenced type object.

inlineTypes inline

const std::vector < SimpleType::Ptr > & inlineTypes() const;

Returns all types defined internally.

inlineTypes

std::vector < SimpleType::Ptr > & inlineTypes();

Returns all types defined internally. If you change this vector you must call fixup later.

isList virtual inline

bool isList() const;

Inherit by list.

isRestriction virtual inline

bool isRestriction() const;

True if we inherit by restriction.

isUnion virtual inline

bool isUnion() const;

typeReferences inline

const std::vector < QName > & typeReferences() const;

Returns all the types that are referenced.

types virtual inline

const std::vector < const Type * > & types() const;

Returns the type that we use in the union. Are guaranteed to be all SimpleTypes.