-
Notifications
You must be signed in to change notification settings - Fork 11
/
shared.go
49 lines (42 loc) · 1.08 KB
/
shared.go
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
package main
import (
cookies "github.com/asg017/sqlite-http/cookies"
do "github.com/asg017/sqlite-http/do"
headers "github.com/asg017/sqlite-http/headers"
meta "github.com/asg017/sqlite-http/meta"
"go.riyazali.net/sqlite"
)
// Set in Makefile
var (
Commit string
Date string
Version string
// TODO should be in seperate script - this works, but the generated binary
// should have no reference to do functions at all, should be slimmed-down binary
OmitDo string
)
func init() {
omitDo := OmitDo == "1"
sqlite.Register(func(api *sqlite.ExtensionApi) (sqlite.ErrorCode, error) {
if err := meta.Register(api, meta.RegisterParams{
Version: Version,
Commit: Commit,
Date: Date,
}); err != nil {
return sqlite.SQLITE_ERROR, err
}
if !omitDo {
if err := do.Register(api); err != nil {
return sqlite.SQLITE_ERROR, err
}
}
if err := headers.Register(api); err != nil {
return sqlite.SQLITE_ERROR, err
}
if err := cookies.Register(api); err != nil {
return sqlite.SQLITE_ERROR, err
}
return sqlite.SQLITE_OK, nil
})
}
func main() {}