module BinData::BitField

def create_dynamic_clamp_code(signed)

def create_dynamic_clamp_code(signed)
  if signed == :signed
    max = "(1 << (nbits - 1)) - 1"
    min = "-((#{max}) + 1)"
  else
    max = "(1 << nbits) - 1"
    min = "0"
  end
  "val = val.clamp(#{min}, #{max})"
end