1 module git2.tree; 2 3 import git2.common; 4 import git2.object_; 5 import git2.oid; 6 import git2.util; 7 import git2.types; 8 9 extern (C): 10 11 int git_tree_lookup( 12 git_tree **out_, git_repository *repo, const(git_oid)* id); 13 int git_tree_lookup_prefix( 14 git_tree **out_, 15 git_repository *repo, 16 const(git_oid)* id, 17 size_t len); 18 void git_tree_free(git_tree *tree); 19 const(git_oid)* git_tree_id(const(git_tree)* tree); 20 git_repository * git_tree_owner(const(git_tree)* tree); 21 size_t git_tree_entrycount(const(git_tree)* tree); 22 const(git_tree_entry)* git_tree_entry_byname( 23 const(git_tree)* tree, const(char)* filename); 24 const(git_tree_entry)* git_tree_entry_byindex( 25 const(git_tree)* tree, size_t idx); 26 const(git_tree_entry)* git_tree_entry_byoid( 27 const(git_tree)* tree, const(git_oid)* oid); 28 int git_tree_entry_bypath( 29 git_tree_entry **out_, 30 const(git_tree)* root, 31 const(char)* path); 32 git_tree_entry * git_tree_entry_dup(const(git_tree_entry)* entry); 33 void git_tree_entry_free(git_tree_entry *entry); 34 const(char)* git_tree_entry_name(const(git_tree_entry)* entry); 35 const(git_oid)* git_tree_entry_id(const(git_tree_entry)* entry); 36 git_otype git_tree_entry_type(const(git_tree_entry)* entry); 37 git_filemode_t git_tree_entry_filemode(const(git_tree_entry)* entry); 38 int git_tree_entry_cmp(const(git_tree_entry)* e1, const(git_tree_entry)* e2); 39 int git_tree_entry_to_object( 40 git_object **object_out, 41 git_repository *repo, 42 const(git_tree_entry)* entry); 43 int git_treebuilder_create( 44 git_treebuilder **out_, const(git_tree)* source); 45 void git_treebuilder_clear(git_treebuilder *bld); 46 uint git_treebuilder_entrycount(git_treebuilder *bld); 47 void git_treebuilder_free(git_treebuilder *bld); 48 const(git_tree_entry)* git_treebuilder_get( 49 git_treebuilder *bld, const(char)* filename); 50 int git_treebuilder_insert( 51 const(git_tree_entry)* *out_, 52 git_treebuilder *bld, 53 const(char)* filename, 54 const(git_oid)* id, 55 git_filemode_t filemode); 56 int git_treebuilder_remove( 57 git_treebuilder *bld, const(char)* filename); 58 59 alias git_treebuilder_filter_cb = int function( 60 const(git_tree_entry)* entry, void *payload); 61 62 void git_treebuilder_filter( 63 git_treebuilder *bld, 64 git_treebuilder_filter_cb filter, 65 void *payload); 66 int git_treebuilder_write( 67 git_oid *id, git_repository *repo, git_treebuilder *bld); 68 69 alias git_treewalk_cb = int function( 70 const(char)* root, const(git_tree_entry)* entry, void *payload); 71 72 enum git_treewalk_mode { 73 GIT_TREEWALK_PRE = 0, 74 GIT_TREEWALK_POST = 1, 75 } 76 mixin _ExportEnumMembers!git_treewalk_mode; 77 78 int git_tree_walk( 79 const(git_tree)* tree, 80 git_treewalk_mode mode, 81 git_treewalk_cb callback, 82 void *payload);