Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #pragma once
- #include "common.h"
- #include "value.h"
- namespace fn {
- class OutputStream;
- namespace json {
- class ValueSerializer
- {
- public:
- virtual bool valueNeedsTransform(const Value & value) = 0;
- virtual Value transformValue(const Value & value) = 0;
- virtual ~ValueSerializer() = default;
- };
- FN_EXPORT void serialize(const Value & value, OutputStream & outputStream, bool pretty);
- FN_EXPORT void serialize(const Value & value, OutputStream & outputStream, bool pretty,
- ValueSerializer & serializer);
- //
- //
- //
- class ValueDeserializer
- {
- public:
- virtual Value transformValue(Value value) = 0;
- virtual ~ValueDeserializer() = default;
- };
- FN_EXPORT Value deserialize(StringView str, const NativePath & path = NativePath());
- FN_EXPORT Value deserialize(StringView str,
- ValueDeserializer & deserializer,
- const NativePath & path = NativePath());
- } // namespace json
- } // namespace fn
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement