@@ -845,10 +845,6 @@ pub const Unpack = struct {
845845 }
846846
847847 inline fn rawUInt (self : * Unpack , header : Header ) ConvertError ! u64 {
848- if (header .type != .uint ) {
849- return ConvertError .InvalidValue ;
850- }
851-
852848 defer self .rest = self .rest [header .size .. ];
853849 return switch (header .size ) {
854850 1 = > readIntBig (u8 , self .rest [0.. 1]),
@@ -860,10 +856,6 @@ pub const Unpack = struct {
860856 }
861857
862858 inline fn rawInt (self : * Unpack , header : Header ) ConvertError ! i64 {
863- if (header .type != .int ) {
864- return ConvertError .InvalidValue ;
865- }
866-
867859 defer self .rest = self .rest [header .size .. ];
868860 return switch (header .size ) {
869861 1 = > readIntBig (i8 , self .rest [0.. 1]),
@@ -896,9 +888,6 @@ pub const Unpack = struct {
896888 }
897889
898890 inline fn rawFloat (self : * Unpack , header : Header ) ConvertError ! f64 {
899- if (header .type != .float ) {
900- return ConvertError .InvalidValue ;
901- }
902891 const value : f64 = switch (header .size ) {
903892 4 = > compatstd .mem .readFloatBig (f32 , self .rest [0.. 4]),
904893 8 = > compatstd .mem .readFloatBig (f64 , self .rest [0.. 8]),
@@ -931,26 +920,22 @@ pub const Unpack = struct {
931920 }
932921
933922 pub fn array (self : * Unpack , header : Header ) ConvertError ! UnpackArray {
934- switch (header .type ) {
935- .fixarray , .array = > {},
923+ return switch (header .type ) {
924+ .fixarray , .array = > UnpackArray {
925+ .unpack = self ,
926+ .len = header .size ,
927+ },
936928 else = > return ConvertError .InvalidValue ,
937- }
938-
939- return UnpackArray {
940- .unpack = self ,
941- .len = header .size ,
942929 };
943930 }
944931
945932 pub fn map (self : * Unpack , header : Header ) ConvertError ! UnpackMap {
946- switch (header .type ) {
947- .fixmap , .map = > {},
933+ return switch (header .type ) {
934+ .fixmap , .map = > UnpackMap {
935+ .unpack = self ,
936+ .len = header .size ,
937+ },
948938 else = > return ConvertError .InvalidValue ,
949- }
950-
951- return UnpackMap {
952- .unpack = self ,
953- .len = header .size ,
954939 };
955940 }
956941};
0 commit comments