Main Page
Namespaces
Classes
Files
Examples
File List
File Members
include
xqilla
items
Item.hpp
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2001, 2008,
3
* DecisionSoft Limited. All rights reserved.
4
* Copyright (c) 2004, 2018 Oracle and/or its affiliates. All rights reserved.
5
*
6
*
7
* Licensed under the Apache License, Version 2.0 (the "License");
8
* you may not use this file except in compliance with the License.
9
* You may obtain a copy of the License at
10
*
11
* http://www.apache.org/licenses/LICENSE-2.0
12
*
13
* Unless required by applicable law or agreed to in writing, software
14
* distributed under the License is distributed on an "AS IS" BASIS,
15
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
* See the License for the specific language governing permissions and
17
* limitations under the License.
18
*/
19
20
#ifndef _ITEM_HPP
21
#define _ITEM_HPP
22
23
#include <xqilla/framework/XQillaExport.hpp>
24
#include <
xqilla/framework/ReferenceCounted.hpp
>
25
#include <xercesc/util/XercesDefs.hpp>
26
27
XERCES_CPP_NAMESPACE_BEGIN
28
class
XMLBuffer;
29
XERCES_CPP_NAMESPACE_END
30
31
// forward declare when we can
32
class
XPath2MemoryManager
;
33
class
DynamicContext
;
34
class
EventHandler
;
35
36
class
XQILLA_API
Item
:
public
ReferenceCounted
37
{
38
public
:
39
typedef
RefCountPointer<const Item>
Ptr
;
40
42
static
const
XMLCh gXQilla[];
43
44
virtual
bool
isNode()
const
= 0;
45
46
virtual
bool
isAtomicValue()
const
= 0;
47
48
virtual
bool
isFunction()
const
= 0;
49
50
virtual
const
XMLCh* asString(
const
DynamicContext
* context)
const
= 0;
51
52
virtual
const
XMLCh* getTypeURI()
const
= 0;
53
54
virtual
const
XMLCh* getTypeName()
const
= 0;
55
57
virtual
void
generateEvents(
EventHandler
*events,
const
DynamicContext
*context,
58
bool
preserveNS =
true
,
bool
preserveType =
true
)
const
= 0;
59
61
virtual
void
*getInterface(
const
XMLCh *name)
const
= 0;
62
64
virtual
void
typeToBuffer(
DynamicContext
*context, XERCES_CPP_NAMESPACE_QUALIFIER XMLBuffer &buffer)
const
= 0;
65
66
protected
:
67
Item
() {}
68
69
private
:
70
// copy constructor
71
Item
(
const
Item
& other);
72
// assignment operation
73
Item
& operator=(
const
Item
& item) ;
74
};
75
76
#endif
77
XPath2MemoryManager
Definition:
XPath2MemoryManager.hpp:45
EventHandler
Definition:
EventHandler.hpp:29
ReferenceCounted
Super class for reference counted classes.
Definition:
ReferenceCounted.hpp:30
RefCountPointer< const Item >
Item::Item
Item()
Definition:
Item.hpp:67
Item
Definition:
Item.hpp:36
DynamicContext
The execution time dynamic context interface.
Definition:
DynamicContext.hpp:38
Item::Ptr
RefCountPointer< const Item > Ptr
Definition:
Item.hpp:39
ReferenceCounted.hpp
Generated by
1.8.5