| Index: mojo/public/tools/bindings/generators/mojom_python_generator.py
|
| diff --git a/mojo/public/tools/bindings/generators/mojom_python_generator.py b/mojo/public/tools/bindings/generators/mojom_python_generator.py
|
| index 295c656f4c5bf742a1f33b4a584c8bd42c288606..f93da0919936692b3351824d55a5bc316bf5986c 100644
|
| --- a/mojo/public/tools/bindings/generators/mojom_python_generator.py
|
| +++ b/mojo/public/tools/bindings/generators/mojom_python_generator.py
|
| @@ -51,22 +51,6 @@ _kind_to_typecode_for_native_array = {
|
| mojom.DOUBLE: 'd',
|
| }
|
|
|
| -_kind_to_typecode = dict(_kind_to_typecode_for_native_array)
|
| -_kind_to_typecode.update({
|
| - mojom.INT64: 'q',
|
| - mojom.UINT64: 'Q',
|
| - mojom.HANDLE: 'i',
|
| - mojom.DCPIPE: 'i',
|
| - mojom.DPPIPE: 'i',
|
| - mojom.MSGPIPE: 'i',
|
| - mojom.SHAREDBUFFER: 'i',
|
| - mojom.NULLABLE_HANDLE: 'i',
|
| - mojom.NULLABLE_DCPIPE: 'i',
|
| - mojom.NULLABLE_DPPIPE: 'i',
|
| - mojom.NULLABLE_MSGPIPE: 'i',
|
| - mojom.NULLABLE_SHAREDBUFFER: 'i',
|
| -})
|
| -
|
|
|
| def NameToComponent(name):
|
| # insert '_' between anything and a Title name (e.g, HTTPEntry2FooBar ->
|
| @@ -137,7 +121,7 @@ def GetFieldType(kind, field=None):
|
| if mojom.IsArrayKind(kind):
|
| arguments = []
|
| if kind.kind in _kind_to_typecode_for_native_array:
|
| - arguments.append('%r' %_kind_to_typecode_for_native_array[kind.kind])
|
| + arguments.append('%r' % _kind_to_typecode_for_native_array[kind.kind])
|
| elif kind.kind != mojom.BOOL:
|
| arguments.append(GetFieldType(kind.kind))
|
| if mojom.IsNullableKind(kind):
|
| @@ -169,7 +153,19 @@ def GetFieldType(kind, field=None):
|
| if mojom.IsEnumKind(kind):
|
| return GetFieldType(mojom.INT32)
|
|
|
| - return _kind_to_type.get(kind, '_descriptor.TYPE_NONE')
|
| + if mojom.IsInterfaceKind(kind):
|
| + arguments = [ 'lambda: %s' % GetFullyQualifiedName(kind) ]
|
| + if mojom.IsNullableKind(kind):
|
| + arguments.append('nullable=True')
|
| + return '_descriptor.InterfaceType(%s)' % ', '.join(arguments)
|
| +
|
| + if mojom.IsInterfaceRequestKind(kind):
|
| + arguments = []
|
| + if mojom.IsNullableKind(kind):
|
| + arguments.append('nullable=True')
|
| + return '_descriptor.InterfaceRequestType(%s)' % ', '.join(arguments)
|
| +
|
| + return _kind_to_type[kind]
|
|
|
| def GetFieldDescriptor(packed_field):
|
| field = packed_field.field
|
|
|