From e17f83d1d939df299f7377271fdcb0a8057865cd Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Thu, 23 Jun 2022 18:10:10 +0530 Subject: git: Bind git_diff_find_similar from libgit2. * tissue/git.scm: Import %null-pointer from (system foreign). (diff-find-similar!): New function. --- tissue/git.scm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/tissue/git.scm b/tissue/git.scm index c31ebd1..944842d 100644 --- a/tissue/git.scm +++ b/tissue/git.scm @@ -26,7 +26,8 @@ #:use-module (git types) ;; There are many name conflicts between (system foreign). So, we ;; carefully select a few and prefix the rest. - #:use-module ((system foreign) #:select (null-pointer? + #:use-module ((system foreign) #:select (%null-pointer + null-pointer? pointer->string make-pointer dereference-pointer)) @@ -159,6 +160,12 @@ return value is a list of objects." (index-entry index i)) (iota (index-entry-count index)))) +(define diff-find-similar! + (let ((proc (libgit2->procedure* "git_diff_find_similar" '(* *)))) + (lambda (diff) + (proc (diff->pointer diff) %null-pointer) + diff))) + (define (git-top-level) "Return the top-level directory of the current git repository." -- cgit v1.2.3