2 * Copyright 2017, Andrew Lindesay <apl@lindesay.co.nz>
3 * Distributed under the terms of the MIT License.
7 #include "JsonWriter.h"
12 #include <UnicodeChar.h>
15 BJsonWriter::BJsonWriter()
22 BJsonWriter::~BJsonWriter()
28 BJsonWriter::HandleError(status_t status
, int32 line
,
31 if(fErrorStatus
== B_OK
) {
34 fErrorStatus
= status
;
35 fprintf(stderr
, "! json err @line %" B_PRIi32
" - %s : %s\n", line
,
36 strerror(status
), message
);
42 BJsonWriter::ErrorStatus()
49 BJsonWriter::WriteBoolean(bool value
)
59 BJsonWriter::WriteTrue()
61 Handle(BJsonEvent(B_JSON_TRUE
));
67 BJsonWriter::WriteFalse()
69 Handle(BJsonEvent(B_JSON_FALSE
));
75 BJsonWriter::WriteNull()
77 Handle(BJsonEvent(B_JSON_NULL
));
83 BJsonWriter::WriteInteger(int64 value
)
85 Handle(BJsonEvent(value
));
91 BJsonWriter::WriteDouble(double value
)
93 Handle(BJsonEvent(value
));
99 BJsonWriter::WriteString(const char* value
)
101 Handle(BJsonEvent(value
));
107 BJsonWriter::WriteObjectStart()
109 Handle(BJsonEvent(B_JSON_OBJECT_START
));
115 BJsonWriter::WriteObjectName(const char* value
)
117 Handle(BJsonEvent(B_JSON_OBJECT_NAME
, value
));
123 BJsonWriter::WriteObjectEnd()
125 Handle(BJsonEvent(B_JSON_OBJECT_END
));
131 BJsonWriter::WriteArrayStart()
133 Handle(BJsonEvent(B_JSON_ARRAY_START
));
139 BJsonWriter::WriteArrayEnd()
141 Handle(BJsonEvent(B_JSON_ARRAY_END
));