MCPcopy Create free account
hub / github.com/IceFireDB/IceFireDB / parseXScanArgs

Function parseXScanArgs

scan.go:34–70  ·  view source on GitHub ↗
(args []string)

Source from the content-addressed store, hash-verified

32}
33
34func parseXScanArgs(args []string) (cursor []byte, match string, count int, desc bool, err error) {
35 cursor = []byte(args[0])
36 args = args[1:]
37 count = 10
38 desc = false
39 for i := 0; i < len(args); {
40 switch strings.ToUpper(args[i]) {
41 case "MATCH":
42 if i+1 >= len(args) {
43 err = uhaha.ErrInvalid
44 return
45 }
46 match = args[i+1]
47 i++
48 case "COUNT":
49 if i+1 >= len(args) {
50 err = uhaha.ErrInvalid
51 return
52 }
53 count, err = strconv.Atoi(args[i+1])
54 if err != nil {
55 err = uhaha.ErrInvalid
56 return
57 }
58 i++
59 case "ASC":
60 desc = false
61 case "DESC":
62 desc = true
63 default:
64 err = fmt.Errorf("invalid argument %s", args[i])
65 return
66 }
67 i++
68 }
69 return
70}
71
72func parseScanArgs(args []string) (cursor []byte, match string, count int, desc bool, err error) {
73 cursor, match, count, desc, err = parseXScanArgs(args)

Callers 1

parseScanArgsFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected