Make json constructors explicit
This commit is contained in:
parent
75eae5b4fa
commit
0974400f1a
@ -344,7 +344,7 @@ json::node::operator!= (const node &rhs) const
|
|||||||
|
|
||||||
bool json::node::operator==(const char *rhs) const {
|
bool json::node::operator==(const char *rhs) const {
|
||||||
try {
|
try {
|
||||||
return as_string () == rhs;
|
return as_string ().native () == rhs;
|
||||||
} catch (const json::type_error&) {
|
} catch (const json::type_error&) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
10
json.hpp
10
json.hpp
@ -161,8 +161,8 @@ namespace json {
|
|||||||
std::string m_value;
|
std::string m_value;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
string (const std::string &_value): m_value (_value) { ; }
|
explicit string (const std::string &_value): m_value (_value) { ; }
|
||||||
string (const char *_value): m_value (_value) { ; }
|
explicit string (const char *_value): m_value (_value) { ; }
|
||||||
|
|
||||||
virtual const string& as_string (void) const { return *this; }
|
virtual const string& as_string (void) const { return *this; }
|
||||||
virtual bool is_string (void) const { return true; }
|
virtual bool is_string (void) const { return true; }
|
||||||
@ -185,8 +185,8 @@ namespace json {
|
|||||||
double m_value;
|
double m_value;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
number (double _value): m_value (_value) { ; }
|
explicit number (double _value): m_value (_value) { ; }
|
||||||
number (int _value): m_value (_value) { ; }
|
explicit number (int _value): m_value (_value) { ; }
|
||||||
|
|
||||||
virtual const number& as_number (void) const { return *this; }
|
virtual const number& as_number (void) const { return *this; }
|
||||||
virtual bool is_number (void) const { return true; }
|
virtual bool is_number (void) const { return true; }
|
||||||
@ -207,7 +207,7 @@ namespace json {
|
|||||||
bool m_value;
|
bool m_value;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
boolean (bool _value): m_value (_value) { ; }
|
explicit boolean (bool _value): m_value (_value) { ; }
|
||||||
|
|
||||||
virtual const boolean& as_boolean (void) const { return *this; }
|
virtual const boolean& as_boolean (void) const { return *this; }
|
||||||
virtual bool is_boolean (void) const { return true; }
|
virtual bool is_boolean (void) const { return true; }
|
||||||
|
Loading…
Reference in New Issue
Block a user