base: Make it possible to convert strings to enums
authorGiacomo Travaglini <giacomo.travaglini@arm.com>
Tue, 8 Jan 2019 10:17:39 +0000 (10:17 +0000)
committerGiacomo Travaglini <giacomo.travaglini@arm.com>
Thu, 10 Jan 2019 12:36:31 +0000 (12:36 +0000)
commit7d5696d1a9f0776f51ec20e81a413fcdcc748c4e
treeb036a33cdcc7fea89911c331a20a8461cba7f0be
parent85931deb5dee9f465811a2dd792cc398521e55d4
base: Make it possible to convert strings to enums

The __to_number helper function defined in base/str.hh is used by
unserializing code. Its purpose is to convert a string into an
integral/floating point number.  Since enums underlying type can only be
an integer type, it makes sense to extend the helper function for enums
as well. In this way it will be possible to unserialize Enums and
containers of Enums without the need of casting.

Change-Id: I74069cc4c04ec8b5eb80939acea7ab18fb366dd4
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-by: Ciro Santilli <ciro.santilli@arm.com>
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/15336
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
src/base/str.hh