## InfcBrowserIter InfcBrowserIter — Iterating through browsed nodes |

## Stability Level

Unstable, unless otherwise indicated

## Synopsis

    #include <libinfinity/client/infc-browser-iter.h>

    struct              InfcBrowserIter;
    InfcBrowserIter *   infc_browser_iter_copy              (InfcBrowserIter *iter);
    void                infc_browser_iter_free              (InfcBrowserIter *iter);

## Object Hierarchy

      GBoxed
       +----InfcBrowserIter

## Description

The InfcBrowserIter is used to iterate through the nodes of a InfcBrowser. Normally, InfcBrowserIter is allocated on the stack and initialized by a InfcBrowser API call, such as `infc_browser_iter_get_root()`. You can also safely copy the struct by value to create a copy. It is not necessary to free it.

Most operations are done via the InfcBrowser API. These methods could be useful to language bindings.

An initialized InfcBrowserIter always points to a node within the InfcBrowser. It stays valid as long as the node it points to is not removed from the browser (if it is, the "node-removed") signal is emitted.

## Details

### struct InfcBrowserIter

    struct InfcBrowserIter {
      guint node_id;
      gpointer node;
    };

### infc_browser_iter_copy ()

    InfcBrowserIter *   infc_browser_iter_copy              (InfcBrowserIter *iter);

Makes a dynamically allocated copy of `iter`. This should not be used by applications because you can copy the structs by value.

`iter` : | A InfcBrowserIter.
Returns : | A newly-allocated copy of `iter`.

### infc_browser_iter_free ()

    void                infc_browser_iter_free              (InfcBrowserIter *iter);

Frees a InfcBrowserIter allocated by `infc_browser_iter_copy()`.

`iter` : | A InfcBrowserIter.

## See Also

InfcBrowser