Xalan-C++ API Reference
1.12.0
xalanc
XPath
FunctionNormalizeSpace.hpp
Go to the documentation of this file.
1
/*
2
* Licensed to the Apache Software Foundation (ASF) under one
3
* or more contributor license agreements. See the NOTICE file
4
* distributed with this work for additional information
5
* regarding copyright ownership. The ASF licenses this file
6
* to you under the Apache License, Version 2.0 (the "License");
7
* you may not use this file except in compliance with the License.
8
* You may obtain a copy of the License at
9
*
10
* http://www.apache.org/licenses/LICENSE-2.0
11
*
12
* Unless required by applicable law or agreed to in writing, software
13
* distributed under the License is distributed on an "AS IS" BASIS,
14
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
* See the License for the specific language governing permissions and
16
* limitations under the License.
17
*/
18
#if !defined(FUNCTIONNORMALIZE_HEADER_GUARD_1357924680)
19
#define FUNCTIONNORMALIZE_HEADER_GUARD_1357924680
20
21
22
23
// Base header file. Must be first.
24
#include <
xalanc/XPath/XPathDefinitions.hpp
>
25
26
27
28
// Base class header file...
29
#include <
xalanc/XPath/Function.hpp
>
30
31
32
33
#include <
xalanc/XPath/NodeRefListBase.hpp
>
34
35
36
37
namespace
XALAN_CPP_NAMESPACE
{
38
39
40
41
/**
42
* XPath implementation of "normalize-space" function.
43
*/
44
class
XALAN_XPATH_EXPORT
FunctionNormalizeSpace
:
public
Function
45
{
46
public
:
47
48
typedef
Function
ParentType
;
49
50
FunctionNormalizeSpace
();
51
52
virtual
53
~
FunctionNormalizeSpace
();
54
55
// These methods are inherited from Function ...
56
57
virtual
XObjectPtr
58
execute(
59
XPathExecutionContext
& executionContext,
60
XalanNode
* context,
61
const
Locator* locator)
const
;
62
63
virtual
XObjectPtr
64
execute(
65
XPathExecutionContext
& executionContext,
66
XalanNode
* context,
67
const
XObjectPtr
arg1,
68
const
Locator* locator)
const
;
69
70
using
ParentType::execute;
71
72
virtual
FunctionNormalizeSpace
*
73
clone(MemoryManager& theManager)
const
;
74
75
protected
:
76
77
virtual
const
XalanDOMString
&
78
getError(
XalanDOMString
& theResult)
const
;
79
80
private
:
81
82
bool
83
needsNormalization(
const
XalanDOMString
& theString)
const
;
84
85
XObjectPtr
86
normalize(
87
XPathExecutionContext
& executionContext,
88
const
XalanDOMString
& theString)
const
89
{
90
// A string contain the result...
91
GetCachedString
theResult(executionContext);
92
93
return
normalize(executionContext, theString, theResult);
94
}
95
96
XObjectPtr
97
normalize(
98
XPathExecutionContext
& executionContext,
99
const
XObjectPtr
& theArg)
const
;
100
101
XObjectPtr
102
normalize(
103
XPathExecutionContext
& executionContext,
104
const
XalanDOMString
& theString,
105
GetCachedString& theResult)
const
;
106
107
// Not implemented...
108
FunctionNormalizeSpace
&
109
operator=(
const
FunctionNormalizeSpace
&);
110
111
bool
112
operator==
(
const
FunctionNormalizeSpace
&)
const
;
113
};
114
115
116
117
}
118
119
120
121
#endif // FUNCTIONNORMALIZE_HEADER_GUARD_1357924680
XALAN_CPP_NAMESPACE
#define XALAN_CPP_NAMESPACE
Xalan-C++ namespace, including major and minor version.
Definition:
XalanVersion.hpp:76
xalanc::XalanNode
Definition:
XalanNode.hpp:38
xalanc::operator==
bool operator==(const XalanVector< Type > &theLHS, const XalanVector< Type > &theRHS)
Definition:
XalanVector.hpp:1118
XALAN_XPATH_EXPORT
#define XALAN_XPATH_EXPORT
Definition:
XPathDefinitions.hpp:35
xalanc::XObjectPtr
Class to hold XObjectPtr return types.
Definition:
XObject.hpp:883
xalanc::Function
Definition:
Function.hpp:57
xalanc::FunctionNormalizeSpace
XPath implementation of "normalize-space" function.
Definition:
FunctionNormalizeSpace.hpp:44
xalanc::XPathExecutionContext::GetCachedString
Definition:
XPathExecutionContext.hpp:448
NodeRefListBase.hpp
xalanc::XPathExecutionContext
Definition:
XPathExecutionContext.hpp:82
xalanc::XalanDOMString
Definition:
XalanDOMString.hpp:45
xalanc::FunctionNormalizeSpace::ParentType
Function ParentType
Definition:
FunctionNormalizeSpace.hpp:48
Function.hpp
XPathDefinitions.hpp
Copyright © 1999-2020 The Apache Software Foundation. All Rights Reserved.
Generated on Sun May 31 2020 10:37:20 for Xalan-C++ API Reference by
1.8.17