module SourceMap::VLQ

Defined in:

sourcemap_parser/vlq.cr

Constant Summary

BASE64_DIGITS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("")
BASE64_VALUES = {"A" => 0, "B" => 1, "C" => 2, "D" => 3, "E" => 4, "F" => 5, "G" => 6, "H" => 7, "I" => 8, "J" => 9, "K" => 10, "L" => 11, "M" => 12, "N" => 13, "O" => 14, "P" => 15, "Q" => 16, "R" => 17, "S" => 18, "T" => 19, "U" => 20, "V" => 21, "W" => 22, "X" => 23, "Y" => 24, "Z" => 25, "a" => 26, "b" => 27, "c" => 28, "d" => 29, "e" => 30, "f" => 31, "g" => 32, "h" => 33, "i" => 34, "j" => 35, "k" => 36, "l" => 37, "m" => 38, "n" => 39, "o" => 40, "p" => 41, "q" => 42, "r" => 43, "s" => 44, "t" => 45, "u" => 46, "v" => 47, "w" => 48, "x" => 49, "y" => 50, "z" => 51, "0" => 52, "1" => 53, "2" => 54, "3" => 55, "4" => 56, "5" => 57, "6" => 58, "7" => 59, "8" => 60, "9" => 61, "+" => 62, "/" => 63, nil => 64}
VLQ_BASE = 1 << VLQ_BASE_SHIFT

binary: 100000

VLQ_BASE_MASK = VLQ_BASE - 1

binary: 011111

VLQ_BASE_SHIFT = 5
VLQ_CONTINUATION_BIT = VLQ_BASE

binary: 100000

Class Method Summary

Class Method Detail

def self.decode(str : String) : Array(Int32) #

Decodes the next base 64 VLQ value from the given string and returns the value and the rest of the string.


[View source]
def self.encode(int) #

Returns the base 64 VLQ encoded value.


[View source]