class BinData::DSLMixin::DSLBigAndLittleEndianHandler
def override_new_in_class(bnl_class)
def override_new_in_class(bnl_class) endian_classes = { big: class_with_endian(bnl_class, :big), little: class_with_endian(bnl_class, :little) } bnl_class.define_singleton_method(:new) do |*args| if self == bnl_class _, options, _ = arg_processor.separate_args(self, args) delegate = endian_classes[options[:endian]] return delegate.new(*args) if delegate end super(*args) end end