### Method

# Json ObjectIter next_ordered

since: 1.6

#### Declaration [src]

    gboolean
    json_object_iter_next_ordered (
      JsonObjectIter* iter,
      const char** member_name,
      JsonNode** member_node
    )

#### Description [src]

Advances the iterator and retrieves the next member in the object.

If the end of the object is reached, `FALSE` is returned and `member_name` and `member_node` are set to invalid values. After that point, the `iter` is invalid.

The order in which members are returned by the iterator is the same order in which the members were added to the `JsonObject`. The iterator is invalidated if its `JsonObject` is modified during iteration.

You must use this function with an iterator initialized with `json_object_iter_init_ordered()`; using this function with an iterator initialized with `json_object_iter_init()` yields undefined behavior.

See also: `json_object_iter_next()`.

Available since: 1.6

#### Parameters

`member_name`

  Type: `const char**`

  Return location for the member name, or `NULL` to ignore.

  The argument will be set by the function.
  The argument can be `NULL`.
  The returned data is owned by the instance.
  The value is a NUL terminated UTF-8 string.

`member_node`

  Type: `JsonNode`

  Return location for the member value, or `NULL` to ignore.

  The argument will be set by the function.
  The argument can be `NULL`.
  The returned data is owned by the instance.

#### Return value

Type: `gboolean`

`TRUE`if `member_name` and `member_node` are valid; `FALSE` if the end of the object has been reached.