| 312 | return ", ".join(define_args) |
| 313 | |
| 314 | def parse_args(self, api_name, api_item_yaml): |
| 315 | optional_vars = [] |
| 316 | if 'optional' in api_item_yaml: |
| 317 | optional_vars = [ |
| 318 | item.strip() for item in api_item_yaml['optional'].split(',') |
| 319 | ] |
| 320 | inputs, attrs = self.parse_input_and_attr( |
| 321 | api_name, api_item_yaml['args'], optional_vars |
| 322 | ) |
| 323 | output_type_list, output_names, out_size_expr = self.parse_output( |
| 324 | api_name, api_item_yaml['output'] |
| 325 | ) |
| 326 | return ( |
| 327 | inputs, |
| 328 | attrs, |
| 329 | { |
| 330 | 'names': output_names, |
| 331 | 'types': output_type_list, |
| 332 | 'out_size_expr': out_size_expr, |
| 333 | }, |
| 334 | optional_vars, |
| 335 | ) |
| 336 | |
| 337 | def parse_input_and_attr(self, api_name, args_config, optional_vars=[]): |
| 338 | inputs = {'names': [], 'input_info': {}} |