バイナリで再帰を行い、各呼び出しでバイナリから最大 32 ビットを読み取り、それを新しいバイナリで返したいと思います。しかし、パターン マッチングを思うように動作させることができません。
binaryToBinary(Source) ->
binaryToBinaryAux(Source, <<>>).
binaryToBinaryAux(<<>>, Target) ->
Target;
binaryToBinaryAux(<<H:32/binary, T/binary>>, Target) ->
binaryToBinaryAux(<<T/binary>>, <<Target/binary, H>>).
パターンマッチングで得られるエラーは次のとおりです。
10> mymodule:binaryToBinary(<<"JonasPonas">>).
** exception error: no function clause matching
mymodule:binaryToBinaryAux(<<"JonasPonas">>,<<>>)
(mymodule.erl, line 51)
バイナリのパターン マッチングで何が間違っていますか?