fix for newest carp
This commit is contained in:
18
redis.carp
18
redis.carp
@@ -5,12 +5,12 @@
|
||||
(Str [String])
|
||||
(Err [String])
|
||||
(Integer [Int])
|
||||
;(Arr [(Array &Resp)])
|
||||
;(Arr [(Array &RESP)])
|
||||
(Arr [(Array String)])
|
||||
)
|
||||
|
||||
(defmodule RESP
|
||||
(use-all Array Int Maybe Pattern Result)
|
||||
(use-all Array Maybe Pattern Result)
|
||||
|
||||
(hidden c)
|
||||
(private c)
|
||||
@@ -19,10 +19,10 @@
|
||||
(defn str [r]
|
||||
(match @r
|
||||
(Null) @"$-1\r\n"
|
||||
(Str s) (fmt "$%d\r\n%s\r\n" (length &s) &s)
|
||||
(Str s) (fmt "$%d\r\n%s\r\n" (String.length &s) &s)
|
||||
(Err s) (fmt "-%s\r\n" &s)
|
||||
(Integer i) (fmt ":%d\r\n" i)
|
||||
(Arr a) (fmt "*%d\r\n%s" (length &a) &(concat &a))))
|
||||
(Arr a) (fmt "*%d\r\n%s" (Array.length &a) &(String.concat &a))))
|
||||
|
||||
(hidden decode-bulk-string)
|
||||
(private decode-bulk-string)
|
||||
@@ -32,8 +32,8 @@
|
||||
(let [splt (split #"\r\n" s)
|
||||
l (unsafe-first &splt)]
|
||||
(match (from-string l)
|
||||
(Maybe.Nothing) (Error @"Error decoding bulk string: does not start with length!")
|
||||
(Maybe.Just il)
|
||||
(Nothing) (Error @"Error decoding bulk string: does not start with length!")
|
||||
(Just il)
|
||||
(Success (Str
|
||||
(String.prefix &(join "\r\n" &(suffix &splt 1)) il)))))))
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
(break)
|
||||
(do
|
||||
(set! consumed (inc consumed))
|
||||
(set! clen (+ 2 (+ clen (length el))))))))
|
||||
(set! clen (+ 2 (+ clen (String.length el))))))))
|
||||
consumed))
|
||||
|
||||
(hidden decode-arr)
|
||||
@@ -59,9 +59,9 @@
|
||||
(let [splt (split #"\r\n" &(chomp s))
|
||||
sl (unsafe-first &splt)]
|
||||
(match (from-string sl)
|
||||
(Maybe.Nothing)
|
||||
(Nothing)
|
||||
(Error @"Error decoding array: does not start with length!")
|
||||
(Maybe.Just l)
|
||||
(Just l)
|
||||
(let-do [a (Array.allocate l)
|
||||
idx 0
|
||||
err ""]
|
||||
|
Reference in New Issue
Block a user