mirror of
https://github.com/jbeder/yaml-cpp.git
synced 2025-09-09 04:41:16 +00:00
Added IsNull function
This commit is contained in:
@@ -6,10 +6,14 @@
|
||||
|
||||
namespace YAML
|
||||
{
|
||||
class Node;
|
||||
|
||||
struct _Null {};
|
||||
inline bool operator == (const _Null&, const _Null&) { return true; }
|
||||
inline bool operator != (const _Null&, const _Null&) { return false; }
|
||||
|
||||
bool IsNull(const Node& node);
|
||||
|
||||
extern _Null Null;
|
||||
}
|
||||
|
||||
|
@@ -1,6 +1,12 @@
|
||||
#include "null.h"
|
||||
#include "node.h"
|
||||
|
||||
namespace YAML
|
||||
{
|
||||
_Null Null;
|
||||
|
||||
bool IsNull(const Node& node)
|
||||
{
|
||||
return node.Read(Null);
|
||||
}
|
||||
}
|
||||
|
@@ -261,8 +261,7 @@ namespace Test
|
||||
doc[0] >> output;
|
||||
if(output != "hello")
|
||||
return false;
|
||||
doc[1] >> output;
|
||||
if(output != "~")
|
||||
if(!IsNull(doc[1]))
|
||||
return false;
|
||||
doc[2] >> output;
|
||||
if(output != "world")
|
||||
@@ -297,9 +296,7 @@ namespace Test
|
||||
YAML::Node doc;
|
||||
parser.GetNextDocument(doc);
|
||||
|
||||
std::string output;
|
||||
doc["empty value"] >> output;
|
||||
if(output != "~")
|
||||
if(!IsNull(doc["empty value"]))
|
||||
return false;
|
||||
|
||||
return true;
|
||||
|
Reference in New Issue
Block a user