Inherits System::Xml::Schema::XmlSchemaAnnotated.

Inherited by System::Xml::Schema::XmlSchemaComplexType, and System::Xml::Schema::XmlSchemaSimpleType.

Public Types

using Ptr = SharedPtr< XmlSchemaType >
 An alias for shared pointer to an instance of this class. More...
 
- Public Types inherited from System::Xml::Schema::XmlSchemaAnnotated
using Ptr = SharedPtr< XmlSchemaAnnotated >
 An alias for shared pointer to an instance of this class. More...
 
- Public Types inherited from System::Xml::Schema::XmlSchemaObject
using Ptr = SharedPtr< XmlSchemaObject >
 An alias for shared pointer to an instance of this class. More...
 
- Public Types inherited from System::Object
typedef SmartPtr< Objectptr
 Alias for smart pointer type. More...
 

Public Member Functions

ASPOSECPP_SHARED_API String get_Name ()
 
ASPOSECPP_SHARED_API void set_Name (const String &value)
 
ASPOSECPP_SHARED_API XmlSchemaDerivationMethod get_Final ()
 
ASPOSECPP_SHARED_API void set_Final (XmlSchemaDerivationMethod value)
 
ASPOSECPP_SHARED_API SharedPtr< XmlQualifiedNameget_QualifiedName ()
 
ASPOSECPP_SHARED_API XmlSchemaDerivationMethod get_FinalResolved ()
 
ASPOSECPP_SHARED_API SharedPtr< Objectget_BaseSchemaType ()
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaTypeget_BaseXmlSchemaType ()
 
ASPOSECPP_SHARED_API XmlSchemaDerivationMethod get_DerivedBy ()
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaDatatypeget_Datatype ()
 
virtual ASPOSECPP_SHARED_API bool get_IsMixed ()
 
virtual ASPOSECPP_SHARED_API void set_IsMixed (bool value)
 
ASPOSECPP_SHARED_API XmlTypeCode get_TypeCode ()
 
ASPOSECPP_SHARED_API XmlSchemaType ()
 Initializes a new instance of the XmlSchemaType class. More...
 
- Public Member Functions inherited from System::Xml::Schema::XmlSchemaAnnotated
ASPOSECPP_SHARED_API String get_Id ()
 
ASPOSECPP_SHARED_API void set_Id (const String &value)
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaAnnotationget_Annotation ()
 
ASPOSECPP_SHARED_API void set_Annotation (const SharedPtr< XmlSchemaAnnotation > &value)
 
ASPOSECPP_SHARED_API ArrayPtr< SharedPtr< XmlAttribute > > get_UnhandledAttributes ()
 
ASPOSECPP_SHARED_API void set_UnhandledAttributes (const ArrayPtr< SharedPtr< XmlAttribute >> &value)
 
- Public Member Functions inherited from System::Xml::Schema::XmlSchemaObject
ASPOSECPP_SHARED_API int32_t get_LineNumber ()
 
ASPOSECPP_SHARED_API void set_LineNumber (int32_t value)
 
ASPOSECPP_SHARED_API int32_t get_LinePosition ()
 
ASPOSECPP_SHARED_API void set_LinePosition (int32_t value)
 
ASPOSECPP_SHARED_API String get_SourceUri ()
 
ASPOSECPP_SHARED_API void set_SourceUri (const String &value)
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaObjectget_Parent ()
 
ASPOSECPP_SHARED_API void set_Parent (const SharedPtr< XmlSchemaObject > &value)
 
ASPOSECPP_SHARED_API SharedPtr< System::Xml::Serialization::XmlSerializerNamespacesget_Namespaces ()
 
ASPOSECPP_SHARED_API void set_Namespaces (const SharedPtr< System::Xml::Serialization::XmlSerializerNamespaces > &value)
 
ASPOSECPP_SHARED_API XmlSchemaObject ()
 Initializes a new instance of the XmlSchemaObject class. More...
 
