@@ -18,13 +18,13 @@ pub fn encodeAlloc(allocator: std.mem.Allocator, value: anytype) ![]u8 {
1818 return buffer ;
1919}
2020
21- fn encodeBool (value : bool , buffer : []u8 ) ! usize {
21+ pub fn encodeBool (value : bool , buffer : []u8 ) ! usize {
2222 if (buffer .len < 1 ) return error .BufferTooSmall ;
2323 buffer [0 ] = if (value ) 0x01 else 0x00 ;
2424 return 1 ;
2525}
2626
27- fn encodeUnsigned (comptime T : type , value : T , buffer : []u8 ) ! usize {
27+ pub fn encodeUnsigned (comptime T : type , value : T , buffer : []u8 ) ! usize {
2828 const size = @sizeOf (T );
2929 if (buffer .len < size ) return error .BufferTooSmall ;
3030
@@ -36,7 +36,7 @@ fn encodeUnsigned(comptime T: type, value: T, buffer: []u8) !usize {
3636 return size ;
3737}
3838
39- fn encodeSigned (comptime T : type , value : T , buffer : []u8 ) ! usize {
39+ pub fn encodeSigned (comptime T : type , value : T , buffer : []u8 ) ! usize {
4040 const size = @sizeOf (T );
4141 if (buffer .len < size ) return error .BufferTooSmall ;
4242
@@ -48,7 +48,7 @@ fn encodeSigned(comptime T: type, value: T, buffer: []u8) !usize {
4848 return size ;
4949}
5050
51- fn encodeByteSlice (value : []const u8 , buffer : []u8 ) ! usize {
51+ pub fn encodeByteSlice (value : []const u8 , buffer : []u8 ) ! usize {
5252 var offset : usize = 0 ;
5353
5454 // Encode length as compact
@@ -63,7 +63,7 @@ fn encodeByteSlice(value: []const u8, buffer: []u8) !usize {
6363 return offset ;
6464}
6565
66- fn encodeOption (comptime T : type , value : ? T , buffer : []u8 , encoder : anytype ) ! usize {
66+ pub fn encodeOption (comptime T : type , value : ? T , buffer : []u8 , encoder : anytype ) ! usize {
6767 if (value ) | v | {
6868 if (buffer .len < 1 ) return error .BufferTooSmall ;
6969 buffer [0 ] = 0x01 ;
@@ -76,7 +76,7 @@ fn encodeOption(comptime T: type, value: ?T, buffer: []u8, encoder: anytype) !us
7676 }
7777}
7878
79- fn encodeArray (comptime T : type , value : []const T , buffer : []u8 , encoder : anytype ) ! usize {
79+ pub fn encodeArray (comptime T : type , value : []const T , buffer : []u8 , encoder : anytype ) ! usize {
8080 var offset : usize = 0 ;
8181
8282 // Encode length as compact
@@ -92,7 +92,7 @@ fn encodeArray(comptime T: type, value: []const T, buffer: []u8, encoder: anytyp
9292 return offset ;
9393}
9494
95- fn encodeFixedArray (comptime T : type , comptime N : usize , value : [N ]T , buffer : []u8 , encoder : anytype ) ! usize {
95+ pub fn encodeFixedArray (comptime T : type , comptime N : usize , value : [N ]T , buffer : []u8 , encoder : anytype ) ! usize {
9696 var offset : usize = 0 ;
9797
9898 // Fixed arrays don't encode their length
@@ -104,7 +104,7 @@ fn encodeFixedArray(comptime T: type, comptime N: usize, value: [N]T, buffer: []
104104 return offset ;
105105}
106106
107- fn encodeTuple (value : anytype , buffer : []u8 ) ! usize {
107+ pub fn encodeTuple (value : anytype , buffer : []u8 ) ! usize {
108108 var offset : usize = 0 ;
109109 const fields = std .meta .fields (@TypeOf (value ));
110110
@@ -117,7 +117,7 @@ fn encodeTuple(value: anytype, buffer: []u8) !usize {
117117 return offset ;
118118}
119119
120- fn encodeCompact (comptime T : type , value : T , buffer : []u8 ) ! usize {
120+ pub fn encodeCompact (comptime T : type , value : T , buffer : []u8 ) ! usize {
121121 const v = @as (u128 , value );
122122
123123 if (v < 64 ) {
@@ -160,7 +160,7 @@ fn encodeCompact(comptime T: type, value: T, buffer: []u8) !usize {
160160}
161161
162162// Generic encode function that dispatches to the appropriate encoder
163- fn encode (value : anytype , buffer : []u8 ) ! usize {
163+ pub fn encode (value : anytype , buffer : []u8 ) ! usize {
164164 const T = @TypeOf (value );
165165
166166 return switch (@typeInfo (T )) {
0 commit comments