summaryrefslogtreecommitdiff
path: root/blob.go
diff options
context:
space:
mode:
authorVicent Marti <[email protected]>2013-04-18 00:54:46 +0200
committerVicent Marti <[email protected]>2013-04-18 00:54:46 +0200
commit2bf17ba2f18ad3ae3068568e5754046544b159b7 (patch)
treeb1cf90f9969d54ea41e06d9930e23004c92c9f99 /blob.go
parent7292cafac2d2c4462f3bc0b850e702d6d87f629e (diff)
Ok, now with shared base object
Diffstat (limited to 'blob.go')
-rw-r--r--blob.go20
1 files changed, 3 insertions, 17 deletions
diff --git a/blob.go b/blob.go
index ee50a15..cc26c92 100644
--- a/blob.go
+++ b/blob.go
@@ -8,31 +8,17 @@ package git
import "C"
import (
"unsafe"
- "runtime"
)
type Blob struct {
- ptr *C.git_blob
+ gitObject
}
-func (o *Blob) Id() *Oid {
- return newOidFromC(C.git_blob_id(o.ptr))
-}
-
-func (o *Blob) Type() ObjectType {
- return OBJ_BLOB
-}
-
-func (o *Blob) Free() {
- runtime.SetFinalizer(o, nil)
- C.git_blob_free(o.ptr)
-}
-
-func (v *Blob) Size() int64 {
+func (v Blob) Size() int64 {
return int64(C.git_blob_rawsize(v.ptr))
}
-func (v *Blob) Contents() []byte {
+func (v Blob) Contents() []byte {
size := C.int(C.git_blob_rawsize(v.ptr))
buffer := unsafe.Pointer(C.git_blob_rawcontent(v.ptr))
return C.GoBytes(buffer, size)