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
use curl;
use git2;
use regex;
use serde_json;
use std;
use url;
quick_error! {
#[derive(Debug)]
pub enum GGRError {
Curl(err: curl::Error) {
description(err.description())
from()
}
FromUtf8(err: std::string::FromUtf8Error) {
description(err.description())
from()
}
General(err: String) {
description(err)
from()
}
Git2(err: git2::Error) {
description(err.message())
from()
}
JsonError(err: serde_json::error::Error) {
description(err.description())
from()
}
Num(err: std::num::ParseIntError) {
description(err.description())
from()
}
Regex(err: regex::Error) {
description(err.description())
from()
}
StdIo(err: std::io::Error) {
description(err.description())
from()
}
Url(err: url::ParseError) {
description(err.description())
from()
}
}
}
pub type GGRResult<T> = Result<T, GGRError>;