2
* Phoebe DOM Implementation.
4
* This is a C++ approximation of the W3C DOM model, which follows
5
* fairly closely the specifications in the various .idl files, copies of
6
* which are provided for reference. Most important is this one:
8
* http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/idl-definitions.html
13
* Copyright (C) 2005-2008 Bob Jamison
15
* This library is free software; you can redistribute it and/or
16
* modify it under the terms of the GNU Lesser General Public
17
* License as published by the Free Software Foundation; either
18
* version 2.1 of the License, or (at your option) any later version.
20
* This library is distributed in the hope that it will be useful,
21
* but WITHOUT ANY WARRANTY; without even the implied warranty of
22
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
23
* Lesser General Public License for more details.
25
* You should have received a copy of the GNU Lesser General Public
26
* License along with this library; if not, write to the Free Software
27
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
31
#include "xpathimpl.h"
44
/*#########################################################################
46
#########################################################################*/
51
XPathExpression *XPathEvaluatorImpl::createExpression(
52
const DOMString &/*expression*/,
53
const XPathNSResolver */*resolver*/)
54
throw (XPathException, dom::DOMException)
63
XPathNSResolver *XPathEvaluatorImpl::createNSResolver(const Node */*nodeResolver*/)
72
XPathResult *XPathEvaluatorImpl::evaluate(
73
const DOMString &/*expression*/,
74
const Node */*contextNode*/,
75
const XPathNSResolver */*resolver*/,
76
const unsigned short /*type*/,
77
const XPathResult */*result*/)
78
throw (XPathException, dom::DOMException)
90
/*#########################################################################
91
## XPathExpressionImpl
92
#########################################################################*/
99
XPathResult *XPathExpressionImpl::evaluate(
100
const Node */*contextNode*/,
101
unsigned short /*type*/,
102
const XPathResult */*result*/)
103
throw (XPathException, dom::DOMException)
110
/*#########################################################################
111
## XPathNSResolverImpl
112
#########################################################################*/
118
DOMString XPathNSResolverImpl::lookupNamespaceURI(const DOMString &/*prefix*/)
126
/*#########################################################################
128
#########################################################################*/
135
unsigned short XPathResultImpl::getResultType() throw (XPathException)
143
double XPathResultImpl::getNumberValue() throw (XPathException)
152
DOMString XPathResultImpl::getStringValue() throw (XPathException)
160
bool XPathResultImpl::getBooleanValue() throw (XPathException)
168
Node *XPathResultImpl::getSingleNodeValue() throw (XPathException)
176
bool XPathResultImpl::getInvalidIteratorState() throw (XPathException)
184
unsigned long XPathResultImpl::getSnapshotLength() throw (XPathException)
192
Node *XPathResultImpl::iterateNext() throw (XPathException, dom::DOMException)
200
Node *XPathResultImpl::snapshotItem(unsigned long /*index*/) throw (XPathException)
207
/*#########################################################################
208
## XPathNamespaceImpl
209
#########################################################################*/
215
Element *XPathNamespaceImpl::getOwnerElement()
231
/*#########################################################################
233
#########################################################################*/