| // WARNING: This file is machine generated by fidlgen_dart. |
| // @dart = 2.12 |
| |
| library fidl_test_inheritance_async; |
| |
| import 'dart:async' as $async; |
| import 'dart:core' hide Set; |
| import 'dart:developer'; |
| import 'dart:typed_data'; |
| |
| import 'package:fidl/fidl.dart' as $fidl; |
| import 'package:meta/meta.dart'; |
| import 'package:zircon/zircon.dart' as $zircon; |
| |
| // ignore_for_file: always_specify_types |
| // ignore_for_file: avoid_positional_boolean_parameters |
| // ignore_for_file: avoid_returning_null |
| // ignore_for_file: cascade_invocations |
| // ignore_for_file: constant_identifier_names |
| // ignore_for_file: directives_ordering |
| // ignore_for_file: one_member_abstracts |
| // ignore_for_file: prefer_constructors_over_static_methods |
| // ignore_for_file: prefer_single_quotes |
| // ignore_for_file: public_member_api_docs |
| // ignore_for_file: unused_import |
| // ignore_for_file: unused_local_variable |
| // ignore_for_file: non_constant_identifier_names |
| // ignore_for_file: library_prefixes |
| // ignore_for_file: prefer_typing_uninitialized_variables |
| // ignore_for_file: avoid_js_rounded_ints |
| // ignore_for_file: unnecessary_parenthesis |
| // ignore_for_file: always_put_required_named_parameters_first |
| // ignore_for_file: prefer_generic_function_type_aliases |
| // ignore_for_file: prefer_equal_for_default_values |
| // ignore_for_file: avoid_catches_without_on_clauses |
| // ignore_for_file: unused_shown_name |
| // ignore_for_file: unnecessary_lambdas |
| // ignore_for_file: comment_references |
| // ignore_for_file: avoid_unused_constructor_parameters |
| // ignore_for_file: prefer_interpolation_to_compose_strings |
| |
| // foo: (String s) -> (int y) |
| const int _kSub_foo_Ordinal = 0x68a61c2a230db8b8; |
| const $fidl.MethodType _kSub_foo_Type = $fidl.MethodType( |
| request: <$fidl.MemberType>[ |
| $fidl.MemberType<String>( |
| type: $fidl.StringType(maybeElementCount: null), offset: 0), |
| ], |
| response: <$fidl.MemberType>[ |
| $fidl.MemberType<int>(type: $fidl.Int64Type(), offset: 0), |
| ], |
| name: r"Sub.foo", |
| requestInlineSizeV2: 16, |
| responseInlineSizeV2: 8, |
| ); |
| |
| abstract class Sub { |
| $fidl.ServiceData? get $serviceData => SubData(); |
| $async.Future<int> foo(String s); |
| } // TODO: Remove ServiceData for non-service |
| |
| class SubData implements $fidl.ServiceData<Sub> { |
| const SubData(); |
| |
| @override |
| String getName() { |
| return ""; |
| } |
| |
| @override |
| $fidl.AsyncBinding getBinding() { |
| return SubBinding(); |
| } |
| } |
| |
| class SubProxy extends $fidl.AsyncProxy<Sub> implements Sub { |
| SubProxy() : super($fidl.AsyncProxyController<Sub>($interfaceName: r'Sub')) { |
| ctrl.onResponse = _handleResponse; |
| } |
| @override |
| Null get $serviceData => null; |
| |
| void _handleEvent($fidl.IncomingMessage $message) { |
| switch ($message.ordinal) { |
| default: |
| ctrl.proxyError( |
| $fidl.FidlError('Unexpected message ordinal: ${$message.ordinal}')); |
| break; |
| } |
| } |
| |
| void _handleResponse($fidl.IncomingMessage $message) { |
| final int $txid = $message.txid; |
| if ($txid == 0) { |
| _handleEvent($message); |
| return; |
| } |
| final $async.Completer? $completer = ctrl.getCompleter($txid); |
| if ($completer == null) { |
| $message.closeHandles(); |
| return; |
| } |
| switch ($message.ordinal) { |
| case _kSub_foo_Ordinal: |
| final String _name = _kSub_foo_Type.name; |
| $fidl.performCtrlWithExceptionHandling( |
| _name, ctrl, 'method response', $completer.completeError, () { |
| final List<$fidl.MemberType> $types = _kSub_foo_Type.response!; |
| // ignore: prefer_const_declarations |
| final $response = $fidl.decodeMessage( |
| $message, |
| _kSub_foo_Type.responseInlineSize($message.wireFormat), |
| $types[0]); |
| |
| $completer.complete($response); |
| }); |
| break; |
| default: |
| ctrl.proxyError( |
| $fidl.FidlError('Unexpected message ordinal: ${$message.ordinal}')); |
| break; |
| } |
| } |
| |
| @override |
| $async.Future<int> foo(String s) { |
| if (!ctrl.isBound) { |
| return $async.Future.error( |
| $fidl.FidlStateException('Proxy<${ctrl.$interfaceName}> is closed.'), |
| StackTrace.current); |
| } |
| |
| final $fidl.Encoder $encoder = $fidl.Encoder($fidl.kWireFormatDefault); |
| $encoder.encodeMessageHeader( |
| _kSub_foo_Ordinal, 0, $fidl.CallStrictness.strict); |
| final List<$fidl.MemberType> $types = _kSub_foo_Type.request!; |
| $fidl.encodeMessageWithCallback( |
| $encoder, _kSub_foo_Type.requestInlineSize($encoder.wireFormat), () { |
| $types[0].encode($encoder, s, $fidl.kMessageHeaderSize, 1); |
| }); |
| final $completer = $async.Completer<int>(); |
| ctrl.sendMessageWithResponse($encoder.message, $completer); |
| return $completer.future; |
| } |
| } |
| |
| class SubBinding extends $fidl.AsyncBinding<Sub> { |
| SubBinding() : super(r"Sub"); |
| |
| @override |
| void handleMessage( |
| $fidl.IncomingMessage $message, $fidl.OutgoingMessageSink $respond) { |
| switch ($message.ordinal) { |
| case _kSub_foo_Ordinal: |
| final String _name = _kSub_foo_Type.name; |
| $fidl.performWithExceptionHandling(_name, () { |
| final List<$fidl.MemberType> $types = _kSub_foo_Type.request!; |
| // ignore: prefer_const_declarations |
| final _impl = impl!; |
| final $async.Future<int> $future = $fidl |
| .decodeMessageWithCallback<$async.Future<int>>($message, |
| _kSub_foo_Type.requestInlineSize($message.wireFormat), |
| ($fidl.Decoder decoder) { |
| return _impl.foo( |
| $types[0].decode(decoder, $fidl.kMessageHeaderSize, 1), |
| ); |
| }); |
| $future.then(($response) { |
| final $fidl.Encoder $encoder = |
| $fidl.Encoder($fidl.kWireFormatDefault); |
| $encoder.encodeMessageHeader( |
| _kSub_foo_Ordinal, $message.txid, $fidl.CallStrictness.strict); |
| final List<$fidl.MemberType> $types = _kSub_foo_Type.response!; |
| $fidl.encodeMessage( |
| $encoder, |
| _kSub_foo_Type.responseInlineSize($encoder.wireFormat), |
| $types[0], |
| $response); |
| $respond($encoder.message); |
| }, onError: (_e) { |
| $fidl.handleException(_name, _e, close); |
| }); |
| }, close); |
| break; |
| default: |
| throw $fidl.FidlError(r'Unexpected message name for SubBinding'); |
| } |
| } |
| } |
| |
| // foo: (String s) -> (int y) |
| const int _kSuper_foo_Ordinal = 0x68a61c2a230db8b8; |
| const $fidl.MethodType _kSuper_foo_Type = $fidl.MethodType( |
| request: <$fidl.MemberType>[ |
| $fidl.MemberType<String>( |
| type: $fidl.StringType(maybeElementCount: null), offset: 0), |
| ], |
| response: <$fidl.MemberType>[ |
| $fidl.MemberType<int>(type: $fidl.Int64Type(), offset: 0), |
| ], |
| name: r"Super.foo", |
| requestInlineSizeV2: 16, |
| responseInlineSizeV2: 8, |
| ); |
| |
| abstract class Super { |
| $fidl.ServiceData? get $serviceData => SuperData(); |
| $async.Future<int> foo(String s); |
| } // TODO: Remove ServiceData for non-service |
| |
| class SuperData implements $fidl.ServiceData<Super> { |
| const SuperData(); |
| |
| @override |
| String getName() { |
| return ""; |
| } |
| |
| @override |
| $fidl.AsyncBinding getBinding() { |
| return SuperBinding(); |
| } |
| } |
| |
| class SuperProxy extends $fidl.AsyncProxy<Super> implements Super { |
| SuperProxy() |
| : super($fidl.AsyncProxyController<Super>($interfaceName: r'Super')) { |
| ctrl.onResponse = _handleResponse; |
| } |
| @override |
| Null get $serviceData => null; |
| |
| void _handleEvent($fidl.IncomingMessage $message) { |
| switch ($message.ordinal) { |
| default: |
| ctrl.proxyError( |
| $fidl.FidlError('Unexpected message ordinal: ${$message.ordinal}')); |
| break; |
| } |
| } |
| |
| void _handleResponse($fidl.IncomingMessage $message) { |
| final int $txid = $message.txid; |
| if ($txid == 0) { |
| _handleEvent($message); |
| return; |
| } |
| final $async.Completer? $completer = ctrl.getCompleter($txid); |
| if ($completer == null) { |
| $message.closeHandles(); |
| return; |
| } |
| switch ($message.ordinal) { |
| case _kSuper_foo_Ordinal: |
| final String _name = _kSuper_foo_Type.name; |
| $fidl.performCtrlWithExceptionHandling( |
| _name, ctrl, 'method response', $completer.completeError, () { |
| final List<$fidl.MemberType> $types = _kSuper_foo_Type.response!; |
| // ignore: prefer_const_declarations |
| final $response = $fidl.decodeMessage( |
| $message, |
| _kSuper_foo_Type.responseInlineSize($message.wireFormat), |
| $types[0]); |
| |
| $completer.complete($response); |
| }); |
| break; |
| default: |
| ctrl.proxyError( |
| $fidl.FidlError('Unexpected message ordinal: ${$message.ordinal}')); |
| break; |
| } |
| } |
| |
| @override |
| $async.Future<int> foo(String s) { |
| if (!ctrl.isBound) { |
| return $async.Future.error( |
| $fidl.FidlStateException('Proxy<${ctrl.$interfaceName}> is closed.'), |
| StackTrace.current); |
| } |
| |
| final $fidl.Encoder $encoder = $fidl.Encoder($fidl.kWireFormatDefault); |
| $encoder.encodeMessageHeader( |
| _kSuper_foo_Ordinal, 0, $fidl.CallStrictness.strict); |
| final List<$fidl.MemberType> $types = _kSuper_foo_Type.request!; |
| $fidl.encodeMessageWithCallback( |
| $encoder, _kSuper_foo_Type.requestInlineSize($encoder.wireFormat), () { |
| $types[0].encode($encoder, s, $fidl.kMessageHeaderSize, 1); |
| }); |
| final $completer = $async.Completer<int>(); |
| ctrl.sendMessageWithResponse($encoder.message, $completer); |
| return $completer.future; |
| } |
| } |
| |
| class SuperBinding extends $fidl.AsyncBinding<Super> { |
| SuperBinding() : super(r"Super"); |
| |
| @override |
| void handleMessage( |
| $fidl.IncomingMessage $message, $fidl.OutgoingMessageSink $respond) { |
| switch ($message.ordinal) { |
| case _kSuper_foo_Ordinal: |
| final String _name = _kSuper_foo_Type.name; |
| $fidl.performWithExceptionHandling(_name, () { |
| final List<$fidl.MemberType> $types = _kSuper_foo_Type.request!; |
| // ignore: prefer_const_declarations |
| final _impl = impl!; |
| final $async.Future<int> $future = $fidl |
| .decodeMessageWithCallback<$async.Future<int>>($message, |
| _kSuper_foo_Type.requestInlineSize($message.wireFormat), |
| ($fidl.Decoder decoder) { |
| return _impl.foo( |
| $types[0].decode(decoder, $fidl.kMessageHeaderSize, 1), |
| ); |
| }); |
| $future.then(($response) { |
| final $fidl.Encoder $encoder = |
| $fidl.Encoder($fidl.kWireFormatDefault); |
| $encoder.encodeMessageHeader(_kSuper_foo_Ordinal, $message.txid, |
| $fidl.CallStrictness.strict); |
| final List<$fidl.MemberType> $types = _kSuper_foo_Type.response!; |
| $fidl.encodeMessage( |
| $encoder, |
| _kSuper_foo_Type.responseInlineSize($encoder.wireFormat), |
| $types[0], |
| $response); |
| $respond($encoder.message); |
| }, onError: (_e) { |
| $fidl.handleException(_name, _e, close); |
| }); |
| }, close); |
| break; |
| default: |
| throw $fidl.FidlError(r'Unexpected message name for SuperBinding'); |
| } |
| } |
| } |