1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef INCLUDED_JVMFWK_LIBXMLUTIL_HXX
20 #define INCLUDED_JVMFWK_LIBXMLUTIL_HXX
22 #include "libxml/parser.h"
23 #include "libxml/xpath.h"
24 #include "rtl/ustring.hxx"
30 xmlXPathObject
* _object
;
31 CXPathObjectPtr
& operator = (const CXPathObjectPtr
&);
32 CXPathObjectPtr(const CXPathObjectPtr
&);
35 /** Takes ownership of xmlXPathObject
37 CXPathObjectPtr(xmlXPathObject
* aObject
);
39 /** Takes ownership of xmlXPathObject
41 CXPathObjectPtr
& operator = (xmlXPathObject
* pObj
);
42 xmlXPathObject
* operator -> ();
43 operator xmlXPathObject
* () const;
46 //===========================================================
47 class CXPathContextPtr
49 xmlXPathContext
* _object
;
51 CXPathContextPtr(const jfw::CXPathContextPtr
&);
52 CXPathContextPtr
& operator = (const CXPathContextPtr
&);
55 CXPathContextPtr(xmlXPathContextPtr aContext
);
56 CXPathContextPtr
& operator = (xmlXPathContextPtr pObj
);
58 xmlXPathContext
* operator -> ();
59 operator xmlXPathContext
* () const;
62 //===========================================================
67 CXmlDocPtr(const CXmlDocPtr
&);
70 CXmlDocPtr
& operator = (const CXmlDocPtr
&);
72 CXmlDocPtr(xmlDoc
* aDoc
);
73 /** Takes ownership of xmlDoc
75 CXmlDocPtr
& operator = (xmlDoc
* pObj
);
77 xmlDoc
* operator -> ();
78 operator xmlDoc
* () const;
81 //===========================================================
86 CXmlCharPtr(const CXmlCharPtr
&);
87 CXmlCharPtr
& operator = (const CXmlCharPtr
&);
90 CXmlCharPtr(xmlChar
* aDoc
);
91 CXmlCharPtr(const OUString
&);
93 CXmlCharPtr
& operator = (xmlChar
* pObj
);
94 operator xmlChar
* () const;
103 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */