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