- Public Member Functions inherited from System::Object
ASPOSECPP_SHARED_API Object ()
 Creates object. Initializes all internal data structures. More...
 
virtual ASPOSECPP_SHARED_API ~Object ()
 Destroys object. Frees all internal data structures. More...
 
ASPOSECPP_SHARED_API Object (Object const &x)
 Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
Objectoperator= (Object const &x)
 Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
ObjectSharedRefAdded ()
 Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int SharedRefRemovedSafe ()
 Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int RemovedSharedRefs (int count)
 Decreases shared reference count by specified value. More...
 
Detail::SmartPtrCounter * WeakRefAdded ()
 Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
void WeakRefRemoved ()
 Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
Detail::SmartPtrCounter * GetCounter ()
 Gets reference counter data structure associated with the object. More...
 
int SharedCount () const
 Gets current value of shared reference counter. More...
 
ASPOSECPP_SHARED_API void Lock ()
 Implements C# lock() statement locking. Call directly or use LockContext sentry object. More...
 
ASPOSECPP_SHARED_API void Unlock ()
 Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More...
 
virtual ASPOSECPP_SHARED_API bool Equals (ptr obj)
 Compares objects using C# Object.Equals semantics. More...
 
virtual ASPOSECPP_SHARED_API int32_t GetHashCode () const
 Analog of C# Object.GetHashCode() method. Enables hashing of custom objects. More...
 
virtual ASPOSECPP_SHARED_API String ToString () const
 Analog of C# Object.ToString() method. Enables converting custom objects to string. More...
 
virtual ASPOSECPP_SHARED_API ptr MemberwiseClone () const
 Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More...
 
virtual ASPOSECPP_SHARED_API const TypeInfoGetType () const
 Gets actual type of object. Analog of C# System.Object.GetType() call. More...
 
virtual ASPOSECPP_SHARED_API bool Is (const TypeInfo &targetType) const
 Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More...
 
virtual ASPOSECPP_SHARED_API void SetTemplateWeakPtr (uint32_t argument)
 Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More...
 
virtual ASPOSECPP_SHARED_API bool FastCast (const Details::FastRttiBase &helper, void **out_ptr) const
 For internal purposes only. More...
 
template<>
bool Equals (float const &objA, float const &objB)
 
template<>
bool Equals (double const &objA, double const &objB)
 
template<>
bool ReferenceEquals (String const &str, std::nullptr_t)
 
template<>
bool ReferenceEquals (String const &str1, String const &str2)
 

Static Public Member Functions

static ASPOSECPP_SHARED_API SharedPtr< XmlSchemaSimpleTypeGetBuiltInSimpleType (const SharedPtr< XmlQualifiedName > &qualifiedName)
 
static ASPOSECPP_SHARED_API SharedPtr< XmlSchemaSimpleTypeGetBuiltInSimpleType (XmlTypeCode typeCode)
 
static ASPOSECPP_SHARED_API SharedPtr< XmlSchemaComplexTypeGetBuiltInComplexType (XmlTypeCode typeCode)
 
static ASPOSECPP_SHARED_API SharedPtr< XmlSchemaComplexTypeGetBuiltInComplexType (const SharedPtr< XmlQualifiedName > &qualifiedName)
 
static ASPOSECPP_SHARED_API bool IsDerivedFrom (SharedPtr< XmlSchemaType > derivedType, const SharedPtr< XmlSchemaType > &baseType, XmlSchemaDerivationMethod except)
 
- Static Public Member Functions inherited from System::Object
static bool ReferenceEquals (ptr const &objA, ptr const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, T const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, std::nullptr_t)
 Reference-compares value type object with nullptr. More...
 
template<typename T1 , typename T2 >
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares reference type objects in C# style. More...
 
template<typename T1 , typename T2 >
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares value type objects in C# style. More...
 
