diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 704e39e..2bf8a26 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -6,7 +6,8 @@ - + + - - - - - - - - - - - - - - - - - - - - - - + + - + - + + + + + + + + + + + - - + + @@ -109,6 +100,18 @@ + + + + + + + + + + + + @@ -154,7 +157,6 @@ @@ -449,7 +452,7 @@ - + 1500458878821 @@ -612,11 +615,18 @@ - - @@ -807,13 +817,6 @@ - - - - - - - @@ -828,13 +831,6 @@ - - - - - - - @@ -944,19 +940,11 @@ - + - - - - - - - - @@ -973,14 +961,6 @@ - - - - - - - - @@ -1005,6 +985,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1013,22 +1029,20 @@ - + - - - - - + + + - + - - + + - + diff --git a/map.go b/map.go index c632a7d..c553138 100644 --- a/map.go +++ b/map.go @@ -4,6 +4,7 @@ import ( "encoding/json" "errors" "reflect" + "time" ) //hotime的常用map @@ -46,6 +47,17 @@ func (this Map) GetInt(key string, err ...*Error) int { } +// //唯一标志 +func (this Map) GetTag() int64 { + + res := this.GetInt64(MUTEX_MAP) + if res == int64(0) { + res = time.Now().UnixNano() + this.Put(MUTEX_MAP, res) + } + return res +} + //获取Int func (this Map) GetInt64(key string, err ...*Error) int64 { v := ObjToInt64((this)[key], err...) diff --git a/slice.go b/slice.go index f577ed3..36662aa 100644 --- a/slice.go +++ b/slice.go @@ -1,80 +1,78 @@ package hotime -import ("encoding/json" - "errors") +import ( + "encoding/json" + "errors" +) type Slice []interface{} //获取string -func (this Slice) GetString(key int,err... *Error) string { - if(len(err)!=0){ +func (this Slice) GetString(key int, err ...*Error) string { + if len(err) != 0 { err[0].SetError(nil) } return ObjToStr((this)[key]) } //获取Int -func (this Slice) GetInt(key int,err... *Error) int { - v := ObjToInt((this)[key],err...) +func (this Slice) GetInt(key int, err ...*Error) int { + v := ObjToInt((this)[key], err...) return v } //获取Int -func (this Slice) GetInt64(key int,err... *Error) int64 { - v:= ObjToInt64((this)[key],err...) +func (this Slice) GetInt64(key int, err ...*Error) int64 { + v := ObjToInt64((this)[key], err...) return v } //获取Float64 -func (this Slice) GetFloat64(key int,err... *Error) (float64) { - v:= ObjToFloat64((this)[key],err...) +func (this Slice) GetFloat64(key int, err ...*Error) float64 { + v := ObjToFloat64((this)[key], err...) return v } -func (this Slice) GetSlice(key int,err... *Error) Slice { - v := ObjToSlice((this)[key],err...) +func (this Slice) GetSlice(key int, err ...*Error) Slice { + v := ObjToSlice((this)[key], err...) return v } - -func (this Slice) GetMap(key int,err... *Error) Map { +func (this Slice) GetMap(key int, err ...*Error) Map { //var v Map - v:= ObjToMap((this)[key],err...) + v := ObjToMap((this)[key], err...) return v } +func (this Slice) Get(key int, err ...*Error) interface{} { - -func (this Slice) Get(key int,err... *Error) interface{} { - - if(key