Git.pm: Implement Git::exec_path()
This patch implements Git::exec_path() (as a direct XS call). Signed-off-by: Petr Baudis <pasky@suse.cz> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:

committed by
Junio C Hamano

parent
b1edc53d06
commit
eca1f6fdb8
15
perl/Git.pm
15
perl/Git.pm
@ -48,7 +48,7 @@ require Exporter;
|
|||||||
|
|
||||||
# Methods which can be called as standalone functions as well:
|
# Methods which can be called as standalone functions as well:
|
||||||
@EXPORT_OK = qw(command command_oneline command_pipe command_noisy
|
@EXPORT_OK = qw(command command_oneline command_pipe command_noisy
|
||||||
hash_object);
|
exec_path hash_object);
|
||||||
|
|
||||||
|
|
||||||
=head1 DESCRIPTION
|
=head1 DESCRIPTION
|
||||||
@ -288,6 +288,19 @@ sub command_noisy {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
=item exec_path ()
|
||||||
|
|
||||||
|
Return path to the git sub-command executables (the same as
|
||||||
|
C<git --exec-path>). Useful mostly only internally.
|
||||||
|
|
||||||
|
Implementation of this function is very fast; no external command calls
|
||||||
|
are involved.
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
|
# Implemented in Git.xs.
|
||||||
|
|
||||||
|
|
||||||
=item hash_object ( FILENAME [, TYPE ] )
|
=item hash_object ( FILENAME [, TYPE ] )
|
||||||
|
|
||||||
=item hash_object ( FILEHANDLE [, TYPE ] )
|
=item hash_object ( FILEHANDLE [, TYPE ] )
|
||||||
|
12
perl/Git.xs
12
perl/Git.xs
@ -6,6 +6,7 @@
|
|||||||
|
|
||||||
/* libgit interface */
|
/* libgit interface */
|
||||||
#include "../cache.h"
|
#include "../cache.h"
|
||||||
|
#include "../exec_cmd.h"
|
||||||
|
|
||||||
/* XS and Perl interface */
|
/* XS and Perl interface */
|
||||||
#include "EXTERN.h"
|
#include "EXTERN.h"
|
||||||
@ -21,6 +22,17 @@ PROTOTYPES: DISABLE
|
|||||||
|
|
||||||
# /* TODO: xs_call_gate(). See Git.pm. */
|
# /* TODO: xs_call_gate(). See Git.pm. */
|
||||||
|
|
||||||
|
|
||||||
|
const char *
|
||||||
|
xs_exec_path()
|
||||||
|
CODE:
|
||||||
|
{
|
||||||
|
RETVAL = git_exec_path();
|
||||||
|
}
|
||||||
|
OUTPUT:
|
||||||
|
RETVAL
|
||||||
|
|
||||||
|
|
||||||
char *
|
char *
|
||||||
xs_hash_object(file, type = "blob")
|
xs_hash_object(file, type = "blob")
|
||||||
SV *file;
|
SV *file;
|
||||||
|
Reference in New Issue
Block a user