_tools: extract most utility methods to a private package.
[nmigen.git] / nmigen / compat / fhdl / bitcontainer.py
1 from ... import tools
2 from ...hdl import ast
3 from ..._tools import deprecated
4
5
6 __all__ = ["log2_int", "bits_for", "value_bits_sign"]
7
8
9 @deprecated("instead of `log2_int`, use `nmigen.tools.log2_int`")
10 def log2_int(n, need_pow2=True):
11 return tools.log2_int(n, need_pow2)
12
13
14 @deprecated("instead of `bits_for`, use `nmigen.tools.bits_for`")
15 def bits_for(n, require_sign_bit=False):
16 return tools.bits_for(n, require_sign_bit)
17
18
19 @deprecated("instead of `value_bits_sign(v)`, use `v.shape()`")
20 def value_bits_sign(v):
21 return ast.Value.wrap(v).shape()