static const TypeInfoType ()
 Implements C# typeof(System.Object) construct. More...
 

Protected Member Functions

virtual ASPOSECPP_SHARED_API ~XmlSchemaType ()
 

Detailed Description

The base class for all simple types and complex types.

Attention
Objects of this class should only be allocated using System::MakeObject() function. Never create instances of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.

Member Typedef Documentation

◆ Ptr

An alias for shared pointer to an instance of this class.

Constructor & Destructor Documentation

◆ XmlSchemaType()

ASPOSECPP_SHARED_API System::Xml::Schema::XmlSchemaType::XmlSchemaType ( )

Initializes a new instance of the XmlSchemaType class.

◆ ~XmlSchemaType()

virtual ASPOSECPP_SHARED_API System::Xml::Schema::XmlSchemaType::~XmlSchemaType ( )
protectedvirtual

Member Function Documentation

◆ get_BaseSchemaType()

ASPOSECPP_SHARED_API SharedPtr<Object> System::Xml::Schema::XmlSchemaType::get_BaseSchemaType ( )

Returns the post-compilation object type or the built-in XML Schema Definition Language (XSD) data type, simpleType element, or complexType element. This is a post-schema-compilation infoset value.

Returns
The built-in XSD data type, simpleType element, or complexType element.

◆ get_BaseXmlSchemaType()

ASPOSECPP_SHARED_API SharedPtr<XmlSchemaType> System::Xml::Schema::XmlSchemaType::get_BaseXmlSchemaType ( )

Returns the post-compilation value for the base type of this schema type.

Returns
An XmlSchemaType object representing the base type of this schema type.

◆ get_Datatype()

ASPOSECPP_SHARED_API SharedPtr<XmlSchemaDatatype> System::Xml::Schema::XmlSchemaType::get_Datatype ( )

Returns the post-compilation value for the data type of the complex type.

Returns
The XmlSchemaDatatype post-schema-compilation value.

◆ get_DerivedBy()

ASPOSECPP_SHARED_API XmlSchemaDerivationMethod System::Xml::Schema::XmlSchemaType::get_DerivedBy ( )

Returns the post-compilation information on how this element was derived from its base type.

Returns
One of the valid XmlSchemaDerivationMethod values.

◆ get_Final()

ASPOSECPP_SHARED_API XmlSchemaDerivationMethod System::Xml::Schema::XmlSchemaType::get_Final ( )

Returns the final attribute of the type derivation that indicates if further derivations are allowed.

Returns
One of the valid XmlSchemaDerivationMethod values. The default is XmlSchemaDerivationMethod::None.

◆ get_FinalResolved()

ASPOSECPP_SHARED_API XmlSchemaDerivationMethod System::Xml::Schema::XmlSchemaType::get_FinalResolved ( )

Returns the post-compilation interpretation of the XmlSchemaType::get_Final value.

Returns
The post-compilation interpretation of the XmlSchemaType::get_Final value. The default is the finalDefault attribute value of the schema element.

◆ get_IsMixed()

virtual ASPOSECPP_SHARED_API bool System::Xml::Schema::XmlSchemaType::get_IsMixed ( )
virtual

Returns a value indicating if this type has a mixed content model. This call is only valid in a complex type.

Returns
true if the type has a mixed content model; otherwise, false. The default is false.

Reimplemented in System::Xml::Schema::XmlSchemaComplexType.

◆ get_Name()

ASPOSECPP_SHARED_API String System::Xml::Schema::XmlSchemaType::get_Name ( )

Returns the name of the type.

Returns
The name of the type.

◆ get_QualifiedName()

ASPOSECPP_SHARED_API SharedPtr<XmlQualifiedName> System::Xml::Schema::XmlSchemaType::get_QualifiedName ( )

Returns the qualified name for the type built from the Name attribute of this type. This is a post-schema-compilation value.

Returns
The XmlQualifiedName for the type built from the Name attribute of this type.

