dtoc: Rename is_wider_than() to reduce confusion

The current name is confusing because the logic is actually backwards from
what you might expect. Rename it to needs_widening() and update the
comments.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2021-07-28 19:23:09 -06:00
parent cb8970092f
commit df82de8051

View File

@ -24,16 +24,19 @@ from patman import tools
# A list of types we support
class Type(IntEnum):
# Types in order from widest to narrowest
(BYTE, INT, STRING, BOOL, INT64) = range(5)
def is_wider_than(self, other):
"""Check if another type is 'wider' than this one
def needs_widening(self, other):
"""Check if this type needs widening to hold a value from another type
A wider type is one that holds more information than an earlier one,
similar to the concept of type-widening in C.
A wider type is one that can hold a wider array of information than
another one, or is less restrictive, so it can hold the information of
another type as well as its own. This is similar to the concept of
type-widening in C.
This uses a simple arithmetic comparison, since type values are in order
from narrowest (BYTE) to widest (INT64).
from widest (BYTE) to narrowest (INT64).
Args:
other: Other type to compare against
@ -149,7 +152,7 @@ class Prop:
update the current property to be like the second, since it is less
specific.
"""
if self.type.is_wider_than(newprop.type):
if self.type.needs_widening(newprop.type):
if self.type == Type.INT and newprop.type == Type.BYTE:
if type(self.value) == list:
new_value = []