OneHotToBinary constructor
By default, creates an instance of a CaseOneHotToBinary for smaller widths and a TreeOneHotToBinary for larger widths.
Implementation
factory OneHotToBinary(Logic onehot,
{bool generateError = false,
String name = 'one_hot_to_binary',
bool reserveName = false,
bool reserveDefinitionName = false,
String? definitionName}) {
final isSmall = onehot.width <= 8;
return (isSmall ? CaseOneHotToBinary.new : TreeOneHotToBinary.new)(onehot,
generateError: generateError,
reserveName: reserveName,
reserveDefinitionName: reserveDefinitionName,
name: name,
definitionName: definitionName ?? 'OneHotToBinary_W${onehot.width}');
}