]>
Commit | Line | Data |
---|---|---|
0b726701 VM |
1 | /* |
2 | * Copyright (C) the libgit2 contributors. All rights reserved. | |
3 | * | |
4 | * This file is part of libgit2, distributed under the GNU GPL v2 with | |
5 | * a Linking Exception. For full terms see the included COPYING file. | |
6 | */ | |
0b726701 VM |
7 | |
8 | #include "common.h" | |
0b726701 | 9 | |
eae0bfdc PP |
10 | #include "git2/object.h" |
11 | ||
12 | #include "repository.h" | |
0b726701 VM |
13 | #include "commit.h" |
14 | #include "tree.h" | |
15 | #include "blob.h" | |
16 | #include "tag.h" | |
17 | ||
18 | /** | |
f0224772 | 19 | * Commit |
0b726701 VM |
20 | */ |
21 | int git_commit_lookup(git_commit **out, git_repository *repo, const git_oid *id) | |
22 | { | |
ac3d33df | 23 | return git_object_lookup((git_object **)out, repo, id, GIT_OBJECT_COMMIT); |
0b726701 VM |
24 | } |
25 | ||
26 | int git_commit_lookup_prefix(git_commit **out, git_repository *repo, const git_oid *id, size_t len) | |
27 | { | |
ac3d33df | 28 | return git_object_lookup_prefix((git_object **)out, repo, id, len, GIT_OBJECT_COMMIT); |
0b726701 VM |
29 | } |
30 | ||
31 | void git_commit_free(git_commit *obj) | |
32 | { | |
33 | git_object_free((git_object *)obj); | |
34 | } | |
35 | ||
36 | const git_oid *git_commit_id(const git_commit *obj) | |
37 | { | |
38 | return git_object_id((const git_object *)obj); | |
39 | } | |
40 | ||
41 | git_repository *git_commit_owner(const git_commit *obj) | |
42 | { | |
43 | return git_object_owner((const git_object *)obj); | |
44 | } | |
45 | ||
f0224772 ET |
46 | int git_commit_dup(git_commit **out, git_commit *obj) |
47 | { | |
48 | return git_object_dup((git_object **)out, (git_object *)obj); | |
49 | } | |
0b726701 VM |
50 | |
51 | /** | |
52 | * Tree | |
53 | */ | |
54 | int git_tree_lookup(git_tree **out, git_repository *repo, const git_oid *id) | |
55 | { | |
ac3d33df | 56 | return git_object_lookup((git_object **)out, repo, id, GIT_OBJECT_TREE); |
0b726701 VM |
57 | } |
58 | ||
59 | int git_tree_lookup_prefix(git_tree **out, git_repository *repo, const git_oid *id, size_t len) | |
60 | { | |
ac3d33df | 61 | return git_object_lookup_prefix((git_object **)out, repo, id, len, GIT_OBJECT_TREE); |
0b726701 VM |
62 | } |
63 | ||
64 | void git_tree_free(git_tree *obj) | |
65 | { | |
66 | git_object_free((git_object *)obj); | |
67 | } | |
68 | ||
69 | const git_oid *git_tree_id(const git_tree *obj) | |
70 | { | |
71 | return git_object_id((const git_object *)obj); | |
72 | } | |
73 | ||
74 | git_repository *git_tree_owner(const git_tree *obj) | |
75 | { | |
76 | return git_object_owner((const git_object *)obj); | |
77 | } | |
78 | ||
f0224772 ET |
79 | int git_tree_dup(git_tree **out, git_tree *obj) |
80 | { | |
81 | return git_object_dup((git_object **)out, (git_object *)obj); | |
82 | } | |
0b726701 VM |
83 | |
84 | /** | |
85 | * Tag | |
86 | */ | |
87 | int git_tag_lookup(git_tag **out, git_repository *repo, const git_oid *id) | |
88 | { | |
ac3d33df | 89 | return git_object_lookup((git_object **)out, repo, id, GIT_OBJECT_TAG); |
0b726701 VM |
90 | } |
91 | ||
92 | int git_tag_lookup_prefix(git_tag **out, git_repository *repo, const git_oid *id, size_t len) | |
93 | { | |
ac3d33df | 94 | return git_object_lookup_prefix((git_object **)out, repo, id, len, GIT_OBJECT_TAG); |
0b726701 VM |
95 | } |
96 | ||
97 | void git_tag_free(git_tag *obj) | |
98 | { | |
99 | git_object_free((git_object *)obj); | |
100 | } | |
101 | ||
102 | const git_oid *git_tag_id(const git_tag *obj) | |
103 | { | |
104 | return git_object_id((const git_object *)obj); | |
105 | } | |
106 | ||
107 | git_repository *git_tag_owner(const git_tag *obj) | |
108 | { | |
109 | return git_object_owner((const git_object *)obj); | |
110 | } | |
111 | ||
f0224772 ET |
112 | int git_tag_dup(git_tag **out, git_tag *obj) |
113 | { | |
114 | return git_object_dup((git_object **)out, (git_object *)obj); | |
115 | } | |
116 | ||
0b726701 VM |
117 | /** |
118 | * Blob | |
119 | */ | |
120 | int git_blob_lookup(git_blob **out, git_repository *repo, const git_oid *id) | |
121 | { | |
ac3d33df | 122 | return git_object_lookup((git_object **)out, repo, id, GIT_OBJECT_BLOB); |
0b726701 VM |
123 | } |
124 | ||
125 | int git_blob_lookup_prefix(git_blob **out, git_repository *repo, const git_oid *id, size_t len) | |
126 | { | |
ac3d33df | 127 | return git_object_lookup_prefix((git_object **)out, repo, id, len, GIT_OBJECT_BLOB); |
0b726701 VM |
128 | } |
129 | ||
130 | void git_blob_free(git_blob *obj) | |
131 | { | |
132 | git_object_free((git_object *)obj); | |
133 | } | |
134 | ||
135 | const git_oid *git_blob_id(const git_blob *obj) | |
136 | { | |
137 | return git_object_id((const git_object *)obj); | |
138 | } | |
139 | ||
140 | git_repository *git_blob_owner(const git_blob *obj) | |
141 | { | |
142 | return git_object_owner((const git_object *)obj); | |
143 | } | |
f0224772 ET |
144 | |
145 | int git_blob_dup(git_blob **out, git_blob *obj) | |
146 | { | |
147 | return git_object_dup((git_object **)out, (git_object *)obj); | |
148 | } |