fixed_length_encoder 1.2.0 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/fixed_length_encoder.rb +2 -2
- metadata +1 -1
data/lib/fixed_length_encoder.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
module FixedLengthEncoder
|
2
2
|
ALPHABET = '0123456789abcdefghijklmnopqrstuvwxyz'
|
3
|
-
ENCODE_MAP = [
|
4
|
-
DECODE_MAP = [
|
3
|
+
ENCODE_MAP = [863, 321, 1119, 696, 1276, 262, 745, 561, 924, 851, 617, 1231, 274, 766, 101, 514, 555, 318, 35, 349, 456, 926, 768, 457, 355, 1221, 377, 81, 217, 448, 601, 954, 932, 747, 158, 48, 1010, 598, 608, 93, 1091, 637, 818, 396, 848, 322, 536, 252, 647, 255, 540, 905, 922, 588, 1092, 869, 507, 844, 276, 96, 124, 525, 1082, 1291, 1161, 1174, 2, 899, 1109, 452, 1214, 633, 424, 1246, 357, 1275, 171, 34, 817, 292, 1209, 208, 1285, 909, 218, 787, 671, 331, 395, 646, 177, 384, 1015, 1282, 1234, 132, 1222, 788, 968, 619, 1247, 305, 6, 535, 907, 1261, 733, 760, 942, 1003, 248, 334, 51, 56, 447, 576, 981, 104, 273, 137, 962, 995, 1032, 750, 815, 143, 115, 422, 1265, 532, 983, 107, 573, 462, 977, 1023, 668, 578, 1179, 336, 1188, 796, 703, 470, 912, 1138, 736, 99, 1244, 861, 15, 837, 604, 1162, 521, 97, 226, 1176, 263, 108, 804, 427, 297, 387, 957, 925, 1068, 1117, 233, 119, 483, 163, 793, 126, 310, 210, 952, 630, 197, 394, 829, 356, 214, 574, 1290, 1143, 1212, 1146, 1070, 586, 613, 485, 350, 1008, 832, 547, 469, 1069, 1054, 1115, 798, 326, 60, 432, 360, 11, 616, 833, 803, 199, 1167, 812, 246, 611, 1226, 30, 18, 308, 304, 1184, 421, 1198, 517, 1123, 631, 749, 1020, 1150, 568, 881, 216, 665, 5, 134, 1007, 963, 1260, 62, 285, 940, 575, 475, 659, 74, 939, 301, 658, 473, 993, 88, 1148, 196, 401, 295, 300, 409, 363, 131, 1104, 806, 681, 980, 201, 1022, 1129, 251, 181, 1071, 249, 572, 313, 553, 814, 911, 694, 1197, 951, 484, 543, 528, 916, 632, 901, 918, 281, 1075, 715, 838, 839, 938, 1185, 662, 929, 801, 145, 1156, 834, 259, 1036, 71, 147, 272, 702, 910, 1012, 269, 1081, 876, 1108, 1065, 643, 624, 987, 1090, 453, 225, 558, 722, 1201, 917, 70, 651, 1236, 520, 492, 1096, 1000, 1177, 1005, 417, 79, 1076, 1223, 130, 288, 1195, 767, 808, 930, 855, 830, 1266, 438, 612, 16, 154, 245, 1060, 240, 403, 1204, 900, 769, 549, 1033, 705, 1142, 57, 533, 623, 12, 697, 479, 919, 364, 627, 973, 1085, 188, 946, 849, 556, 325, 641, 858, 877, 66, 1175, 47, 488, 667, 136, 737, 293, 1160, 1278, 885, 1029, 591, 1093, 241, 135, 348, 389, 347, 581, 444, 937, 1147, 786, 91, 810, 873, 52, 989, 752, 450, 746, 320, 673, 994, 332, 712, 836, 1099, 753, 757, 1287, 807, 1180, 597, 261, 441, 382, 892, 1237, 764, 748, 169, 713, 205, 376, 620, 1153, 440, 1264, 997, 642, 112, 569, 1224, 889, 442, 1102, 429, 971, 1128, 542, 826, 109, 1038, 859, 860, 1097, 439, 811, 1105, 141, 1258, 965, 1106, 959, 606, 888, 296, 690, 852, 1050, 669, 386, 1183, 406, 846, 716, 33, 1011, 883, 867, 358, 1216, 339, 519, 670, 721, 720, 1196, 700, 1037, 418, 1255, 1263, 1048, 639, 54, 125, 684, 116, 148, 1227, 222, 419, 512, 32, 204, 416, 699, 1131, 538, 85, 809, 489, 975, 123, 275, 338, 763, 988, 896, 1168, 755, 0, 385, 1073, 1145, 287, 1208, 743, 371, 84, 564, 1238, 781, 771, 644, 1086, 692, 998, 587, 638, 278, 1137, 908, 866, 1267, 1241, 599, 474, 708, 412, 1181, 61, 390, 319, 1059, 153, 656, 1072, 342, 1021, 10, 239, 378, 1215, 369, 122, 689, 799, 221, 1190, 544, 279, 923, 73, 373, 1126, 268, 1213, 772, 166, 423, 1256, 286, 90, 354, 625, 510, 77, 822, 1284, 42, 8, 1124, 374, 890, 351, 463, 24, 140, 191, 505, 580, 92, 234, 1058, 1046, 1272, 730, 534, 725, 178, 420, 1132, 504, 365, 1061, 762, 1249, 941, 865, 230, 527, 182, 1122, 103, 583, 242, 397, 1049, 1155, 1043, 1064, 1004, 128, 165, 618, 698, 327, 302, 603, 1171, 972, 944, 1251, 770, 430, 875, 1225, 1039, 1135, 878, 970, 645, 227, 120, 426, 1187, 20, 174, 235, 118, 41, 86, 1078, 1232, 458, 557, 312, 21, 874, 152, 229, 1079, 138, 445, 465, 95, 167, 503, 732, 727, 187, 550, 950, 729, 341, 513, 827, 602, 783, 823, 1057, 291, 184, 1095, 683, 1107, 1087, 151, 379, 414, 129, 1019, 579, 779, 986, 277, 650, 1018, 1009, 1206, 1133, 25, 629, 1233, 887, 264, 157, 653, 254, 9, 1134, 577, 1066, 1295, 707, 1101, 190, 370, 1067, 709, 238, 102, 83, 539, 477, 657, 111, 89, 133, 634, 775, 759, 784, 207, 392, 55, 1017, 1294, 979, 324, 1269, 449, 100, 1207, 343, 661, 880, 213, 948, 1088, 372, 739, 185, 728, 265, 856, 316, 1024, 399, 173, 969, 480, 761, 175, 267, 467, 172, 958, 934, 22, 741, 590, 433, 894, 410, 258, 114, 1262, 431, 127, 464, 219, 706, 1114, 800, 1045, 731, 186, 257, 50, 500, 476, 778, 920, 1192, 605, 592, 560, 194, 982, 1165, 1080, 685, 1277, 1113, 773, 19, 306, 398, 1239, 289, 949, 559, 501, 499, 149, 563, 898, 4, 498, 1030, 110, 198, 693, 996, 482, 1035, 897, 903, 628, 1182, 315, 144, 1242, 466, 243, 7, 1116, 879, 46, 1141, 551, 609, 1164, 675, 411, 494, 847, 256, 1250, 72, 751, 886, 955, 791, 1243, 936, 1014, 792, 1200, 459, 247, 956, 614, 78, 451, 307, 842, 486, 202, 1170, 695, 902, 789, 150, 1052, 117, 180, 636, 509, 518, 496, 687, 250, 1089, 1100, 1044, 524, 682, 976, 1140, 383, 691, 960, 236, 220, 345, 943, 857, 1098, 974, 1127, 37, 782, 29, 1110, 39, 159, 497, 1203, 1254, 408, 1286, 26, 927, 530, 526, 893, 139, 38, 566, 1257, 565, 1144, 600, 284, 428, 825, 1083, 359, 192, 862, 945, 113, 402, 821, 142, 840, 53, 719, 490, 231, 774, 260, 1191, 405, 362, 1218, 44, 756, 666, 1189, 677, 1252, 921, 1151, 1210, 621, 375, 843, 595, 1152, 523, 1056, 850, 58, 1271, 68, 211, 317, 283, 635, 266, 1034, 164, 1094, 794, 1111, 854, 1235, 195, 1259, 701, 704, 1292, 835, 1274, 40, 13, 740, 870, 232, 381, 1025, 361, 28, 105, 435, 121, 777, 652, 59, 567, 663, 593, 582, 1139, 146, 471, 215, 615, 393, 585, 904, 596, 1028, 31, 437, 461, 478, 1002, 649, 309, 931, 400, 367, 506, 868, 819, 1051, 337, 966, 17, 413, 156, 1178, 648, 985, 330, 1041, 1149, 1199, 244, 845, 328, 1219, 871, 978, 933, 1031, 967, 522, 212, 1120, 425, 686, 516, 961, 1040, 990, 1026, 1293, 964, 891, 189, 790, 290, 672, 1006, 529, 802, 1136, 329, 1220, 45, 1163, 294, 303, 1283, 487, 1053, 253, 1240, 738, 1194, 864, 491, 1172, 415, 14, 436, 493, 828, 914, 87, 626, 63, 531, 183, 1217, 841, 1173, 776, 562, 1273, 805, 679, 1063, 82, 947, 680, 1211, 1154, 816, 723, 820, 607, 1230, 1159, 280, 655, 991, 323, 678, 726, 571, 688, 1245, 1280, 992, 1158, 193, 407, 913, 404, 161, 1112, 999, 1118, 1047, 1268, 495, 1077, 1074, 455, 1001, 1157, 742, 795, 906, 176, 43, 299, 1027, 64, 734, 1042, 468, 660, 340, 1084, 915, 744, 388, 98, 94, 780, 353, 67, 546, 49, 813, 717, 594, 1270, 1016, 714, 545, 481, 1279, 311, 1169, 446, 443, 664, 168, 314, 1205, 710, 454, 368, 366, 3, 1193, 984, 352, 380, 824, 724, 935, 831, 1288, 511, 27, 271, 1202, 346, 333, 1248, 282, 223, 552, 797, 554, 75, 1103, 1125, 344, 1281, 654, 1055, 928, 584, 785, 872, 765, 515, 162, 640, 508, 1289, 179, 170, 502, 106, 434, 160, 1013, 270, 1062, 589, 548, 754, 537, 391, 1121, 676, 622, 711, 1186, 69, 884, 335, 953, 76, 65, 460, 237, 206, 80, 882, 203, 209, 570, 200, 1166, 224, 853, 758, 472, 155, 541, 23, 1, 895, 1130, 718, 36, 1253, 674, 228, 610, 1229, 1228, 298, 735]
|
4
|
+
DECODE_MAP = [520, 1283, 66, 1202, 828, 232, 102, 846, 590, 719, 559, 205, 360, 998, 1099, 150, 344, 1042, 216, 816, 656, 667, 779, 1282, 596, 711, 923, 1213, 1005, 914, 215, 1026, 502, 474, 77, 18, 1287, 912, 929, 916, 997, 660, 589, 1161, 958, 1084, 849, 378, 35, 1180, 799, 112, 403, 948, 493, 745, 113, 357, 975, 1011, 202, 550, 237, 1106, 1164, 1265, 376, 1178, 977, 1260, 320, 299, 860, 572, 243, 1224, 1264, 586, 874, 330, 1269, 27, 1118, 732, 528, 508, 661, 1104, 249, 737, 582, 400, 601, 39, 1175, 675, 59, 155, 1174, 147, 752, 14, 731, 623, 117, 1006, 1244, 131, 159, 449, 831, 736, 438, 943, 786, 126, 496, 886, 659, 169, 653, 1008, 564, 512, 60, 494, 173, 789, 632, 700, 333, 257, 95, 738, 233, 391, 381, 119, 672, 928, 597, 457, 946, 125, 842, 294, 1017, 300, 497, 825, 884, 697, 669, 554, 345, 1280, 1044, 716, 34, 917, 1246, 1145, 1237, 171, 984, 633, 578, 676, 1195, 428, 1242, 76, 776, 769, 657, 773, 1160, 90, 609, 1241, 887, 266, 621, 1108, 692, 762, 797, 680, 368, 1074, 726, 598, 940, 1141, 808, 990, 251, 178, 832, 209, 1274, 262, 879, 1271, 503, 430, 1268, 743, 81, 1272, 175, 978, 1062, 757, 182, 1019, 230, 28, 84, 791, 905, 567, 499, 1220, 1276, 315, 156, 652, 1290, 670, 619, 951, 1001, 168, 602, 658, 904, 1267, 730, 560, 348, 390, 625, 845, 1052, 346, 212, 871, 110, 268, 893, 265, 47, 1091, 718, 49, 858, 798, 785, 297, 953, 421, 5, 158, 715, 764, 982, 774, 575, 305, 1248, 1214, 301, 118, 12, 513, 58, 705, 539, 570, 1129, 284, 1219, 980, 935, 238, 581, 524, 334, 820, 1076, 691, 79, 383, 1086, 253, 464, 162, 1294, 1162, 254, 245, 637, 1087, 218, 101, 817, 876, 217, 1032, 174, 1190, 666, 270, 1196, 841, 766, 979, 17, 552, 408, 1, 45, 1132, 749, 372, 201, 636, 1054, 1082, 1048, 87, 411, 1217, 111, 1262, 139, 1040, 514, 480, 1169, 684, 557, 754, 1227, 906, 1216, 394, 392, 19, 192, 594, 1205, 1177, 583, 24, 181, 74, 478, 939, 204, 1004, 956, 256, 364, 613, 1201, 1035, 1200, 563, 727, 527, 760, 573, 592, 968, 431, 26, 561, 698, 1206, 1002, 423, 901, 91, 521, 469, 163, 1173, 393, 551, 1254, 744, 1021, 179, 88, 43, 626, 818, 768, 1034, 252, 944, 349, 1144, 955, 471, 1142, 921, 255, 784, 855, 548, 1043, 699, 1098, 504, 329, 488, 500, 610, 220, 127, 579, 72, 1064, 654, 161, 936, 444, 644, 788, 203, 782, 1245, 1007, 1100, 1027, 342, 454, 434, 422, 442, 1193, 396, 673, 1192, 114, 29, 751, 406, 875, 69, 314, 1199, 1154, 20, 23, 664, 870, 1266, 1028, 133, 595, 790, 674, 844, 775, 1167, 196, 143, 1018, 1279, 247, 546, 241, 801, 734, 1029, 362, 771, 1188, 835, 170, 277, 191, 878, 1089, 379, 510, 950, 1096, 324, 1101, 856, 1151, 891, 918, 829, 824, 800, 823, 1243, 677, 612, 599, 1036, 56, 1239, 889, 585, 1212, 501, 685, 15, 1236, 1066, 222, 890, 481, 323, 154, 1061, 972, 897, 61, 926, 620, 279, 1079, 925, 1107, 129, 358, 607, 103, 46, 1253, 507, 733, 50, 1281, 447, 278, 569, 1187, 1179, 195, 1251, 353, 681, 851, 1221, 271, 1223, 16, 371, 665, 316, 822, 807, 7, 1113, 826, 529, 932, 930, 1012, 228, 439, 1273, 1135, 269, 132, 183, 240, 115, 721, 137, 702, 600, 395, 1015, 624, 1232, 1022, 189, 537, 53, 1250, 781, 388, 806, 1014, 1183, 970, 1024, 420, 37, 545, 934, 30, 687, 638, 152, 805, 462, 1126, 38, 852, 1291, 213, 343, 190, 873, 1020, 206, 10, 634, 99, 432, 967, 1257, 359, 311, 584, 1105, 365, 839, 712, 177, 224, 281, 71, 739, 981, 888, 41, 538, 492, 1238, 373, 437, 310, 533, 651, 89, 48, 1046, 1031, 706, 321, 1010, 717, 1229, 1130, 555, 735, 246, 242, 1168, 755, 291, 1013, 1194, 231, 960, 380, 136, 468, 482, 86, 1077, 409, 1289, 854, 1256, 962, 1133, 1116, 1120, 260, 898, 694, 495, 812, 1065, 892, 1136, 565, 465, 902, 535, 833, 274, 881, 3, 361, 635, 505, 486, 992, 302, 142, 993, 355, 792, 724, 547, 729, 1198, 1258, 412, 429, 1186, 286, 473, 1182, 1286, 949, 484, 483, 317, 1124, 1208, 608, 1134, 679, 763, 683, 606, 796, 678, 106, 1165, 1295, 146, 382, 1093, 761, 999, 780, 1157, 526, 1172, 6, 407, 33, 427, 225, 123, 861, 405, 415, 1252, 519, 959, 416, 1278, 741, 107, 772, 615, 515, 426, 1235, 13, 336, 22, 352, 643, 532, 577, 815, 952, 740, 1112, 1009, 802, 703, 1176, 531, 913, 688, 742, 1233, 399, 85, 97, 883, 1075, 864, 868, 172, 986, 1158, 141, 1222, 200, 566, 794, 293, 1080, 208, 160, 1115, 259, 418, 337, 509, 401, 455, 211, 1181, 272, 124, 1123, 78, 42, 1038, 1125, 945, 587, 689, 1207, 937, 448, 686, 1102, 180, 340, 1210, 194, 207, 296, 995, 413, 151, 287, 288, 947, 1110, 877, 969, 57, 1053, 472, 857, 44, 370, 974, 9, 466, 1277, 988, 339, 765, 908, 374, 451, 452, 149, 941, 0, 1095, 618, 542, 477, 1037, 55, 1000, 1056, 1234, 402, 668, 645, 307, 375, 649, 848, 756, 229, 1270, 476, 1261, 386, 862, 714, 463, 441, 593, 1073, 424, 927, 783, 1284, 517, 837, 827, 67, 351, 282, 882, 838, 1023, 51, 1159, 104, 541, 83, 303, 273, 144, 1143, 1103, 1171, 280, 319, 283, 363, 803, 964, 52, 571, 8, 165, 21, 924, 1231, 292, 338, 1033, 32, 1058, 778, 1209, 866, 397, 289, 244, 239, 617, 108, 907, 641, 942, 369, 1119, 758, 821, 682, 276, 176, 1263, 31, 863, 872, 164, 777, 461, 903, 1067, 120, 235, 1072, 459, 1041, 1060, 98, 770, 650, 445, 640, 366, 910, 511, 899, 134, 1057, 748, 261, 116, 809, 130, 1204, 1047, 704, 312, 516, 404, 1069, 1131, 1139, 248, 410, 121, 834, 436, 536, 1147, 326, 1155, 1030, 109, 631, 328, 1078, 234, 193, 708, 36, 475, 304, 1247, 867, 92, 1185, 746, 707, 701, 226, 558, 263, 135, 767, 1003, 1070, 1163, 1025, 387, 830, 1059, 122, 354, 983, 836, 298, 487, 450, 647, 1068, 1049, 1166, 629, 896, 795, 604, 1149, 491, 627, 467, 1039, 885, 1090, 198, 1230, 973, 690, 603, 553, 347, 614, 1249, 1117, 630, 309, 722, 728, 166, 197, 188, 267, 556, 522, 1153, 285, 331, 1152, 662, 671, 811, 306, 62, 938, 1170, 367, 534, 696, 759, 894, 313, 40, 54, 389, 985, 693, 325, 453, 909, 414, 895, 725, 443, 1225, 258, 456, 460, 695, 308, 68, 915, 987, 1146, 814, 793, 199, 847, 167, 1148, 2, 1063, 1255, 622, 223, 591, 1226, 574, 911, 446, 264, 1285, 506, 611, 710, 720, 648, 1081, 540, 145, 1016, 900, 850, 356, 185, 933, 523, 187, 398, 250, 1050, 227, 965, 971, 433, 1122, 628, 295, 1156, 1140, 1128, 384, 64, 153, 1085, 853, 810, 1275, 210, 518, 1191, 880, 639, 1097, 1111, 65, 377, 157, 327, 1045, 138, 419, 549, 840, 470, 219, 290, 1259, 655, 140, 961, 568, 954, 804, 1203, 1094, 335, 485, 275, 221, 1051, 869, 318, 1215, 919, 350, 1197, 709, 753, 525, 80, 966, 1121, 186, 576, 70, 562, 479, 1109, 957, 1055, 1083, 25, 96, 332, 440, 646, 214, 498, 1293, 1292, 1127, 11, 663, 713, 94, 989, 322, 425, 530, 819, 1092, 544, 843, 865, 148, 1137, 73, 100, 1218, 616, 859, 642, 963, 1288, 920, 489, 580, 931, 458, 991, 236, 105, 787, 490, 435, 128, 341, 543, 1150, 750, 1184, 976, 605, 1114, 996, 75, 4, 813, 385, 1189, 1138, 1228, 93, 1088, 588, 82, 922, 417, 1211, 1240, 184, 63, 994, 1071, 747, 723]
|
5
5
|
LENGTH = 8
|
6
6
|
|
7
7
|
def self.encode(value, message_length = nil)
|