Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
executable file
·
115 lines (95 loc) · 3.02 KB

File metadata and controls

executable file
·
115 lines (95 loc) · 3.02 KB
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
/*
* Copyright 2011, Tim Branyen @tbranyen <tim@tabdeveloper.com>
* Dual licensed under the MIT and GPL licenses.
*/
#ifndef COMMIT_H
#define COMMIT_H
#include <v8.h>
#include <node.h>
#include "../vendor/libgit2/include/git2.h"
#include "reference.h"
#include "repo.h"
#include "oid.h"
#include "tree.h"
using namespace node;
using namespace v8;
/**
* Class wrapper for libgit2 git_commit
*/
class GitCommit : public ObjectWrap {
public:
/**
* v8::FunctionTemplate used to create Node.js constructor
*/
static Persistent<Function> constructor_template;
/**
* Used to intialize the EventEmitter from Node.js
*
* @param target v8::Object the Node.js module object
*/
static void Initialize (Handle<v8::Object> target);
git_commit* GetValue();
void SetValue(git_commit* commit);
int Lookup(git_repository* repo, git_oid* oid);
void Close();
const git_oid* Id();
const char* MessageShort();
const char* Message();
time_t Time();
int TimeOffset();
const git_signature* Committer();
const git_signature* Author();
int Tree(git_tree** tree);
unsigned int ParentCount();
int Parent(git_commit** commit, int pos);
protected:
GitCommit() {}
~GitCommit() {}
static Handle<Value> New(const Arguments& args);
static Handle<Value> NewInstance();
static Handle<Value> Lookup(const Arguments& args);
static void LookupWork(uv_work_t *req);
static void LookupAfterWork(uv_work_t *req);
static Handle<Value> Close(const Arguments& args);
static Handle<Value> Id(const Arguments& args);
static Handle<Value> MessageShort(const Arguments& args);
static Handle<Value> Message(const Arguments& args);
static Handle<Value> Time(const Arguments& args);
static Handle<Value> TimeOffset(const Arguments& args);
static Handle<Value> Committer(const Arguments& args);
static Handle<Value> Author(const Arguments& args);
static Handle<Value> Tree(const Arguments& args);
static void TreeWork(uv_work_t* req);
static void TreeAfterWork(uv_work_t* req);
static Handle<Value> ParentCount(const Arguments& args);
static Handle<Value> ParentSync(const Arguments& args);
static Handle<Value> Parent(const Arguments& args);
static void ParentWork(uv_work_t* req);
static void ParentAfterWork(uv_work_t* req);
private:
git_commit* commit;
git_oid* oid;
struct lookup_request {
GitCommit* commit;
GitRepo* repo;
GitOid* oid;
int err;
Persistent<Function> callback;
};
/**
* Struct: parent_request
* Contains references to the current commit, parent commit (output)
* parent commit's index, also contains references to an error code post
* lookup, and a callback function to execute.
*/
struct ParentBaton {
uv_work_t request;
int errorCode;
const char* errorMessage;
int index;
GitCommit *commit;
git_commit *rawParentCommit;
Persistent<Function> callback;
};
};
#endif
Morty Proxy This is a proxified and sanitized view of the page, visit original site.