| Top | Description | Object Hierarchy |
GgitTree; struct GgitTreeClass; gint (*GgitTreeWalkCallback) (const gchar *root,const GgitTreeEntry *entry,gpointer user_data); enum GgitTreeWalkMode; GgitOId * ggit_tree_get_id (GgitTree *tree); GgitTreeEntry * ggit_tree_get (GgitTree *tree,guint i); guint ggit_tree_size (GgitTree *tree); GgitTreeEntry * ggit_tree_get_by_name (GgitTree *tree,const gchar *name); GgitTreeEntry * ggit_tree_get_by_path (GgitTree *tree,const gchar *path,GError **error); void ggit_tree_walk (GgitTree *tree,GgitTreeWalkMode mode,GgitTreeWalkCallback callback,gpointer user_data,GError **error);
GObject +----GgitObjectFactoryBase +----GgitNative +----GgitObject +----GgitTree
GEnum +----GgitTreeWalkMode
gint (*GgitTreeWalkCallback) (const gchar *root,const GgitTreeEntry *entry,gpointer user_data);
The type of the callback functions for walking a tree.
See ggit_tree_walk().
|
the current (relative) root of the entry |
|
the tree entry |
|
user-supplied data. [closure] |
Returns : |
0 to go for the next entry or a GgitError in case there was an error. |
typedef enum {
GGIT_TREE_WALK_MODE_PRE = 0,
GGIT_TREE_WALK_MODE_POST = 1,
} GgitTreeWalkMode;
Describes in which order a tree walk should be performed.
GgitTreeEntry * ggit_tree_get (GgitTree *tree,guint i);
Get a tree entry by index.
|
a GgitTree. |
|
the index of the entry. |
Returns : |
a GgitTreeEntry. [transfer full] |
guint ggit_tree_size (GgitTree *tree);
Get the number of entries in the tree.
|
a GgitTree. |
Returns : |
the number of entries in the tree. |
GgitTreeEntry * ggit_tree_get_by_name (GgitTree *tree,const gchar *name);
Get a tree entry by name.
|
a GgitTree. |
|
a filename. |
Returns : |
a GgitTreeEntry. [transfer full] |
GgitTreeEntry * ggit_tree_get_by_path (GgitTree *tree,const gchar *path,GError **error);
Retrieves a tree entry contained in a tree or in any of its subtrees, given its relative path.
|
a GgitTree. |
|
a path. |
|
a GError for error reporting, or NULL. |
Returns : |
a GgitTreeEntry. [transfer full] |
void ggit_tree_walk (GgitTree *tree,GgitTreeWalkMode mode,GgitTreeWalkCallback callback,gpointer user_data,GError **error);
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).
|
a GgitTree. |
|
the walking order. |
|
the callback to call for each entry. [scope call] |
|
user data for the callback. [closure] |
|
a GError for error reporting, or NULL. |