Library: XSD/Types
Package: XSDTypes
Header: Poco/XSD/Types/InheritanceInfo.h
Class InheritanceInfo models inheritance information for complex types.
Direct Base Classes: AnnotatedObject
All Base Classes: Poco::RefCountedObject, AnnotatedObject, Visitable
Member Functions: accept, fixup, getRestriction, getSimpleContent, parents, setRestriction, setRestrictionType, setSimpleContent, setType, type
Inherited Functions: accept, addAnnotation, duplicate, getAnnotations, id, referenceCount, release
typedef AutoPtr < InheritanceInfo > Ptr;
Creates the InheritanceInfo.
virtual ~InheritanceInfo();
Destroys the InheritanceInfo.
void accept(
Visitor & v
) const;
See also: Poco::XSD::Types::Visitable::accept()
void fixup();
Replaces type references with the referenced type object.
bool getRestriction() const;
True if we inherit by restriction, otherwise we inherit by extension.
bool getSimpleContent() const;
True if we inherit from a simple type, false if we have a complexContent.
const std::vector < const Type * > & parents() const;
void setRestriction(
bool rest
);
Set to true if we inherit by restriction, otherwise we inherit by extension.
void setRestrictionType(
SimpleType::Ptr pInline
);
A restriction type can define an inline simple type that we inherit from. This method will fail for getRestriction() != true or getSimpleContent != true.
void setSimpleContent(
bool cont
);
Set to true if we inherit from a simple type, false if we have a complexContent.
void setType(
const QName & parent
);
Set the parent class
const Type * type() const;
Returns the parent that we inherit from.