0
有沒有辦法在初始化期間驗證在BinData :: Record上設置的字段?每個參數的check_value似乎從輸入流在初始化時驗證BinData :: Record的記錄
class Foo < BinData::Record
uint8 :bar,:check_value=>lambda{raise 'Here is an error'}
end
Foo.new(:bar=>5) #Does not raise validation exception
我嘗試添加一個「initialize_instance」,其中它在「to_binary_s」讀讀書後才能評價,但它引發了一些其他錯誤,大概是因爲該對象沒有完全實例化。
對不起,它不那麼簡單。該庫檢查是否已寫入初始化方法並採取其他操作 – FooManChew
您無法用bindata記錄重寫初始化,他們建議改爲創建一個'initialize_instance'方法。 – amenthes