Add Script example.

This commit is contained in:
Vladimir Mihailenco 2013-10-15 13:49:21 +03:00
parent b5ff444f91
commit 7b70bfeadc
1 changed files with 28 additions and 0 deletions

View File

@ -145,6 +145,34 @@ func ExamplePubSub() {
// &{mychannel hello} <nil>
}
func ExampleScript() {
client := redis.NewTCPClient(&redis.Options{
Addr: ":6379",
})
defer client.Close()
setnx := redis.NewScript(`
if redis.call("get", KEYS[1]) == false then
redis.call("set", KEYS[1], ARGV[1])
return 1
end
return 0
`)
run1 := setnx.Run(client, []string{"keynx"}, []string{"foo"})
fmt.Println(run1.Val().(int64), run1.Err())
run2 := setnx.Run(client, []string{"keynx"}, []string{"bar"})
fmt.Println(run2.Val().(int64), run2.Err())
get := client.Get("keynx")
fmt.Println(get)
// Output: 1 <nil>
// 0 <nil>
// GET keynx: foo
}
func Example_customCommand() {
Get := func(client *redis.Client, key string) *redis.StringCmd {
cmd := redis.NewStringCmd("GET", key)