Added helper emitter functions, but we have a problem: YAML::Value is already a manipulator

This commit is contained in:
Jesse Beder
2011-09-10 16:50:44 -05:00
parent 12364895cb
commit 78b7a1b8a9
5 changed files with 47 additions and 4 deletions

23
src/value/emit.cpp Normal file
View File

@@ -0,0 +1,23 @@
#include "yaml-cpp/value/emit.h"
#include "yaml-cpp/emitfromevents.h"
#include "yaml-cpp/emitter.h"
#include "valueevents.h"
namespace YAML
{
Emitter& operator << (Emitter& out, const Value& value)
{
EmitFromEvents emitFromEvents(out);
ValueEvents events(value);
events.Emit(emitFromEvents);
return out;
}
std::ostream& operator << (std::ostream& out, const Value& value)
{
Emitter emitter;
emitter << value;
out << emitter.c_str();
return out;
}
}

View File

@@ -18,7 +18,7 @@ namespace YAML
class ValueEvents
{
public:
ValueEvents(const Value& value);
explicit ValueEvents(const Value& value);
void Emit(EventHandler& handler);