### Method

# Ggit Tree walk

#### Declaration [src]

    void
    ggit_tree_walk (
      GgitTree* tree,
      GgitTreeWalkMode mode,
      GgitTreeWalkCallback callback,
      gpointer user_data,
      GError** error
    )

#### Description [src]

Walk all the entries of a tree object recursively (resolving and walking subtrees of the tree as needed). The `error` will be set to the error returned by `callback` (if any).

#### Parameters

`mode`

  Type: `GgitTreeWalkMode`

  The walking order.

`callback`

  Type: `GgitTreeWalkCallback`

  The callback to call for each entry.

`user_data`

  Type: `gpointer`

  User data for the callback.

  The argument can be `NULL`.
  The data is owned by the caller of the method.

`error`

  Type: `GError **`

  The return location for a recoverable error.

  The argument can be `NULL`.
  If the return location is not `NULL`, then you must initialize it to a `NULL` `GError*`.
  The argument will be left initialized to `NULL` by the method if there are no errors.
  In case of error, the argument will be set to a newly allocated `GError`; the caller will take ownership of the data, and be responsible for freeing it.