| Index: mojo/public/tools/bindings/generators/mojom_js_generator.py
|
| diff --git a/mojo/public/tools/bindings/generators/mojom_js_generator.py b/mojo/public/tools/bindings/generators/mojom_js_generator.py
|
| index 59933a9dd2c2022ba92166737e56f82afe4e955a..4efdf0038260e7e18eb1e83f9402bbb8441b2485 100644
|
| --- a/mojo/public/tools/bindings/generators/mojom_js_generator.py
|
| +++ b/mojo/public/tools/bindings/generators/mojom_js_generator.py
|
| @@ -223,6 +223,30 @@ def JavaScriptValidateHandleParams(packed_field):
|
| return "%s, %s" % (field_offset, nullable)
|
|
|
|
|
| +
|
| +
|
| +def JavaScriptProxyMethodParameterValue(parameter):
|
| + name = parameter.name;
|
| + if (IsInterfaceParameter(parameter)):
|
| + type = JavaScriptType(parameter.kind)
|
| + return "core.isHandle(%s) ? %s : connection.bindProxyClient" \
|
| + "(%s, %s, %s.client)" % (name, name, name, type, type)
|
| + if (IsInterfaceRequestParameter(parameter)):
|
| + type = JavaScriptType(parameter.kind.kind)
|
| + return "core.isHandle(%s) ? %s : connection.bindProxyClient" \
|
| + "(%s, %s.client, %s)" % (name, name, name, type, type)
|
| + return name;
|
| +
|
| +def JavaScriptStubMethodParameterValue(parameter):
|
| + name = parameter.name;
|
| + if (IsInterfaceParameter(parameter)):
|
| + type = JavaScriptType(parameter.kind)
|
| + return "connection.bindProxyHandle(%s, %s.client, %s)" % (name, type, type)
|
| + if (IsInterfaceRequestParameter(parameter)):
|
| + type = JavaScriptType(parameter.kind.kind)
|
| + return "connection.bindProxyHandle(%s, %s, %s.client)" % (name, type, type)
|
| + return name;
|
| +
|
| def TranslateConstants(token):
|
| if isinstance(token, (mojom.EnumValue, mojom.NamedValue)):
|
| # Both variable and enum constants are constructed like:
|
| @@ -292,6 +316,8 @@ class Generator(generator.Generator):
|
| "js_type": JavaScriptType,
|
| "is_interface_request_parameter": IsInterfaceRequestParameter,
|
| "is_interface_parameter": IsInterfaceParameter,
|
| + "js_proxy_method_parameter_value": JavaScriptProxyMethodParameterValue,
|
| + "js_stub_method_parameter_value": JavaScriptStubMethodParameterValue,
|
| "stylize_method": generator.StudlyCapsToCamel,
|
| "validate_array_params": JavaScriptValidateArrayParams,
|
| "validate_handle_params": JavaScriptValidateHandleParams,
|
|
|