◆ get_TypeCode()

ASPOSECPP_SHARED_API XmlTypeCode System::Xml::Schema::XmlSchemaType::get_TypeCode ( )

Returns the XmlTypeCode of the type.

Returns
One of the XmlTypeCode values.

◆ GetBuiltInComplexType() [1/2]

static ASPOSECPP_SHARED_API SharedPtr<XmlSchemaComplexType> System::Xml::Schema::XmlSchemaType::GetBuiltInComplexType ( XmlTypeCode  typeCode)
static

Returns an XmlSchemaComplexType that represents the built-in complex type of the complex type specified.

Parameters
typeCodeOne of the XmlTypeCode values representing the complex type.
Returns
The XmlSchemaComplexType that represents the built-in complex type.

◆ GetBuiltInComplexType() [2/2]

static ASPOSECPP_SHARED_API SharedPtr<XmlSchemaComplexType> System::Xml::Schema::XmlSchemaType::GetBuiltInComplexType ( const SharedPtr< XmlQualifiedName > &  qualifiedName)
static

Returns an XmlSchemaComplexType that represents the built-in complex type of the complex type specified by qualified name.

Parameters
qualifiedNameThe XmlQualifiedName of the complex type.
Returns
The XmlSchemaComplexType that represents the built-in complex type.
Exceptions
ArgumentNullExceptionThe XmlQualifiedName parameter is nullptr.

◆ GetBuiltInSimpleType() [1/2]

static ASPOSECPP_SHARED_API SharedPtr<XmlSchemaSimpleType> System::Xml::Schema::XmlSchemaType::GetBuiltInSimpleType ( const SharedPtr< XmlQualifiedName > &  qualifiedName)
static

Returns an XmlSchemaSimpleType that represents the built-in simple type of the simple type that is specified by the qualified name.

Parameters
qualifiedNameThe XmlQualifiedName of the simple type.
Returns
The XmlSchemaSimpleType that represents the built-in simple type.
Exceptions
ArgumentNullExceptionThe XmlQualifiedName parameter is nullptr.

◆ GetBuiltInSimpleType() [2/2]

static ASPOSECPP_SHARED_API SharedPtr<XmlSchemaSimpleType> System::Xml::Schema::XmlSchemaType::GetBuiltInSimpleType ( XmlTypeCode  typeCode)
static

Returns an XmlSchemaSimpleType that represents the built-in simple type of the specified simple type.

Parameters
typeCodeOne of the XmlTypeCode values representing the simple type.
Returns
The XmlSchemaSimpleType that represents the built-in simple type.

◆ IsDerivedFrom()

static ASPOSECPP_SHARED_API bool System::Xml::Schema::XmlSchemaType::IsDerivedFrom ( SharedPtr< XmlSchemaType derivedType,
const SharedPtr< XmlSchemaType > &  baseType,
XmlSchemaDerivationMethod  except 
)
static

Returns a value indicating if the derived schema type specified is derived from the base schema type specified.

Parameters
derivedTypeThe derived XmlSchemaType to test.
baseTypeThe base XmlSchemaType to test the derived XmlSchemaType against.
exceptOne of the XmlSchemaDerivationMethod values representing a type derivation method to exclude from testing.
Returns
true if the derived type is derived from the base type; otherwise, false.

◆ set_Final()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaType::set_Final ( XmlSchemaDerivationMethod  value)

Sets the final attribute of the type derivation that indicates if further derivations are allowed.

Parameters
valueThe value to set.

◆ set_IsMixed()

virtual ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaType::set_IsMixed ( bool  value)
virtual

Sets a value indicating if this type has a mixed content model. This call is only valid in a complex type.

Parameters
valueThe value to set.

Reimplemented in System::Xml::Schema::XmlSchemaComplexType.

◆ set_Name()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaType::set_Name ( const String value)

Sets the name of the type.

Parameters
valueThe value to set.