libzypp
11.13.5
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
libzypp
Welcome to libzypp
Code Pitfalls - Frequently made mistakes
Code Snippets
Environment Variables
Testing for provided features.
Notes on revisions
Extending ZYpp: Plugins and Hooks
Services
Solver - Vendor protection
Writing and tunning testcases
Libzypp and threads
Todo List
Deprecated List
Modules
Namespaces
Classes
Files
File List
zypp
base
media
misc
parser
plaindir
susetags
ws
xml
libxmlfwd.cc
libxmlfwd.h
Node.cc
Node.h
Parse.h
ParseDef.cc
ParseDef.h
ParseDefConsume.cc
ParseDefConsume.h
ParseDefException.cc
ParseDefException.h
ParseDefTraits.h
Reader.cc
Reader.h
XmlEscape.cc
XmlEscape.h
XmlString.cc
XmlString.h
yum
HistoryLogReader.cc
HistoryLogReader.h
IniDict.cc
IniDict.h
IniParser.cc
IniParser.h
ParseException.cc
ParseException.h
ParserProgress.h
ProductFileReader.cc
ProductFileReader.h
RepoFileReader.cc
RepoFileReader.h
RepoindexFileReader.cc
RepoindexFileReader.h
ServiceFileReader.cc
ServiceFileReader.h
pool
repo
sat
solver
target
thread
ui
url
ws
zypp_detail
APIConfig.h
Arch.cc
Arch.h
AutoDispose.h
Bit.h
ByteCount.cc
ByteCount.h
Callback.h
Capabilities.cc
Capabilities.h
Capability.cc
Capability.h
CapMatch.cc
CapMatch.h
Changelog.cc
Changelog.h
CheckSum.cc
CheckSum.h
CountryCode.cc
CountryCode.h
Date.cc
Date.h
Dep.cc
Dep.h
Digest.cc
Digest.h
DiskUsage.cc
DiskUsage.h
DiskUsageCounter.cc
DiskUsageCounter.h
DownloadMode.cc
DownloadMode.h
Edition.cc
Edition.h
ExternalProgram.cc
ExternalProgram.h
Fetcher.cc
Fetcher.h
FileChecker.cc
FileChecker.h
Filter.h
Glob.cc
Glob.h
HistoryLog.cc
HistoryLog.h
HistoryLogData.cc
HistoryLogData.h
IdString.cc
IdString.h
IdStringType.h
InstanceId.cc
InstanceId.h
KeyContext.h
KeyRing.cc
KeyRing.h
KVMap.h
LanguageCode.cc
LanguageCode.h
Locale.cc
Locale.h
Locks.cc
Locks.h
ManagedFile.h
MediaProducts.cc
MediaProducts.h
MediaSetAccess.cc
MediaSetAccess.h
Misc.h
OnMediaLocation.cc
OnMediaLocation.h
Package.cc
Package.h
PackageKeyword.h
Patch.cc
Patch.h
PathInfo.cc
PathInfo.h
Pathname.cc
Pathname.h
Pattern.cc
Pattern.h
PluginFrame.cc
PluginFrame.h
PluginFrameException.cc
PluginFrameException.h
PluginScript.cc
PluginScript.h
PluginScriptException.cc
PluginScriptException.h
PoolItem.cc
PoolItem.h
PoolItemBest.cc
PoolItemBest.h
PoolQuery.cc
PoolQuery.h
PoolQueryResult.cc
PoolQueryResult.h
PoolQueryUtil.tcc
ProblemSolution.cc
ProblemSolution.h
ProblemTypes.h
Product.cc
Product.h
ProgressData.cc
ProgressData.h
ProvideFilePolicy.cc
ProvideFilePolicy.h
PublicKey.cc
PublicKey.h
Range.cc
Range.h
Rel.cc
Rel.h
RelCompare.h
RepoInfo.cc
RepoInfo.h
RepoManager.cc
RepoManager.h
Repository.cc
Repository.h
RepoStatus.cc
RepoStatus.h
ResFilters.h
ResKind.cc
ResKind.h
ResObject.cc
ResObject.h
ResObjects.h
Resolvable.cc
Resolvable.h
Resolver.cc
Resolver.h
ResolverProblem.cc
ResolverProblem.h
ResPool.cc
ResPool.h
ResPoolProxy.cc
ResPoolProxy.h
ResStatus.cc
ResStatus.h
ResTraits.h
ServiceInfo.cc
ServiceInfo.h
Signature.cc
Signature.h
SrcPackage.cc
SrcPackage.h
SysContent.cc
SysContent.h
Target.cc
Target.h
TmpPath.cc
TmpPath.h
TriBool.h
Url.cc
Url.h
Vendor.h
VendorAttr.cc
VendorAttr.h
VendorSupportOptions.cc
VendorSupportOptions.h
ZConfig.cc
ZConfig.h
ZYpp.cc
ZYpp.h
ZYppCallbacks.h
ZYppCommit.h
ZYppCommitPolicy.cc
ZYppCommitPolicy.h
ZYppCommitResult.cc
ZYppCommitResult.h
ZYppFactory.cc
ZYppFactory.h
File Members
XmlString.h
Go to the documentation of this file.
1
/*---------------------------------------------------------------------\
2
| ____ _ __ __ ___ |
3
| |__ / \ / / . \ . \ |
4
| / / \ V /| _/ _/ |
5
| / /__ | | | | | | |
6
| /_____||_| |_| |_| |
7
| |
8
\---------------------------------------------------------------------*/
12
#ifndef ZYPP_PARSER_XML_XMLSTRING_H
13
#define ZYPP_PARSER_XML_XMLSTRING_H
14
15
#include <iosfwd>
16
#include <string>
17
18
#include "
zypp/base/PtrTypes.h
"
19
20
#include "
zypp/parser/xml/libxmlfwd.h
"
21
#include "
zypp/parser/xml/XmlEscape.h
"
22
24
namespace
zypp
25
{
26
27
namespace
xml
28
{
29
31
//
32
// CLASS NAME : XmlString
33
//
40
class
XmlString
41
{
43
struct
Deleter
44
{
45
void
operator()
(
const
xmlChar * xmlstr_r )
const
46
{ xmlFree( (
void
*)(xmlstr_r) ); }
47
};
48
49
public
:
50
52
enum
OnDelete
{
NOFREE
,
FREE
};
53
57
XmlString
(
const
xmlChar *
const
xmlstr_r = NULL,
58
OnDelete
ondelete_r =
NOFREE
);
59
61
const
xmlChar *
get
()
const
62
{
63
if
( !
_xmlstr
)
64
return
NULL;
65
return
&(*_xmlstr);
66
}
67
69
operator
const
xmlChar * ()
const
70
{
return
get
(); }
71
73
const
char
*
c_str
()
const
74
{
return
reinterpret_cast<
const
char
*const
>
(
get
()); }
75
77
std::string
asString
()
const
78
{
79
if
( !
_xmlstr
)
80
return
std::string();
81
return
c_str
();
82
}
83
84
bool
operator==
(
const
std::string & rhs )
const
85
{
return
( rhs ==
c_str
() ); }
86
87
bool
operator!=
(
const
std::string & rhs )
const
88
{
return
( rhs !=
c_str
() ); }
89
90
bool
operator==
(
const
char
*
const
rhs )
const
91
{
return
(
asString
() == rhs ); }
92
93
bool
operator!=
(
const
char
*
const
rhs )
const
94
{
return
(
asString
() != rhs ); }
95
96
bool
operator==
(
const
XmlString
& rhs )
const
97
{
return
(
asString
() == rhs.
c_str
() ); }
98
99
bool
operator!=
(
const
XmlString
& rhs )
const
100
{
return
(
asString
() != rhs.
c_str
() ); }
101
102
private
:
105
shared_ptr<const xmlChar>
_xmlstr
;
106
};
108
110
std::ostream &
operator<<
( std::ostream & str,
const
XmlString
& obj );
111
113
}
// namespace xml
116
}
// namespace zypp
118
#endif // ZYPP_PARSER_XML_XMLSTRING_H
zypp
parser
xml
XmlString.h
Generated by
1.8.1