blob: 44895f68a96e29a196c8bd9d89b44dc5c4dd44ae [file] [log] [blame]
/*
* Copyright 1999-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#if !defined(XPATH_WRAPPER_HEADER_GUARD_1357924680)
#define XPATH_WRAPPER_HEADER_GUARD_1357924680
#include <xalanc/Include/PlatformDefinitions.hpp>
#include <xalanc/PlatformSupport/DOMStringHelper.hpp>
#include <vector>
#if defined(XALAN_NEEDS_EXPLICIT_TEMPLATE_INSTANTIATION)
#include <stl/_vector.c>
#endif
class XPathWrapperImpl;
class XPathWrapper
{
public:
typedef XALAN_CPP_NAMESPACE_QUALIFIER CharVectorType ChVectorType;
#if defined(XALAN_NO_STD_NAMESPACE)
typedef vector<ChVectorType> CharVectorTypeVectorType;
#else
typedef std::vector<ChVectorType> CharVectorTypeVectorType;
#endif
XPathWrapper();
virtual
~XPathWrapper();
// Given an xml document and an xpath context and expression in the form of (ascii) string objects,
// this function parses the XML document, evaluates the xpath and returns the result, as a list of
// string objects
CharVectorTypeVectorType
evaluate(
const char* xml,
const char* context,
const char* path);
private:
// not implemented
XPathWrapper(const XPathWrapper&);
XPathWrapper&
operator=(const XPathWrapper&);
bool
operator==(const XPathWrapper&) const;
XPathWrapperImpl* const pImpl;
};
#endif // XPATH_WRAPPER_HEADER_GUARD_1357924680