Function decode [src]

Prototype

pub fn decode(comptime T: type, encoded: []const u8) !T

Parameters

T: typeencoded: []const u8

Example

test decode { // https://lapo.it/asn1js/#MAgGAyoDBAIBBA const Value = struct { a: asn1.Oid, b: i32 }; const test_case = .{ .value = Value{ .a = asn1.Oid.fromDotComptime("1.2.3.4"), .b = 4 }, .encoded = &[_]u8{ 0x30, 0x08, 0x06, 0x03, 0x2A, 0x03, 0x04, 0x02, 0x01, 0x04 }, }; const decoded = try decode(Value, test_case.encoded); try std.testing.expectEqualDeep(test_case.value, decoded); }

Source

pub fn decode(comptime T: type, encoded: []const u8) !T { var decoder = Decoder{ .bytes = encoded }; const res = try decoder.any(T); std.debug.assert(decoder.index == encoded.len); return res; }