流れてくるデータに対し、とりあえず放り込む箱が欲しいなんて時は、restが使えます。
つかいかた
class D < BinData::Record string :a, :read_length => 10 rest :rest end
という風に実装した場合
obj = D.read(Array('a'..'z').join) #>> {:a=>"abcdefghij", :rest=>"klmnopqrstuvwxyz"} obj.a #>> "abcdefghij" obj.rest #>> "klmnopqrstuvwxyz"
これをうまく使うと
「要件未確定だけど、領域は決まってる」というデータに対してうまい事できます。
定義が決まってからできる仕事ばっかりじゃないんじゃ