]> gitweb.factorcode.org Git - factor.git/commitdiff
cbor: support write of bignums.
authorJohn Benediktsson <mrjbq7@gmail.com>
Tue, 20 Aug 2019 16:13:26 +0000 (09:13 -0700)
committerJohn Benediktsson <mrjbq7@gmail.com>
Tue, 20 Aug 2019 16:13:26 +0000 (09:13 -0700)
extra/cbor/cbor.factor

index cf67cbd5e84e298e35ec0eb89ec8504f1f8ff6f9..aec3a09876c54546152d3cf1985e45963d5d749e 100644 (file)
@@ -111,6 +111,11 @@ M: +cbor-undefined+ write-cbor drop 0xf7 write1 ;
         { [ over 0xffff <= ] [ 25 bitor write1 2 >be write ] }
         { [ over 0xffffffff <= ] [ 26 bitor write1 4 >be write ] }
         { [ over 0xffffffffffffffff <= ] [ 27 bitor write1 8 >be write ] }
+        [
+            -5 shift 2 + 0xc0 bitor write1
+            dup bit-length 8 /mod zero? [ 1 + ] unless
+            >be write-cbor
+        ]
     } cond ;
 
 M: integer write-cbor