internal static Blob BuildFromPtr(GitObjectSafeHandle obj, ObjectId id, Repository repo) { var blob = new Blob(repo, id) { Size = NativeMethods.git_blob_rawsize(obj) }; return blob; }
internal static TagAnnotation BuildFromPtr(GitObjectSafeHandle obj, ObjectId id, Repository repo) { ObjectId targetOid = NativeMethods.git_tag_target_oid(obj).MarshalAsObjectId(); return new TagAnnotation(id) { Message = NativeMethods.git_tag_message(obj), Name = NativeMethods.git_tag_name(obj), Tagger = new Signature(NativeMethods.git_tag_tagger(obj)), targetBuilder = new Lazy<GitObject>(() => repo.Lookup<GitObject>(targetOid)) }; }
public ObjectSafeWrapper(ObjectId id, RepositorySafeHandle handle, bool allowNullObjectId = false) { Ensure.ArgumentNotNull(handle, "handle"); if (allowNullObjectId && id == null) { objectPtr = new NullGitObjectSafeHandle(); } else { Ensure.ArgumentNotNull(id, "id"); objectPtr = Proxy.git_object_lookup(handle, id, GitObjectType.Any); } }
private static string RetrieveEncodingOf(GitObjectSafeHandle obj) { string encoding = NativeMethods.git_commit_message_encoding(obj); return encoding ?? "UTF-8"; }
internal static Commit BuildFromPtr(GitObjectSafeHandle obj, ObjectId id, Repository repo) { ObjectId treeId = NativeMethods.git_commit_tree_oid(obj).MarshalAsObjectId(); return new Commit(id, treeId, repo) { Message = NativeMethods.git_commit_message(obj), Encoding = RetrieveEncodingOf(obj), Author = new Signature(NativeMethods.git_commit_author(obj)), Committer = new Signature(NativeMethods.git_commit_committer(obj)), }; }
private static DiffListSafeHandle BuildDiffListFromComparer(GitObjectSafeHandle handle, TreeComparisonHandleRetriever comparisonHandleRetriever) { GitDiffOptions options = DefaultOptions; return comparisonHandleRetriever(handle, options); }