beginWriteRaw
An alternative to calling write that allows you to write directly to the .writer field, e.g. with .writer.writeAll().
Call beginWriteRaw(), then write a complete value (including any quotes if necessary) directly to the .writer field,
then call endWriteRaw().
This can be useful for streaming very long strings into the output without needing it all buffered in memory.
Function parameters
Parameters
- self:*Stringify
Type definitions in this namespace
Types
Functions in this namespace
Functions
- An alternative to calling `write` that formats a value with `std.fmt`.
- beginWriteRaw
- An alternative to calling `write` that allows you to write directly to the `.writer` field, e.g.
- endWriteRaw
- See `beginWriteRaw`.
- objectField
- See `Stringify` for when to call this method.
- objectFieldRaw
- See `Stringify` for when to call this method.
- beginObjectFieldRaw
- In the rare case that you need to write very long object field names,
- endObjectFieldRaw
- See `beginObjectFieldRaw`.
- write
- Renders the given Zig value as JSON.
- value
- Writes the given value to the `Writer` writer.
- valueAlloc
- Calls `value` and stores the result in dynamically allocated memory instead
- encodeJsonString
- Write `string` to `writer` as a JSON encoded string.
- encodeJsonStringChars
- Write `chars` to `writer` as JSON encoded string characters.
Error sets in this namespace
Error Sets
Source
Implementation
pub fn beginWriteRaw(self: *Stringify) !void {
if (build_mode_has_safety) {
assert(self.raw_streaming_mode == .none);
self.raw_streaming_mode = .value;
}
try self.valueStart();
}