C++/Tree Mapping Runtime Library
List of all members
fundamental_base< T, C, B, ST > Class Template Reference

Class template that emulates inheritance from a fundamental C++ type. More...

#include <elements.hxx>

Inheritance diagram for fundamental_base< T, C, B, ST >:

Constructors

 fundamental_base ()
 Default constructor.
 
 fundamental_base (T x)
 Initialize an instance with an underlying type value.
 
 fundamental_base (const fundamental_base &x, flags f=0, container *c=0)
 Copy constructor.
 
virtual fundamental_base_clone (flags f=0, container *c=0) const
 Copy the instance polymorphically.
 
template<typename S >
 fundamental_base (istream< S > &s, flags f=0, container *c=0)
 Create an instance from a data representation stream.
 
 fundamental_base (const xercesc::DOMElement &e, flags f=0, container *c=0)
 Create an instance from a DOM element.
 
 fundamental_base (const xercesc::DOMAttr &a, flags f=0, container *c=0)
 Create an instance from a DOM Attribute.
 
 fundamental_base (const std::basic_string< C > &s, const xercesc::DOMElement *e, flags f=0, container *c=0)
 Create an instance from a string fragment.
 
fundamental_baseoperator= (const T &x)
 Assign an underlying type value to the instance.
 
 operator const T & () const
 Implicitly convert the instance to constant reference to the underlying type.
 
 operator T& ()
 Implicitly convert the instance to reference to the underlying type.
 
const facet * _facet_table () const
 Get the facet table associated with this type.
 
void _facet_table (const facet *ft)
 Set the facet table associated with this type.
 

Detailed Description

template<typename T, typename C, typename B, schema_type::value ST = schema_type::other>
class xsd::cxx::tree::fundamental_base< T, C, B, ST >

Class template that emulates inheritance from a fundamental C++ type.

Constructor & Destructor Documentation

◆ fundamental_base() [1/6]

template<typename T , typename C , typename B , schema_type::value ST = schema_type::other>
fundamental_base ( x)
inline

Initialize an instance with an underlying type value.

Parameters
xAn underlying type value.

◆ fundamental_base() [2/6]

template<typename T , typename C , typename B , schema_type::value ST = schema_type::other>
fundamental_base ( const fundamental_base< T, C, B, ST > &  x,
flags  f = 0,
container c = 0 
)
inline

Copy constructor.

Parameters
xAn instance to make a copy of.
fFlags to create the copy with.
cA pointer to the object that will contain the copy.

For polymorphic object models use the _clone function instead.

◆ fundamental_base() [3/6]

template<typename T , typename C , typename B , schema_type::value ST = schema_type::other>
template<typename S >
fundamental_base ( istream< S > &  s,
flags  f = 0,
container c = 0 
)

Create an instance from a data representation stream.

Parameters
sA stream to extract the data from.
fFlags to create the new instance with.
cA pointer to the object that will contain the new instance.

◆ fundamental_base() [4/6]

template<typename T , typename C , typename B , schema_type::value ST = schema_type::other>
fundamental_base ( const xercesc::DOMElement &  e,
flags  f = 0,
container c = 0 
)

Create an instance from a DOM element.

Parameters
eA DOM element to extract the data from.
fFlags to create the new instance with.
cA pointer to the object that will contain the new instance.

◆ fundamental_base() [5/6]

template<typename T , typename C , typename B , schema_type::value ST = schema_type::other>
fundamental_base ( const xercesc::DOMAttr &  a,
flags  f = 0,
container c = 0 
)

Create an instance from a DOM Attribute.

Parameters
aA DOM attribute to extract the data from.
fFlags to create the new instance with.
cA pointer to the object that will contain the new instance.

◆ fundamental_base() [6/6]

template<typename T , typename C , typename B , schema_type::value ST = schema_type::other>
fundamental_base ( const std::basic_string< C > &  s,
const xercesc::DOMElement *  e,
flags  f = 0,
container c = 0 
)

Create an instance from a string fragment.

Parameters
sA string fragment to extract the data from.
eA pointer to DOM element containing the string fragment.
fFlags to create the new instance with.
cA pointer to the object that will contain the new instance.

Member Function Documentation

◆ _clone()

template<typename T , typename C , typename B , schema_type::value ST = schema_type::other>
virtual fundamental_base * _clone ( flags  f = 0,
container c = 0 
) const
virtual

Copy the instance polymorphically.

Parameters
fFlags to create the copy with.
cA pointer to the object that will contain the copy.
Returns
A pointer to the dynamically allocated copy.

This function ensures that the dynamic type of the instance is used for copying and should be used for polymorphic object models instead of the copy constructor.

◆ operator=()

template<typename T , typename C , typename B , schema_type::value ST = schema_type::other>
fundamental_base & operator= ( const T &  x)
inline

Assign an underlying type value to the instance.

Parameters
xAn underlying type value.
Returns
A reference to the instance.

◆ operator const T &()

template<typename T , typename C , typename B , schema_type::value ST = schema_type::other>
operator const T & ( ) const
inline

Implicitly convert the instance to constant reference to the underlying type.

Returns
A constant reference to the underlying type.

◆ operator T&()

template<typename T , typename C , typename B , schema_type::value ST = schema_type::other>
operator T& ( )
inline

Implicitly convert the instance to reference to the underlying type.

Returns
A reference to the underlying type.

◆ _facet_table() [1/2]

template<typename T , typename C , typename B , schema_type::value ST = schema_type::other>
const facet * _facet_table ( ) const
inline

Get the facet table associated with this type.

Returns
A pointer to read-only facet table or 0.

◆ _facet_table() [2/2]

template<typename T , typename C , typename B , schema_type::value ST = schema_type::other>
void _facet_table ( const facet *  ft)
inlineprotected

Set the facet table associated with this type.

Parameters
ftA pointer to read-only facet table.

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

Copyright © 2005-2023 Code Synthesis.