18 #if !defined(XOBJECT_HEADER_GUARD_1357924680) 19 #define XOBJECT_HEADER_GUARD_1357924680 48 XALAN_CPP_NAMESPACE_BEGIN
80 eTypeResultTreeFrag = 6,
84 eTypeStringReference = 8,
85 eTypeStringAdapter = 9,
86 eTypeStringCached = 10,
87 eTypeXTokenNumberAdapter = 11,
88 eTypeXTokenStringAdapter = 12,
89 eTypeNodeSetNodeProxy = 13,
99 initialize(MemoryManager& theMemoryManager);
115 MemoryManager& theMemoryManager);
124 getTypeString()
const = 0;
193 MemberFunctionPtr
function)
const = 0;
209 MemberFunctionPtr
function)
const = 0;
387 return theString.
length() == 0 ? false :
true;
400 return theNodeList.
getLength() == 0 ? false :
true;
414 return theBool ==
true ? s_trueString : s_falseString;
429 theString.
append(theBool ==
true ? s_trueString : s_falseString);
444 MemberFunctionPtr
function)
448 (formatterListener.*
function)(s_trueString.c_str(), s_trueString.length());
452 (formatterListener.*
function)(s_falseString.c_str(), s_falseString.length());
483 MemberFunctionPtr
function)
519 MemberFunctionPtr
function)
540 assert(theNodeList.
item(0) != 0);
542 string(*theNodeList.
item(0), theString);
560 MemberFunctionPtr
function)
564 assert(theNodeList.
item(0) != 0);
601 MemberFunctionPtr
function)
626 assert(theNodeList.
item(0) != 0);
628 string(*theNodeList.
item(0), theExecutionContext, theString);
646 MemberFunctionPtr
function)
650 assert(theNodeList.
item(0) != 0);
653 *theNodeList.
item(0),
672 MemberFunctionPtr
function)
679 assert(theLength == static_cast<FormatterListener::size_type>(theLength));
681 (formatterListener.*
function)(
695 return theBoolean ==
true ? 1.0 : 0.0;
701 MemoryManager& theManager)
733 m_factory = theFactory;
743 MemoryManager& theManager);
747 MemoryManager& theManager,
748 const Locator* theLocator);
755 virtual const XalanDOMChar*
760 static const XalanDOMChar s_type[];
768 MemoryManager& memoryManager,
778 virtual const XalanDOMChar*
783 static const XalanDOMChar s_type[];
813 MemoryManager& theManager);
823 assert(m_memoryManager != 0);
825 return *m_memoryManager;
829 throwInvalidConversionException(
const XalanDOMString& theTargetType)
const;
875 mutable MemoryManager* m_memoryManager;
895 m_xobjectPtr(theXObject)
901 m_xobjectPtr(theSource.m_xobjectPtr)
909 if (m_xobjectPtr != theRHS.m_xobjectPtr)
913 m_xobjectPtr = theRHS.m_xobjectPtr;
929 XObject*
const xobjectPtr = m_xobjectPtr;
939 return m_xobjectPtr == 0 ? true :
false;
945 return *m_xobjectPtr;
951 return *m_xobjectPtr;
990 return theLHS.m_xobjectPtr == theRHS.m_xobjectPtr;
1000 return !(theLHS == theRHS);
1010 return theLHS.m_xobjectPtr < theRHS.m_xobjectPtr;
1015 XALAN_CPP_NAMESPACE_END
1019 #endif // XOBJECT_HEADER_GUARD_1357924680 static void string(bool theBool, XalanDOMString &theString)
Static conversion function.
static void string(double theNumber, XalanDOMString &theString)
Static conversion function.
XObjectPtr(XObject *theXObject=0)
Create an XObjectPtr.
The purpose of this class is to provide a way to get the "preferred" or closest matching type for XOb...
Class to hold reference count information.
Local implementation of MutableNodeRefList.
static const XalanDOMString & s_falseString
eObjectType
Enumeration of possible object types.
static void string(const XalanNode &theNode, FormatterListener &formatterListener, MemberFunctionPtr function)
Static conversion function.
static void string(const XalanDOMString &theString, FormatterListener &formatterListener, MemberFunctionPtr function)
Calls the supplied FormatterListener member function with the string.
static const XalanDOMString & string(bool theBool)
Static conversion function.
static void string(const NodeRefListBase &theNodeList, XPathExecutionContext &theExecutionContext, XalanDOMString &theString)
Static conversion function.
static const XalanDOMString & s_resultTreeFragmentString
virtual size_type getLength() const =0
Determine the number of nodes in the list.
static void getNodeData(const XalanNode &node, XalanDOMString &data)
Retrieves data for node.
static const XalanDOMString & s_trueString
Class to hold XObjectPtr return types.
static void string(const NodeRefListBase &theNodeList, XPathExecutionContext &theExecutionContext, FormatterListener &formatterListener, MemberFunctionPtr function)
Static conversion function.
virtual XalanNode * item(size_type index) const =0
Returns the indexth item in the collection.
static void string(const XalanNode &theNode, XPathExecutionContext &theExecutionContext, FormatterListener &formatterListener, MemberFunctionPtr function)
Static conversion function.
MemoryManager & getMemoryManager() const
Get the MemoryManager for this instance.
static double number(const XalanDOMString &theString, MemoryManager &theManager)
const XalanDOMChar * c_str() const
Local implementation of NodeRefList.
XObjectPtr(const XObjectPtr &theSource)
static bool boolean(const NodeRefListBase &theNodeList)
Static conversion function.
static void NumberToCharacters(double theValue, FormatterListener &formatterListener, MemberFunctionPtr function)
static void addReference(XalanReferenceCountedObject *theInstance)
Increment reference count.
static const XalanDOMString & s_numberString
bool operator!=(const XObjectPtr &theLHS, const XObjectPtr &theRHS)
static void string(const NodeRefListBase &theNodeList, XalanDOMString &theString)
Static conversion function.
eObjectType getType() const
Tell what kind of class this is.
static void removeReference(XalanReferenceCountedObject *theInstance)
Decrement reference count.
bool operator==(const XObjectPtr &theLHS, const XObjectPtr &theRHS)
NumberToDOMString(double theValue, XalanDOMString &theResult)
Converts a double value into a XalanDOMString.
static void string(bool theBool, FormatterListener &formatterListener, MemberFunctionPtr function)
Static conversion function.
static const XalanDOMString s_emptyString
static void string(const NodeRefListBase &theNodeList, FormatterListener &formatterListener, MemberFunctionPtr function)
Static conversion function.
Class to hold XPath return types.
static bool boolean(double theNumber)
Static conversion function.
const XObject * operator->() const
void setFactory(XObjectFactory *theFactory)
bool operator<(const XObjectPtr &theLHS, const XObjectPtr &theRHS)
static void string(double theNumber, FormatterListener &formatterListener, MemberFunctionPtr function)
Static conversion function.
static bool boolean(const XalanDOMString &theString)
Static conversion function.
static bool isNaN(double theNumber)
Determine if target is not a number.
XalanDOMString & append(const XalanDOMString &theSource)
static double number(bool theBoolean)
Static conversion function.
XObjectPtr & operator=(const XObjectPtr &theRHS)
XPathExecutionContext::GetCachedString GetCachedString
static const XalanDOMString & s_booleanString
static double toDouble(const XalanDOMString &theString, MemoryManager &theManager)
Convert a string to a double value.
static void string(const XalanNode &theNode, XalanDOMString &theString)
Static conversion function.
#define XALAN_XPATH_EXPORT
const XObject & operator*() const
static const XalanDOMString & s_stringString
equals(const XalanDOMChar *theLHS, const XalanDOMChar *theRHS, XalanDOMString::size_type theLength)
Compare the contents of two arrays for equality.
This class handles the creation of XObjects and manages their lifetime.
static bool equal(double theLHS, double theRHS)
Compare two double values, taking into account the fact that we must support IEEE 754...
static const XalanDOMString & s_nodesetString
static void string(const XalanNode &theNode, XPathExecutionContext &theExecutionContext, XalanDOMString &theString)
Static conversion function.