base64データのエンコードとデコードのために、このlibb64ソースコードを読んでいます。
エンコード手順は知っていますが、エンコードされたbase64文字のデコードを実行するための高速ルックアップのために、次のデコードテーブルがどのように構築されているかわかりません。これは彼らが使用しているテーブルです:
static const char decoding[] = {62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-2,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51};
このテーブルの値がデコード目的でどのように使用されるかを説明してもらえますか?