diff --git a/src/eVPack.erl b/src/eVPack.erl index e9cf5fe..5c1b8a1 100644 --- a/src/eVPack.erl +++ b/src/eVPack.erl @@ -349,22 +349,22 @@ encodeSortMapIndexTable(IoData, Count, Offsets, SumSize) -> %% end. buildIndexTable_1(Offsets, StartSize) -> - <<<<(OneOff + StartSize):1/integer-little-unsigned-unit:8>> || OneOff <- lists:reverse(Offsets)>>. + <<<<(OneOff + StartSize):8/integer-little-unsigned>> || OneOff <- lists:reverse(Offsets)>>. buildIndexTable_2(Offsets, StartSize) -> - <<<<(OneOff + StartSize):2/integer-little-unsigned-unit:8>> || OneOff <- lists:reverse(Offsets)>>. + <<<<(OneOff + StartSize):16/integer-little-unsigned>> || OneOff <- lists:reverse(Offsets)>>. buildIndexTable_4(Offsets, StartSize) -> - <<<<(OneOff + StartSize):4/integer-little-unsigned-unit:8>> || OneOff <- lists:reverse(Offsets)>>. + <<<<(OneOff + StartSize):32/integer-little-unsigned>> || OneOff <- lists:reverse(Offsets)>>. buildIndexTable_8(Offsets, StartSize) -> - <<<<(OneOff + StartSize):8/integer-little-unsigned-unit:8>> || OneOff <- lists:reverse(Offsets)>>. + <<<<(OneOff + StartSize):64/integer-little-unsigned>> || OneOff <- lists:reverse(Offsets)>>. buildSMIndexTable_1(Offsets, StartSize) -> - <<<<(OneOff + StartSize):1/integer-little-unsigned-unit:8>> || OneOff <- lists:sort(Offsets)>>. + <<<<(OneOff + StartSize):8/integer-little-unsigned>> || OneOff <- lists:sort(Offsets)>>. buildSMIndexTable_2(Offsets, StartSize) -> - <<<<(OneOff + StartSize):2/integer-little-unsigned-unit:8>> || OneOff <- lists:sort(Offsets)>>. + <<<<(OneOff + StartSize):16/integer-little-unsigned>> || OneOff <- lists:sort(Offsets)>>. buildSMIndexTable_4(Offsets, StartSize) -> - <<<<(OneOff + StartSize):4/integer-little-unsigned-unit:8>> || OneOff <- lists:sort(Offsets)>>. + <<<<(OneOff + StartSize):32/integer-little-unsigned>> || OneOff <- lists:sort(Offsets)>>. buildSMIndexTable_8(Offsets, StartSize) -> - <<<<(OneOff + StartSize):8/integer-little-unsigned-unit:8>> || OneOff <- lists:sort(Offsets)>>. + <<<<(OneOff + StartSize):64/integer-little-unsigned>> || OneOff <- lists:sort(Offsets)>>. compactIntegerList(Integer, AccList) -> case Integer < 128 of @@ -457,22 +457,22 @@ encodeListWithoutIndexTable(IoData, SumSize) -> if SumSize < 254 -> AllSize = SumSize + 2, - Header = <<2/integer, AllSize:1/integer-little-unsigned-unit:8>>, + Header = <<2/integer, AllSize:8/integer-little-unsigned>>, setSV(AllSize), [Header, IoData]; SumSize < 65533 -> AllSize = SumSize + 3, - Header = <<3/integer, AllSize:2/integer-little-unsigned-unit:8>>, + Header = <<3/integer, AllSize:16/integer-little-unsigned>>, setSV(AllSize), [Header, IoData]; SumSize < 4294967291 -> AllSize = SumSize + 5, - Header = <<4/integer, AllSize:4/integer-little-unsigned-unit:8>>, + Header = <<4/integer, AllSize:32/integer-little-unsigned>>, setSV(AllSize), [Header, IoData]; SumSize < 18446744073709551607 -> AllSize = SumSize + 9, - Header = <<5/integer, AllSize:8/integer-little-unsigned-unit:8>>, + Header = <<5/integer, AllSize:64/integer-little-unsigned>>, setSV(AllSize), [Header, IoData]; true -> @@ -1425,7 +1425,7 @@ decoder(191, RestBin) -> {BinStr, LeftBin} end; decoder(192, RestBin) -> - <> = RestBin, + <> = RestBin, RefSize = binary:referenced_byte_size(RestBin), case RefSize / Length > ?VpBinaryCopyRatio of true -> @@ -1434,7 +1434,7 @@ decoder(192, RestBin) -> {BinStr, LeftBin} end; decoder(193, RestBin) -> - <> = RestBin, + <> = RestBin, RefSize = binary:referenced_byte_size(RestBin), case RefSize / Length > ?VpBinaryCopyRatio of true -> @@ -1443,7 +1443,7 @@ decoder(193, RestBin) -> {BinStr, LeftBin} end; decoder(194, RestBin) -> - <> = RestBin, + <> = RestBin, RefSize = binary:referenced_byte_size(RestBin), case RefSize / Length > ?VpBinaryCopyRatio of true -> @@ -1452,7 +1452,7 @@ decoder(194, RestBin) -> {BinStr, LeftBin} end; decoder(195, RestBin) -> - <> = RestBin, + <> = RestBin, RefSize = binary:referenced_byte_size(RestBin), case RefSize / Length > ?VpBinaryCopyRatio of true -> @@ -1461,7 +1461,7 @@ decoder(195, RestBin) -> {BinStr, LeftBin} end; decoder(196, RestBin) -> - <> = RestBin, + <> = RestBin, RefSize = binary:referenced_byte_size(RestBin), case RefSize / Length > ?VpBinaryCopyRatio of true -> @@ -1470,7 +1470,7 @@ decoder(196, RestBin) -> {BinStr, LeftBin} end; decoder(197, RestBin) -> - <> = RestBin, + <> = RestBin, RefSize = binary:referenced_byte_size(RestBin), case RefSize / Length > ?VpBinaryCopyRatio of true -> @@ -1479,7 +1479,7 @@ decoder(197, RestBin) -> {BinStr, LeftBin} end; decoder(198, RestBin) -> - <> = RestBin, + <> = RestBin, RefSize = binary:referenced_byte_size(RestBin), case RefSize / Length > ?VpBinaryCopyRatio of true -> @@ -1488,7 +1488,7 @@ decoder(198, RestBin) -> {BinStr, LeftBin} end; decoder(199, RestBin) -> - <> = RestBin, + <> = RestBin, RefSize = binary:referenced_byte_size(RestBin), case RefSize / Length > ?VpBinaryCopyRatio of true -> @@ -1497,7 +1497,7 @@ decoder(199, RestBin) -> {BinStr, LeftBin} end; decoder(244, RestBin) -> - <> = RestBin, + <> = RestBin, {binary_to_atom(BinStr), LeftBin}; decoder(_, _) -> erlang:throw({error, unexpected_end}). diff --git a/src/enTest.erl b/src/enTest.erl index fc8045b..584e583 100644 --- a/src/enTest.erl +++ b/src/enTest.erl @@ -56,8 +56,8 @@ do() -> <<45, 255, 255, 255, 255, 255, 255>> = eVPack:encodeBin(281474976710655), <<46, 255, 255, 255, 255, 255, 255, 255>> = eVPack:encodeBin(72057594037927935), <<47, 255, 255, 255, 255, 255, 255, 255, 255>> = eVPack:encodeBin(18446744073709551615), - <<75, 72, 97, 108, 108, 111, 32, 87, 101, 108, 116, 33>> = eVPack:encodeBin(<<"Hallo Welt!">>), - <<76, 72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33>> = eVPack:encodeBin(<<"Hello World!">>), + <<192, 11, 72, 97, 108, 108, 111, 32, 87, 101, 108, 116, 33>> = eVPack:encodeBin(<<"Hallo Welt!">>), + <<192, 12, 72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33>> = eVPack:encodeBin(<<"Hello World!">>), _Str = <<"Lorem ipsum dolor sit amet, consectetuer " "adipiscing elit. Aenean commodo ligula " "eget dolor. ",