def ParameterFromData(module, data, interface): parameter = mojom.Parameter() parameter.name = data['name'] parameter.kind = KindFromData(module.kinds, data['kind'], (module.namespace, interface.name)) parameter.ordinal = data.get('ordinal') parameter.default = data.get('default') return parameter
def ParamFromMojom(self, mojom): """Translates a fidl_types_fidl.StructField to a module.Parameter. The parameters passed to and returned from a method are expressed as a struct. The struct fields in the struct are the parameters. Args: mojom: {fidl_types_fidl.StructField} representing a method parameter. Returns: {module.Parameter} translated from the mojom. """ param = module.Parameter() param.ordinal = self.OrdinalFromMojom(mojom) self.PopulateCommonFieldValues(param, mojom) return param
def _Parameter(module, parsed_param, interface): """ Args: module: {mojom.Module} Module currently being constructed. parsed_param: {ast.Parameter} Parsed parameter. union: {mojom.Interface} Interface this parameter belongs to. Returns: {mojom.Parameter} AST parameter. """ parameter = mojom.Parameter() parameter.mojom_name = parsed_param.mojom_name parameter.kind = _Kind(module.kinds, _MapKind(parsed_param.typename), (module.mojom_namespace, interface.mojom_name)) parameter.ordinal = (parsed_param.ordinal.value if parsed_param.ordinal else None) parameter.default = None # TODO(tibell): We never have these. Remove field? parameter.attributes = _AttributeListToDict(parsed_param.attribute_list) return parameter