blob: c11b62c3baa73e7573b69a8fd5ffbd4bec522cfc [file] [log] [blame]
// WARNING: This file is machine generated by fidlgen_dart.
// @dart = 2.12
library fidl_fidl_test_placementofattributes_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;
import 'package:fidl_exampleusing/fidl_async.dart' as lib$exampleusing;
// 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: 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
const int exampleConst = 0x0;
class ExampleEnum extends $fidl.Enum {
factory ExampleEnum(int _v) {
switch (_v) {
case 0x1:
return member;
default:
throw $fidl.FidlError('Invalid strict enum value: $_v',
$fidl.FidlErrorCode.fidlInvalidEnumValue);
}
}
static const ExampleEnum member = ExampleEnum._(0x1);
const ExampleEnum._(this.$value);
@override
final int $value;
static const Map<String, ExampleEnum> $valuesMap = {
r'member': member,
};
static const List<ExampleEnum> $values = [
member,
];
static ExampleEnum? $valueOf(String name) => $valuesMap[name];
@override
bool isUnknown() {
return false;
}
@override
String toString() {
switch ($value) {
case 0x1:
return r'ExampleEnum.member';
default:
return r'ExampleEnum.' '${$value}';
}
}
static ExampleEnum _ctor(int v) => ExampleEnum(v);
}
const $fidl.EnumType<ExampleEnum> kExampleEnum_Type =
$fidl.EnumType<ExampleEnum>(
type: $fidl.Uint32Type(), values: {0x1: null}, ctor: ExampleEnum._ctor);
class ExampleBits extends $fidl.Bits {
factory ExampleBits(int _v) {
if ((_v & ~$mask.$value) != 0) {
throw $fidl.FidlError('Bits value contains unknown bit(s): $_v',
$fidl.FidlErrorCode.fidlInvalidBit);
}
return ExampleBits._(_v);
}
static const ExampleBits member = ExampleBits._(0x1);
static const ExampleBits $none = ExampleBits._(0);
static const ExampleBits $mask = ExampleBits._(0x1);
const ExampleBits._(this.$value);
ExampleBits operator |(ExampleBits other) {
return ExampleBits._($value | other.$value);
}
ExampleBits operator &(ExampleBits other) {
return ExampleBits._($value & other.$value);
}
ExampleBits operator ~() {
return ExampleBits._(~$value & $mask.$value);
}
@override
final int $value;
@override
bool hasUnknownBits() {
return getUnknownBits() != 0;
}
@override
int getUnknownBits() {
return $value & ~$mask.$value;
}
@override
String toString() {
List<String> parts = [];
if ($value & 0x1 != 0) {
parts.add(r'ExampleBits.member');
}
if (parts.isEmpty) {
return r'ExampleBits.$none';
} else {
return parts.join(" | ");
}
}
static ExampleBits _ctor(int v) => ExampleBits(v);
}
const $fidl.BitsType<ExampleBits> kExampleBits_Type =
$fidl.BitsType<ExampleBits>(
type: $fidl.Uint32Type(), ctor: ExampleBits._ctor);
enum ExampleUnionTag {
variant, // 0x1
}
const Map<int, ExampleUnionTag> _ExampleUnionTag_map = {
1: ExampleUnionTag.variant,
};
class ExampleUnion extends $fidl.XUnion {
const ExampleUnion.withVariant(int value)
: _ordinal = 1,
_data = value;
ExampleUnion._(int ordinal, Object data)
: _ordinal = ordinal,
_data = data;
final int _ordinal;
final _data;
ExampleUnionTag get $tag => _ExampleUnionTag_map[_ordinal]!;
int? get variant {
if (_ordinal != 1) {
return null;
}
return _data;
}
$fidl.UnknownRawData? get $unknownData {
switch (_ordinal) {
case 1:
return null;
default:
return _data;
}
}
@override
String toString() {
switch (_ordinal) {
case 1:
return r'ExampleUnion.variant(' + variant.toString() + ')';
default:
return r'ExampleUnion.<UNKNOWN>';
}
}
@override
int get $ordinal => _ordinal;
@override
Object get $data => _data;
static ExampleUnion _ctor(int ordinal, Object data) {
return ExampleUnion._(ordinal, data);
}
}
// See fxbug.dev/7644:
// ignore: recursive_compile_time_constant
const $fidl.UnionType<ExampleUnion> kExampleUnion_Type =
$fidl.UnionType<ExampleUnion>(
members: <int, $fidl.FidlType>{
1: $fidl.Uint32Type(),
},
ctor: ExampleUnion._ctor,
flexible: false,
resource: false,
);
// See fxbug.dev/7644:
// ignore: recursive_compile_time_constant
const $fidl.NullableUnionType<ExampleUnion> kExampleUnion_OptType =
$fidl.NullableUnionType<ExampleUnion>(
members: <int, $fidl.FidlType>{
1: $fidl.Uint32Type(),
},
ctor: ExampleUnion._ctor,
flexible: false,
resource: false,
);
enum ExampleXUnionTag {
$unknown,
variant, // 0x1
}
const Map<int, ExampleXUnionTag> _ExampleXUnionTag_map = {
1: ExampleXUnionTag.variant,
};
class ExampleXUnion extends $fidl.XUnion {
const ExampleXUnion.withVariant(int value)
: _ordinal = 1,
_data = value;
const ExampleXUnion.with$UnknownData(this._ordinal, $fidl.UnknownRawData data)
: _data = data;
ExampleXUnion._(int ordinal, Object data)
: _ordinal = ordinal,
_data = data;
final int _ordinal;
final _data;
ExampleXUnionTag get $tag =>
_ExampleXUnionTag_map[_ordinal] ?? ExampleXUnionTag.$unknown;
int? get variant {
if (_ordinal != 1) {
return null;
}
return _data;
}
$fidl.UnknownRawData? get $unknownData {
switch (_ordinal) {
case 1:
return null;
default:
return _data;
}
}
@override
String toString() {
switch (_ordinal) {
case 1:
return r'ExampleXUnion.variant(' + variant.toString() + ')';
default:
return r'ExampleXUnion.<UNKNOWN>';
}
}
@override
int get $ordinal => _ordinal;
@override
Object get $data => _data;
static ExampleXUnion _ctor(int ordinal, Object data) {
return ExampleXUnion._(ordinal, data);
}
}
// See fxbug.dev/7644:
// ignore: recursive_compile_time_constant
const $fidl.UnionType<ExampleXUnion> kExampleXUnion_Type =
$fidl.UnionType<ExampleXUnion>(
members: <int, $fidl.FidlType>{
1: $fidl.Uint32Type(),
},
ctor: ExampleXUnion._ctor,
flexible: true,
resource: false,
);
// See fxbug.dev/7644:
// ignore: recursive_compile_time_constant
const $fidl.NullableUnionType<ExampleXUnion> kExampleXUnion_OptType =
$fidl.NullableUnionType<ExampleXUnion>(
members: <int, $fidl.FidlType>{
1: $fidl.Uint32Type(),
},
ctor: ExampleXUnion._ctor,
flexible: true,
resource: false,
);
class ExampleStruct extends $fidl.Struct {
const ExampleStruct({
required this.member,
});
ExampleStruct.clone(
ExampleStruct $orig, {
int? member,
}) : this(
member: member ?? $orig.member,
);
final int member;
@override
List<Object?> get $fields {
return <Object?>[
member,
];
}
static const $fieldType0 = $fidl.Uint32Type();
@override
void $encode($fidl.Encoder $encoder, int $offset) {
$fieldType0.encode($encoder, member, $offset + 0);
}
@override
String toString() {
return r'ExampleStruct' r'(member: ' + member.toString() + r')';
}
static ExampleStruct _structDecode($fidl.Decoder $decoder, int $offset) {
return ExampleStruct(member: $fieldType0.decode($decoder, $offset + 0));
}
}
// See fxbug.dev/7644:
// ignore: recursive_compile_time_constant
const $fidl.StructType<ExampleStruct> kExampleStruct_Type =
$fidl.StructType<ExampleStruct>(
inlineSize: 4,
structDecode: ExampleStruct._structDecode,
);
class ExampleTable extends $fidl.Table {
const ExampleTable({
this.$unknownData,
this.member,
});
ExampleTable._(Map<int, dynamic> argv, this.$unknownData) : member = argv[1];
@override
final Map<int, $fidl.UnknownRawData>? $unknownData;
final int? member;
@override
dynamic $field(int index) {
switch (index) {
case 0:
return member;
}
return null;
}
@override
Map<int, dynamic> get $fields {
return {
1: member,
};
}
static ExampleTable _ctor(Map<int, dynamic> argv,
[Map<int, $fidl.UnknownRawData>? unknownData]) =>
ExampleTable._(argv, unknownData);
}
// See fxbug.dev/7644:
// ignore: recursive_compile_time_constant
const $fidl.TableType<ExampleTable> kExampleTable_Type =
$fidl.TableType<ExampleTable>(
inlineSize: 16,
members: [
$fidl.Uint32Type(),
],
ctor: ExampleTable._ctor,
resource: false,
);
// ignore: unused_element, avoid_private_typedef_functions
typedef _VoidCallback = void Function();
// method: (lib$exampleusing.Empty arg)
const int _kExampleProtocol_Method_Ordinal = 0x207d2f81c0ddb184;
const $fidl.MethodType _kExampleProtocol_Method_Type = $fidl.MethodType(
request: <$fidl.MemberType>[
$fidl.MemberType<lib$exampleusing.Empty>(
type: lib$exampleusing.kEmpty_Type, offset: 0),
],
response: [],
name: r"ExampleProtocol.Method",
requestInlineSize: 8,
responseInlineSize: 0,
);
abstract class ExampleProtocol {
$fidl.ServiceData? get $serviceData => ExampleProtocolData();
$async.Future<void> method(lib$exampleusing.Empty arg);
}
// TODO: Remove ServiceData for non-service
class ExampleProtocolData implements $fidl.ServiceData<ExampleProtocol> {
const ExampleProtocolData();
@override
String getName() {
return "";
}
@override
$fidl.AsyncBinding getBinding() {
return ExampleProtocolBinding();
}
}
class ExampleProtocolProxy extends $fidl.AsyncProxy<ExampleProtocol>
implements ExampleProtocol {
ExampleProtocolProxy()
: super($fidl.AsyncProxyController<ExampleProtocol>(
$interfaceName: r'ExampleProtocol')) {
ctrl.onResponse = _handleResponse;
}
@override
Null get $serviceData => null;
void _handleEvent($fidl.Message $message) {
final $fidl.Decoder $decoder = $fidl.Decoder($message)
..claimMemory($fidl.kMessageHeaderSize);
switch ($message.ordinal) {
default:
ctrl.proxyError(
$fidl.FidlError('Unexpected message ordinal: ${$message.ordinal}'));
ctrl.close();
break;
}
}
void _handleResponse($fidl.Message $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;
}
final $fidl.Decoder $decoder = $fidl.Decoder($message)
..claimMemory($fidl.kMessageHeaderSize);
switch ($message.ordinal) {
default:
ctrl.proxyError(
$fidl.FidlError('Unexpected message ordinal: ${$message.ordinal}'));
ctrl.close();
break;
}
}
@override
$async.Future<void> method(lib$exampleusing.Empty arg) async {
if (!ctrl.isBound) {
return $async.Future.error(
$fidl.FidlStateException('Proxy<${ctrl.$interfaceName}> is closed.'),
StackTrace.current);
}
final $fidl.Encoder $encoder = $fidl.Encoder();
$encoder.encodeMessageHeader(_kExampleProtocol_Method_Ordinal, 0);
$encoder.alloc(
_kExampleProtocol_Method_Type.encodingRequestInlineSize($encoder));
final List<$fidl.MemberType> $types =
_kExampleProtocol_Method_Type.request!;
$types[0].encode($encoder, arg, $fidl.kMessageHeaderSize);
return $async.Future.sync(() {
ctrl.sendMessage($encoder.message);
});
}
}
class ExampleProtocolBinding extends $fidl.AsyncBinding<ExampleProtocol> {
ExampleProtocolBinding() : super(r"ExampleProtocol");
@override
void handleMessage($fidl.Message $message, $fidl.MessageSink $respond) {
final $fidl.Decoder $decoder = $fidl.Decoder($message)
..claimMemory($fidl.kMessageHeaderSize);
switch ($message.ordinal) {
case _kExampleProtocol_Method_Ordinal:
final String _name = _kExampleProtocol_Method_Type.name;
try {
Timeline.startSync(_name);
final List<$fidl.MemberType> $types =
_kExampleProtocol_Method_Type.request!;
$decoder.claimMemory(
_kExampleProtocol_Method_Type.decodeRequestInlineSize($decoder));
final $async.Future<void> $future = impl!.method(
$types[0].decode($decoder, $fidl.kMessageHeaderSize),
);
} catch (_e) {
close();
print('Exception handling method call $_name: $_e');
rethrow;
} finally {
Timeline.finishSync();
}
break;
default:
throw $fidl.FidlError(
r'Unexpected message name for ExampleProtocolBinding');
}
}
}