Add revwalk support

This commit is contained in:
Carlos Martín Nieto
2013-04-02 17:12:43 +02:00
parent 011068f51c
commit 58aff1e129
8 changed files with 229 additions and 0 deletions

23
c_src/revwalk.h Normal file
View File

@@ -0,0 +1,23 @@
#ifndef GEEF_REVWALK_H
#define GEEF_REVWALK_H
#include "erl_nif.h"
#include <git2.h>
#include "repository.h"
extern ErlNifResourceType *geef_revwalk_type;
typedef struct {
git_revwalk *walk;
geef_repository *repo;
} geef_revwalk;
void geef_revwalk_free(ErlNifEnv *env, void *cd);
ERL_NIF_TERM geef_revwalk_new(ErlNifEnv *env, int argc, const ERL_NIF_TERM argv[]);
ERL_NIF_TERM geef_revwalk_next(ErlNifEnv *env, int argc, const ERL_NIF_TERM argv[]);
ERL_NIF_TERM geef_revwalk_push(ErlNifEnv *env, int argc, const ERL_NIF_TERM argv[]);
ERL_NIF_TERM geef_revwalk_sorting(ErlNifEnv *env, int argc, const ERL_NIF_TERM argv[]);
ERL_NIF_TERM geef_revwalk_reset(ErlNifEnv *env, int argc, const ERL_NIF_TERM argv[]);
#endif