Login
7 branches 0 tags
Benjamin Vincent Schulenburg Added support for categorizing λs 5c9625e 3 years ago 902 Commits
nujel / tests / testsuite / buffer.nuj
["#m" [string/write [buffer/allocate 0]]]
["#m00" [string/write [buffer/allocate 1]]]
["#m0000" [string/write [buffer/allocate 2]]]
["#m000000" [string/write [buffer/allocate 3]]]
[0 [-> [buffer/allocate 0] buffer/length]]
[1 [-> [buffer/allocate 1] buffer/length]]
[2 [-> [buffer/allocate 2] buffer/length]]
[514 [buffer/length [string/write [buffer/allocate 256]]]]
[514 [buffer/length [string/write [-> [buffer/allocate 0] [buffer/length! 256]]]]]
[#t [buffer/immutable? #m]]
[#f [buffer/immutable? [buffer/allocate 0]]]
[#f [= [buffer/allocate 0] [buffer/allocate 0]]]
[#t [let [[b [buffer/allocate 0]]] [= b b]]]
[#f [let [[b [buffer/allocate 0]]] [< b b]]]
[#f [let [[b [buffer/allocate 0]]] [> b b]]]
[#t [let [[b #m1234]] [= b b]]]
[#f [buffer/immutable? [buffer/dup #m12]]]
[#t [buffer/immutable? [buffer/dup #m12 #t]]]
[#f [let [[b [buffer/allocate 0]]] [= b [buffer/dup b]]]]
[#x12 [buffer/ref [buffer/u8* #m12] 0]]
[#x34 [buffer/ref [buffer/u8* #m1234] 1]]
[255 [buffer/ref [buffer/u8* #mFF] 0]]
[-1 [buffer/ref [buffer/s8* #mFF] 0]]
[127 [buffer/ref [buffer/s8* #m7F] 0]]
[-128 [buffer/ref [buffer/s8* #m80] 0]]
[:out-of-bounds [try car [buffer/ref [buffer/u8* #m12] 1]]]
[:type-error [try car [buffer/ref [buffer/u8* #m12 #f] 0]]]
[#x56 [-> [buffer/allocate 1] buffer/u8* [buffer/set! 0 #x56] [buffer/ref 0]]]
["#m00010203" [-> [buffer/allocate 4] buffer/u8* [buffer/set! 0 0] [buffer/set! 1 1] [buffer/set! 2 2] [buffer/set! 3 3] buffer-view->buffer string/write]]
[#f [-> [buffer/allocate 1] buffer/u8* buffer/immutable?]]
[1000 [-> [buffer/allocate 2] buffer/u16* [buffer/set! 0 1000] [buffer/ref 0]]]
[64536 [-> [buffer/allocate 2] buffer/u16* [buffer/set! 0 -1000] [buffer/ref 0]]]
[-1000 [-> [buffer/allocate 2] buffer/s16* [buffer/set! 0 -1000] [buffer/ref 0]]]
[1000 [-> [buffer/allocate 2] buffer/s16* [buffer/set! 0 1000] [buffer/ref 0]]]
[100000 [-> [buffer/allocate 4] buffer/s32* [buffer/set! 0 100000] [buffer/ref 0]]]
[-100000 [-> [buffer/allocate 4] buffer/s32* [buffer/set! 0 -100000] [buffer/ref 0]]]
[100000 [-> [buffer/allocate 4] buffer/u32* [buffer/set! 0  100000] [buffer/ref 0]]]
[4294867296 [-> [buffer/allocate 4] buffer/u32* [buffer/set! 0 -100000] [buffer/ref 0]]]
[10000000000 [-> [buffer/allocate 8] buffer/s64* [buffer/set! 0 10000000000] [buffer/ref 0]]]
[1000.0 [-> [buffer/allocate 8] buffer/f32* [buffer/set! 0 1000] [buffer/ref 0]]]
[1000.5 [-> [buffer/allocate 8] buffer/f32* [buffer/set! 0 1000.5] [buffer/ref 0]]]
[1000.0 [-> [buffer/allocate 8] buffer/f64* [buffer/set! 0 1000] [buffer/ref 0]]]
[1000.5 [-> [buffer/allocate 8] buffer/f64* [buffer/set! 0 1000.5] [buffer/ref 0]]]
[:out-of-bounds [try car [-> [buffer/allocate 8] buffer/s8* [buffer/ref 9]]]]
[:out-of-bounds [try car [-> [buffer/allocate 8] buffer/u8* [buffer/ref 9]]]]
[:out-of-bounds [try car [-> [buffer/allocate 8] buffer/u16* [buffer/ref 5]]]]
[:out-of-bounds [try car [-> [buffer/allocate 8] buffer/s16* [buffer/ref 5]]]]
[:out-of-bounds [try car [-> [buffer/allocate 8] buffer/s32* [buffer/ref 3]]]]
[:out-of-bounds [try car [-> [buffer/allocate 8] buffer/f32* [buffer/ref 3]]]]
[:out-of-bounds [try car [-> [buffer/allocate 8] buffer/f64* [buffer/ref 1]]]]
[:out-of-bounds [try car [-> [buffer/allocate 8] buffer/s64* [buffer/ref 1]]]]
[:out-of-bounds [try car [-> [buffer/allocate 15] buffer/s64* [buffer/ref 1]]]]
["#m" [string/write [string->buffer ""]]]
["#m2030313233" [string/write [string->buffer " 0123"]]]
["" [buffer->string #m]]
[" 0123" [buffer->string #m2030313233]]
["0123" [buffer->string [buffer/copy [buffer/allocate 4] "0123" 0]]]
[:out-of-bounds [try car [buffer->string [buffer/copy [buffer/allocate 4] "0123" 1]]]]
["1122" [buffer->string [buffer/copy [buffer/copy [buffer/allocate 4] "11" 0] "22" 2]]]