/*
Copyright (c) 2011, Tim Branyen @tbranyen
*/
#ifndef OID_H
#define OID_H
#include
#include
#include "../vendor/libgit2/include/git2.h"
using namespace node;
using namespace v8;
class GitOid : public ObjectWrap {
public:
static Persistent constructor_template;
static void Initialize (Handle target);
Handle WrapObj(Local obj);
git_oid GetValue();
void SetValue(git_oid oid);
int Mkstr(const char* str);
void Mkraw(const unsigned char* raw);
void Fmt(char* buffer);
void PathFmt(char *str);
char* AllocFmt();
char* ToString(char* buffer, size_t bufferSize);
void Cpy(git_oid* out);
int Cmp(const git_oid* a, const git_oid* b);
GitOid() {}
~GitOid() {}
protected:
static Handle New(const Arguments& args);
static Handle Mkstr(const Arguments& args);
static Handle Mkraw(const Arguments& args);
static Handle Fmt(const Arguments& args);
static Handle PathFmt(const Arguments& args);
static Handle AllocFmt(const Arguments& args);
static Handle ToString(const Arguments& args);
static Handle Cpy(const Arguments& args);
static Handle Cmp(const Arguments& args);
private:
git_oid oid;
};
#endif