當前位置: 首頁>>代碼示例>>Golang>>正文


Golang goerr.NewError函數代碼示例

本文整理匯總了Golang中github.com/seefan/goerr.NewError函數的典型用法代碼示例。如果您正苦於以下問題:Golang NewError函數的具體用法?Golang NewError怎麽用?Golang NewError使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了NewError函數的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: slice

//返回下標處於區域 [begin, end] 的元素. begin 和 end 可以是負數
//
//  name queue 的名字.
//  begin 正整數, 從此下標處開始返回。從 0 開始。
//  end 整數, 結束下標。可以是負數, 表示返回所有。
//  [slice,range] 命令
//  返回 v,返回元素的數組,為空時返回 nil
//  返回 err,執行的錯誤,操作成功返回 nil
func (this *Client) slice(name string, args ...int) (v []Value, err error) {
	begin := 0
	end := -1
	index := 0
	if len(args) > 0 {
		begin = args[0]
	}
	if len(args) > 1 {
		end = args[1]
	}
	if len(args) > 2 {
		index = args[2]
	}
	resp, err := this.Do(qslice_cmd[index], name, begin, end)
	if err != nil {
		return nil, goerr.NewError(err, "%s %s error", qslice_cmd[index], name)
	}
	size := len(resp)
	if size >= 1 && resp[0] == "ok" {
		for i := 1; i < size; i++ {
			v = append(v, Value(resp[i]))
		}
		return
	}
	return nil, makeError(resp, name)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:34,代碼來源:queue.go

示例2: Expire

//設置過期
//
//  key 要設置過期的 key
//  ttl 存活時間(秒)
//  返回 re,設置是否成功,如果當前 key 不存在返回 false
//  返回 err,執行的錯誤,操作成功返回 nil
func (this *Client) Expire(key string, ttl int64) (re bool, err error) {
	resp, err := this.Do("expire", key, ttl)
	if err != nil {
		return false, goerr.NewError(err, "Expire %s error", key)
	}
	if len(resp) == 2 && resp[0] == "ok" {
		return resp[1] == "1", nil
	}
	return false, makeError(resp, key, ttl)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:16,代碼來源:set.go

示例3: Getset

//更新 key 對應的 value, 並返回更新前的舊的 value.
//
//  key 鍵值
//  val 存貯的 value 值,val隻支持基本的類型,如果要支持複雜的類型,需要開啟連接池的 Encoding 選項
//  返回 一個 Value,可以方便的向其它類型轉換.如果 key 不存在則返回 "", 否則返回 key 對應的值內容.
//  返回 一個可能的錯誤,操作成功返回 nil
func (this *Client) Getset(key string, val interface{}) (Value, error) {
	resp, err := this.Do("getset", key, val)
	if err != nil {
		return "", goerr.NewError(err, "Getset %s error", key)
	}
	if len(resp) == 2 && resp[0] == "ok" {
		return Value(resp[1]), nil
	}
	return "", makeError(resp, key)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:16,代碼來源:set.go

示例4: Qback

//返回隊列的最後一個元素.
//
//  key  隊列的名字
//  返回 val,返回的值.
//  返回 err,執行的錯誤,操作成功返回 nil
func (this *Client) Qback(key string) (Value, error) {
	resp, err := this.Do("qback", key)
	if err != nil {
		return "", goerr.NewError(err, "Qback %s error", key)
	}
	if len(resp) == 2 && resp[0] == "ok" {
		return Value(resp[1]), nil
	}
	return "", makeError(resp, key)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:15,代碼來源:queue.go

示例5: Qget

//返回指定位置的元素. 0 表示第一個元素, 1 是第二個 ... -1 是最後一個.
//
//  key  隊列的名字
//  index 指定的位置,可傳負數.
//  返回 val,返回的值.
//  返回 err,執行的錯誤,操作成功返回 nil
func (this *Client) Qget(key string, index int64) (Value, error) {
	resp, err := this.Do("qget", key, index)
	if err != nil {
		return "", goerr.NewError(err, "Qget %s error", key)
	}
	if len(resp) == 2 && resp[0] == "ok" {
		return Value(resp[1]), nil
	}
	return "", makeError(resp, key)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:16,代碼來源:queue.go

示例6: Hget

//獲取 hashmap 中指定 key 的值內容.
//
//  setName hashmap 的名字
//  key hashmap 的 key
//  返回 value key 的值
//  返回 err,執行的錯誤
func (this *Client) Hget(setName, key string) (value Value, err error) {
	resp, err := this.Do("hget", setName, key)
	if err != nil {
		return "", goerr.NewError(err, "Hget %s/%s error", setName, key)
	}
	if len(resp) == 2 && resp[0] == "ok" {
		return Value(resp[1]), nil
	}
	return "", makeError(resp, setName, key)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:16,代碼來源:hset.go

示例7: Hdel

//刪除 hashmap 中的指定 key,不能通過返回值來判斷被刪除的 key 是否存在.
//
//  setName hashmap 的名字
//  key hashmap 的 key
//  返回 err,執行的錯誤
func (this *Client) Hdel(setName, key string) (err error) {
	resp, err := this.Do("hdel", setName, key)
	if err != nil {
		return goerr.NewError(err, "Hdel %s/%s error", setName, key)
	}
	if len(resp) > 0 && resp[0] == "ok" {
		return nil
	}
	return makeError(resp, setName, key)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:15,代碼來源:hset.go

示例8: Zget

func (this *Client) Zget(setName, key string) (score int64, err error) {
	resp, err := this.Do("zget", setName, key)
	if err != nil {
		return 0, goerr.NewError(err, "Zget %s/%s error", setName, key)
	}
	if len(resp) == 2 && resp[0] == "ok" {
		return Value(resp[1]).Int64(), nil
	}
	return 0, makeError(resp, setName, key)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:10,代碼來源:zset.go

示例9: Setnx

//當 key 不存在時, 設置指定 key 的值內容. 如果已存在, 則不設置.
//
//  key 鍵值
//  val 存貯的 value 值,val隻支持基本的類型,如果要支持複雜的類型,需要開啟連接池的 Encoding 選項
//  返回 err,可能的錯誤,操作成功返回 nil
//  返回 val 1: value 已經設置, 0: key 已經存在, 不更新.
func (this *Client) Setnx(key string, val interface{}) (Value, error) {
	resp, err := this.Do("setnx", key, this.encoding(val, false))

	if err != nil {
		return "", goerr.NewError(err, "Setnx %s error", key)
	}
	if len(resp) > 0 && resp[0] == "ok" {
		return Value(resp[1]), nil
	}
	return "", makeError(resp, key)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:17,代碼來源:set.go

示例10: Qsize

//返回隊列的長度.
//
//  name  隊列的名字
//  返回 size,隊列的長度;
//  返回 err,執行的錯誤,操作成功返回 nil
func (this *Client) Qsize(name string) (size int64, err error) {
	resp, err := this.Do("qsize", name)
	if err != nil {
		return -1, goerr.NewError(err, "Qsize %s error", name)
	}

	if len(resp) == 2 && resp[0] == "ok" {
		return Value(resp[1]).Int64(), nil
	}
	return -1, makeError(resp, name)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:16,代碼來源:queue.go

示例11: Hclear

//刪除 hashmap 中的所有 key
//
//  setName hashmap 的名字
//  返回 err,執行的錯誤,操作成功返回 nil
func (this *Client) Hclear(setName string) (err error) {
	resp, err := this.Do("hclear", setName)
	if err != nil {
		return goerr.NewError(err, "Hclear %s error", setName)
	}

	if len(resp) > 0 && resp[0] == "ok" {
		return nil
	}
	return makeError(resp, setName)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:15,代碼來源:hset.go

示例12: Zset

func (this *Client) Zset(setName, key string, score int64) (err error) {
	resp, err := this.Do("zset", setName, key, this.encoding(score, false))
	if err != nil {
		return goerr.NewError(err, "Zset %s/%s error", setName, key)
	}

	if len(resp) > 0 && resp[0] == "ok" {
		return nil
	}
	return makeError(resp, setName, key)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:11,代碼來源:zset.go

示例13: Hexists

//判斷指定的 key 是否存在於 hashmap 中.
//
//  setName hashmap 的名字
//  key hashmap 的 key
//  返回 re,如果當前 key 不存在返回 false
//  返回 err,執行的錯誤,操作成功返回 nil
func (this *Client) Hexists(setName, key string) (re bool, err error) {
	resp, err := this.Do("hexists", setName, key)
	if err != nil {
		return false, goerr.NewError(err, "Hexists %s/%s error", setName, key)
	}

	if len(resp) == 2 && resp[0] == "ok" {
		return resp[1] == "1", nil
	}
	return false, makeError(resp, setName, key)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:17,代碼來源:hset.go

示例14: Hset

//設置 hashmap 中指定 key 對應的值內容.
//
//  setName hashmap 的名字
//  key hashmap 的 key
//  value key 的值
//  返回 err,執行的錯誤
func (this *Client) Hset(setName, key string, value interface{}) (err error) {
	resp, err := this.Do("hset", setName, key, this.encoding(value, false))
	if err != nil {
		return goerr.NewError(err, "Hset %s/%s error", setName, key)
	}

	if len(resp) > 0 && resp[0] == "ok" {
		return nil
	}
	return makeError(resp, setName, key)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:17,代碼來源:hset.go

示例15: Ttl

//返回 key(隻針對 KV 類型) 的存活時間.
//
//  key 要刪除的 key
//  返回 ttl,key 的存活時間(秒), -1 表示沒有設置存活時間.
//  返回 err,執行的錯誤,操作成功返回 nil
func (this *Client) Ttl(key string) (ttl int64, err error) {
	resp, err := this.Do("ttl", key)
	if err != nil {
		return -1, goerr.NewError(err, "Ttl %s error", key)
	}

	//response looks like this: [ok 1]
	if len(resp) > 0 && resp[0] == "ok" {
		return Value(resp[1]).Int64(), nil
	}
	return -1, makeError(resp, key)
}
開發者ID:lunny,項目名稱:gossdb,代碼行數:17,代碼來源:set.go


注:本文中的github.com/seefan/goerr.NewError函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。