summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBilal Alsharifi <bilal.alsharifi@gmail.com>2020-08-13 10:56:00 -0400
committerBilal Alsharifi <bilal.alsharifi@gmail.com>2020-08-13 10:56:00 -0400
commit587057415cd61c4fdf303a9cbc4b3f9adad437e7 (patch)
tree960a84b5f0bfa154237fd9646a4b050981279aad
parenta9d4c5b254d255d0b6c415d8b51e04b3b17b183f (diff)
downloadsdl_android-587057415cd61c4fdf303a9cbc4b3f9adad437e7.tar.gz
Fix default value issue for enum
-rw-r--r--generator/transformers/common_producer.py30
1 files changed, 18 insertions, 12 deletions
diff --git a/generator/transformers/common_producer.py b/generator/transformers/common_producer.py
index 2b7acb574..ec8a74a05 100644
--- a/generator/transformers/common_producer.py
+++ b/generator/transformers/common_producer.py
@@ -81,30 +81,36 @@ class InterfaceProducerCommon(ABC):
@staticmethod
def extract_values(param):
p = OrderedDict()
- if hasattr(param.param_type, 'min_size'):
- p['array_min_size'] = param.param_type.min_size
if hasattr(param.param_type, 'max_size'):
p['array_max_size'] = param.param_type.max_size
+ if hasattr(param.param_type, 'min_size'):
+ p['array_min_size'] = param.param_type.min_size
if hasattr(param, 'default_value'):
- p['default_value'] = param.default_value
+ if hasattr(param.default_value, 'name'):
+ p['default_value'] = param.default_value.name
+ else:
+ p['default_value'] = param.default_value
elif hasattr(param.param_type, 'default_value'):
- p['default_value'] = param.param_type.default_value
- if hasattr(param.param_type, 'min_value'):
- p['num_min_value'] = param.param_type.min_value
- elif hasattr(param.param_type, 'element_type') and hasattr(param.param_type.element_type, 'min_value'):
- p['num_min_value'] = param.param_type.element_type.min_value
+ if hasattr(param.param_type.default_value, 'name'):
+ p['default_value'] = param.param_type.default_value.name
+ else:
+ p['default_value'] = param.param_type.default_value
if hasattr(param.param_type, 'max_value'):
p['num_max_value'] = param.param_type.max_value
elif hasattr(param.param_type, 'element_type') and hasattr(param.param_type.element_type, 'max_value'):
p['num_max_value'] = param.param_type.element_type.max_value
- if hasattr(param.param_type, 'min_length'):
- p['string_min_length'] = param.param_type.min_length
- elif hasattr(param.param_type, 'element_type') and hasattr(param.param_type.element_type, 'min_length'):
- p['string_min_length'] = param.param_type.element_type.min_length
+ if hasattr(param.param_type, 'min_value'):
+ p['num_min_value'] = param.param_type.min_value
+ elif hasattr(param.param_type, 'element_type') and hasattr(param.param_type.element_type, 'min_value'):
+ p['num_min_value'] = param.param_type.element_type.min_value
if hasattr(param.param_type, 'max_length'):
p['string_max_length'] = param.param_type.max_length
elif hasattr(param.param_type, 'element_type') and hasattr(param.param_type.element_type, 'max_length'):
p['string_max_length'] = param.param_type.element_type.max_length
+ if hasattr(param.param_type, 'min_length'):
+ p['string_min_length'] = param.param_type.min_length
+ elif hasattr(param.param_type, 'element_type') and hasattr(param.param_type.element_type, 'min_length'):
+ p['string_min_length'] = param.param_type.element_type.min_length
# Filter None values
filtered_values = {k: v for k, v in p.items() if v is not None}