libzypp
11.13.5
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
CountryCode.h
Go to the documentation of this file.
1
/*---------------------------------------------------------------------\
2
| ____ _ __ __ ___ |
3
| |__ / \ / / . \ . \ |
4
| / / \ V /| _/ _/ |
5
| / /__ | | | | | | |
6
| /_____||_| |_| |_| |
7
| |
8
\---------------------------------------------------------------------*/
12
#ifndef ZYPP_COUNTRYCODE_H
13
#define ZYPP_COUNTRYCODE_H
14
15
#include <iosfwd>
16
#include <string>
17
18
#include "
zypp/base/PtrTypes.h
"
19
21
namespace
zypp
22
{
23
24
class
CountryCode;
25
inline
bool
operator==
(
const
CountryCode & lhs,
const
CountryCode & rhs );
26
inline
bool
operator!=
(
const
CountryCode & lhs,
const
CountryCode & rhs );
27
29
//
30
// CLASS NAME : CountryCode
31
//
37
class
CountryCode
38
{
39
friend
std::ostream &
operator<<
( std::ostream & str,
const
CountryCode
& obj );
40
41
public
:
43
class
Impl
;
44
45
public
:
47
CountryCode
();
48
50
explicit
51
CountryCode
(
const
std::string & code_r );
52
54
~CountryCode
();
55
56
public
:
57
61
static
const
CountryCode
noCode
;
63
64
public
:
66
std::string
code
()
const
;
67
69
std::string
name
()
const
;
70
72
bool
hasCode
()
const
73
{
return
*
this
!=
noCode
; }
74
75
private
:
77
RW_pointer<Impl>
_pimpl
;
78
};
80
82
inline
std::ostream &
operator<<
( std::ostream & str,
const
CountryCode
& obj )
83
{
return
str << obj.
code
(); }
84
88
inline
bool
operator==
(
const
CountryCode
& lhs,
const
CountryCode
& rhs ) {
89
return
( lhs.
code
() == rhs.
code
() );
90
}
92
inline
bool
operator==
(
const
std::string & lhs,
const
CountryCode
& rhs ) {
93
return
( lhs == rhs.
code
() );
94
}
96
inline
bool
operator==
(
const
CountryCode
& lhs,
const
std::string & rhs ) {
97
return
( lhs.
code
() == rhs );
98
}
99
101
inline
bool
operator!=
(
const
CountryCode
& lhs,
const
CountryCode
& rhs ) {
102
return
( !
operator
==( lhs, rhs ) );
103
}
105
inline
bool
operator!=
(
const
std::string & lhs,
const
CountryCode
& rhs ) {
106
return
( !
operator
==( lhs, rhs ) );
107
}
109
inline
bool
operator!=
(
const
CountryCode
& lhs,
const
std::string & rhs ) {
110
return
( !
operator
==( lhs, rhs ) );
111
}
113
115
}
// namespace zypp
117
119
namespace
std
120
{
121
122
template
<>
123
inline
bool
less<zypp::CountryCode>::operator()(
const
zypp::CountryCode
& lhs,
const
zypp::CountryCode
& rhs )
const
124
{
return
lhs.
code
() < rhs.
code
(); }
126
}
// namespace std
128
#endif // ZYPP_COUNTRYCODE_H
zypp
CountryCode.h
Generated by
1.8.1