From b0b58195e4a3039b6a473124dc27ed707db50240 Mon Sep 17 00:00:00 2001 From: Wenchao Xia Date: Tue, 4 Mar 2014 18:44:36 -0800 Subject: qapi script: use same function to generate enum string Prior to this patch, qapi-visit.py used custom code to generate enum names used for handling a qapi union. Fix it to instead reuse common code, with identical generated results, and allowing future updates to generation to only need to touch one place. Signed-off-by: Wenchao Xia Reviewed-by: Eric Blake Reviewed-by: Markus Armbruster Signed-off-by: Luiz Capitulino --- scripts/qapi.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'scripts/qapi.py') diff --git a/scripts/qapi.py b/scripts/qapi.py index 0de9fe2cc5..eebc8a7061 100644 --- a/scripts/qapi.py +++ b/scripts/qapi.py @@ -468,12 +468,17 @@ def guardend(name): ''', name=guardname(name)) -def generate_enum_name(name): - if name.isupper(): - return c_fun(name, False) +def _generate_enum_value_string(value): + if value.isupper(): + return c_fun(value, False) new_name = '' - for c in c_fun(name, False): + for c in c_fun(value, False): if c.isupper(): new_name += '_' new_name += c return new_name.lstrip('_').upper() + +def generate_enum_full_value(enum_name, enum_value): + abbrev_string = de_camel_case(enum_name).upper() + value_string = _generate_enum_value_string(enum_value) + return "%s_%s" % (abbrev_string, value_string) -- cgit v1.2.1