AZ_NODISCARD az_result az_json_reader_init()

in sdk/src/azure/core/az_json_reader.c [14:50]


AZ_NODISCARD az_result az_json_reader_init(
    az_json_reader* out_json_reader,
    az_span json_buffer,
    az_json_reader_options const* options)
{
  _az_PRECONDITION(az_span_size(json_buffer) >= 1);

  *out_json_reader = (az_json_reader){
    .token = (az_json_token){
      .kind = AZ_JSON_TOKEN_NONE,
      .slice = AZ_SPAN_EMPTY,
      .size = 0,
      ._internal = {
        .is_multisegment = false,
        .string_has_escaped_chars = false,
        .pointer_to_first_buffer = &AZ_SPAN_EMPTY,
        .start_buffer_index = -1,
        .start_buffer_offset = -1,
        .end_buffer_index = -1,
        .end_buffer_offset = -1,
      },
    },
    .current_depth = 0,
    ._internal = {
      .json_buffer = json_buffer,
      .json_buffers = &AZ_SPAN_EMPTY,
      .number_of_buffers = 1,
      .buffer_index = 0,
      .bytes_consumed = 0,
      .total_bytes_consumed = 0,
      .is_complex_json = false,
      .bit_stack = { 0 },
      .options = options == NULL ? az_json_reader_options_default() : *options,
    },
  };
  return AZ_OK;
}