[pigeon] Change the Obj-C error type for FlutterApi (#3182)
* Add warnings-as-errors for test code, and fix issues
* Move a file-specific Dart helper into its class
* Conditionalize an Obj-C helper
* Make the breaking change to fix the error type
* Fix typo
* More test updates
diff --git a/packages/pigeon/CHANGELOG.md b/packages/pigeon/CHANGELOG.md
index a18f8f2..6a1853e 100644
--- a/packages/pigeon/CHANGELOG.md
+++ b/packages/pigeon/CHANGELOG.md
@@ -1,13 +1,19 @@
+## 8.0.0
+
+* [objc] **BREAKING CHANGE**: FlutterApi calls now return a `FlutterError`,
+ rather than an `NSError`, on failure.
+* [objc] Fixes an unused function warning when only generating FlutterApi.
+
## 7.2.1
* [kotlin] Fixes Flutter api int errors with updated casting.
## 7.2.0
-* [swift] Changes async method completion types.
+* [swift] Changes async method completion types.
May require code updates to existing code.
* [swift] Adds error handling to async methods.
-* [kotlin] Changes async method completion types.
+* [kotlin] Changes async method completion types.
May require code updates to existing code.
* [kotlin] Adds error handling to async methods.
* Adds async error handling integration tests for all platforms.
diff --git a/packages/pigeon/lib/generator_tools.dart b/packages/pigeon/lib/generator_tools.dart
index 7b87c23..07277d2 100644
--- a/packages/pigeon/lib/generator_tools.dart
+++ b/packages/pigeon/lib/generator_tools.dart
@@ -11,7 +11,7 @@
/// The current version of pigeon.
///
/// This must match the version in pubspec.yaml.
-const String pigeonVersion = '7.2.1';
+const String pigeonVersion = '8.0.0';
/// Read all the content from [stdin] to a String.
String readStdin() {
diff --git a/packages/pigeon/lib/objc_generator.dart b/packages/pigeon/lib/objc_generator.dart
index b9a3695..926d4ec 100644
--- a/packages/pigeon/lib/objc_generator.dart
+++ b/packages/pigeon/lib/objc_generator.dart
@@ -361,7 +361,9 @@
@override
void writeDataClasses(
ObjcOptions generatorOptions, Root root, Indent indent) {
- _writeObjcSourceHelperFunctions(indent);
+ _writeObjcSourceHelperFunctions(indent,
+ hasHostApiMethods: root.apis.any((Api api) =>
+ api.location == ApiLocation.host && api.methods.isNotEmpty));
for (final Class klass in root.classes) {
_writeObjcSourceDataClassExtension(generatorOptions, indent, klass);
@@ -643,8 +645,10 @@
});
}
- void _writeObjcSourceHelperFunctions(Indent indent) {
- indent.format('''
+ void _writeObjcSourceHelperFunctions(Indent indent,
+ {required bool hasHostApiMethods}) {
+ if (hasHostApiMethods) {
+ indent.format('''
static NSArray *wrapResult(id result, FlutterError *error) {
\tif (error) {
\t\treturn @[
@@ -653,6 +657,7 @@
\t}
\treturn @[ result ?: [NSNull null] ];
}''');
+ }
indent.format('''
static id GetNullableObjectAtIndex(NSArray *array, NSInteger key) {
\tid result = array[key];
@@ -795,6 +800,55 @@
indent.writeln('return sSharedObject;');
});
}
+
+ void _writeMethod(ObjcOptions languageOptions, Root root, Indent indent,
+ Api api, Method func) {
+ final _ObjcPtr returnType =
+ _objcTypeForDartType(languageOptions.prefix, func.returnType);
+ final String callbackType = _callbackForType(func.returnType, returnType);
+
+ String argNameFunc(int count, NamedType arg) => _getSafeArgName(count, arg);
+ final Iterable<String> argNames = indexMap(func.arguments, argNameFunc);
+ String sendArgument;
+ if (func.arguments.isEmpty) {
+ sendArgument = 'nil';
+ } else {
+ String makeVarOrNSNullExpression(String x) => '$x ?: [NSNull null]';
+ sendArgument = '@[${argNames.map(makeVarOrNSNullExpression).join(', ')}]';
+ }
+ indent.write(_makeObjcSignature(
+ func: func,
+ options: languageOptions,
+ returnType: 'void',
+ lastArgName: 'completion',
+ lastArgType: callbackType,
+ argNameFunc: argNameFunc,
+ isEnum: (TypeDeclaration t) => isEnum(root, t),
+ ));
+ indent.addScoped(' {', '}', () {
+ indent.writeln('FlutterBasicMessageChannel *channel =');
+ indent.nest(1, () {
+ indent.writeln('[FlutterBasicMessageChannel');
+ indent.nest(1, () {
+ indent.writeln(
+ 'messageChannelWithName:@"${makeChannelName(api, func)}"');
+ indent.writeln('binaryMessenger:self.binaryMessenger');
+ indent.write(
+ 'codec:${_getCodecGetterName(languageOptions.prefix, api.name)}()');
+ indent.addln('];');
+ });
+ });
+ indent.write('[channel sendMessage:$sendArgument reply:^(id reply) ');
+ indent.addScoped('{', '}];', () {
+ if (func.returnType.isVoid) {
+ indent.writeln('completion(nil);');
+ } else {
+ indent.writeln('${returnType.ptr}output = reply;');
+ indent.writeln('completion(output, nil);');
+ }
+ });
+ });
+ }
}
/// Writes the method declaration for the initializer.
@@ -842,8 +896,8 @@
/// Calculates callback block signature for for async methods.
String _callbackForType(TypeDeclaration type, _ObjcPtr objcType) {
return type.isVoid
- ? 'void (^)(NSError *_Nullable)'
- : 'void (^)(${objcType.ptr.trim()}_Nullable, NSError *_Nullable)';
+ ? 'void (^)(FlutterError *_Nullable)'
+ : 'void (^)(${objcType.ptr.trim()}_Nullable, FlutterError *_Nullable)';
}
/// Represents an ObjC pointer (ex 'id', 'NSString *').
@@ -1069,55 +1123,6 @@
});
}
-void _writeMethod(ObjcOptions languageOptions, Root root, Indent indent,
- Api api, Method func) {
- final _ObjcPtr returnType =
- _objcTypeForDartType(languageOptions.prefix, func.returnType);
- final String callbackType = _callbackForType(func.returnType, returnType);
-
- String argNameFunc(int count, NamedType arg) => _getSafeArgName(count, arg);
- final Iterable<String> argNames = indexMap(func.arguments, argNameFunc);
- String sendArgument;
- if (func.arguments.isEmpty) {
- sendArgument = 'nil';
- } else {
- String makeVarOrNSNullExpression(String x) => '$x ?: [NSNull null]';
- sendArgument = '@[${argNames.map(makeVarOrNSNullExpression).join(', ')}]';
- }
- indent.write(_makeObjcSignature(
- func: func,
- options: languageOptions,
- returnType: 'void',
- lastArgName: 'completion',
- lastArgType: callbackType,
- argNameFunc: argNameFunc,
- isEnum: (TypeDeclaration t) => isEnum(root, t),
- ));
- indent.addScoped(' {', '}', () {
- indent.writeln('FlutterBasicMessageChannel *channel =');
- indent.nest(1, () {
- indent.writeln('[FlutterBasicMessageChannel');
- indent.nest(1, () {
- indent
- .writeln('messageChannelWithName:@"${makeChannelName(api, func)}"');
- indent.writeln('binaryMessenger:self.binaryMessenger');
- indent.write(
- 'codec:${_getCodecGetterName(languageOptions.prefix, api.name)}()');
- indent.addln('];');
- });
- });
- indent.write('[channel sendMessage:$sendArgument reply:^(id reply) ');
- indent.addScoped('{', '}];', () {
- if (func.returnType.isVoid) {
- indent.writeln('completion(nil);');
- } else {
- indent.writeln('${returnType.ptr}output = reply;');
- indent.writeln('completion(output, nil);');
- }
- });
- });
-}
-
/// Looks through the AST for features that aren't supported by the ObjC
/// generator.
List<Error> validateObjc(ObjcOptions options, Root root) {
diff --git a/packages/pigeon/mock_handler_tester/test/message.dart b/packages/pigeon/mock_handler_tester/test/message.dart
index 2b9a33c..2de8cd5 100644
--- a/packages/pigeon/mock_handler_tester/test/message.dart
+++ b/packages/pigeon/mock_handler_tester/test/message.dart
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name, unnecessary_import
diff --git a/packages/pigeon/mock_handler_tester/test/test.dart b/packages/pigeon/mock_handler_tester/test/test.dart
index bee1f45..bdd87c3 100644
--- a/packages/pigeon/mock_handler_tester/test/test.dart
+++ b/packages/pigeon/mock_handler_tester/test/test.dart
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, unnecessary_import
// ignore_for_file: avoid_relative_lib_imports
diff --git a/packages/pigeon/platform_tests/alternate_language_test_plugin/android/src/main/java/com/example/alternate_language_test_plugin/CoreTests.java b/packages/pigeon/platform_tests/alternate_language_test_plugin/android/src/main/java/com/example/alternate_language_test_plugin/CoreTests.java
index c43837c..f1194d8 100644
--- a/packages/pigeon/platform_tests/alternate_language_test_plugin/android/src/main/java/com/example/alternate_language_test_plugin/CoreTests.java
+++ b/packages/pigeon/platform_tests/alternate_language_test_plugin/android/src/main/java/com/example/alternate_language_test_plugin/CoreTests.java
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
package com.example.alternate_language_test_plugin;
@@ -196,7 +196,6 @@
private AllTypes() {}
public static final class Builder {
-
private @Nullable Boolean aBool;
public @NonNull Builder setABool(@NonNull Boolean setterArg) {
@@ -480,7 +479,6 @@
}
public static final class Builder {
-
private @Nullable Boolean aNullableBool;
public @NonNull Builder setANullableBool(@Nullable Boolean setterArg) {
@@ -677,7 +675,6 @@
private AllNullableTypesWrapper() {}
public static final class Builder {
-
private @Nullable AllNullableTypes values;
public @NonNull Builder setValues(@NonNull AllNullableTypes setterArg) {
@@ -3338,7 +3335,6 @@
* <p>Generated interface from Pigeon that represents a handler of messages from Flutter.
*/
public interface HostTrivialApi {
-
void noop();
/** The codec used by HostTrivialApi. */
diff --git a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/Runner.xcodeproj/project.pbxproj b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/Runner.xcodeproj/project.pbxproj
index 0ed178f..ec7df03 100644
--- a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/Runner.xcodeproj/project.pbxproj
+++ b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/Runner.xcodeproj/project.pbxproj
@@ -326,6 +326,7 @@
files = (
);
inputPaths = (
+ "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}",
);
name = "Thin Binary";
outputPaths = (
@@ -530,6 +531,7 @@
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CURRENT_PROJECT_VERSION = 1;
+ GCC_TREAT_WARNINGS_AS_ERRORS = YES;
GENERATE_INFOPLIST_FILE = YES;
MARKETING_VERSION = 1.0;
PRODUCT_BUNDLE_IDENTIFIER = dev.flutter.plugins.RunnerTests;
@@ -544,6 +546,7 @@
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CURRENT_PROJECT_VERSION = 1;
+ GCC_TREAT_WARNINGS_AS_ERRORS = YES;
GENERATE_INFOPLIST_FILE = YES;
MARKETING_VERSION = 1.0;
PRODUCT_BUNDLE_IDENTIFIER = dev.flutter.plugins.RunnerTests;
@@ -558,6 +561,7 @@
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CURRENT_PROJECT_VERSION = 1;
+ GCC_TREAT_WARNINGS_AS_ERRORS = YES;
GENERATE_INFOPLIST_FILE = YES;
MARKETING_VERSION = 1.0;
PRODUCT_BUNDLE_IDENTIFIER = dev.flutter.plugins.RunnerTests;
diff --git a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/AllDatatypesTest.m b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/AllDatatypesTest.m
index 623a373..4ac3d8a 100644
--- a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/AllDatatypesTest.m
+++ b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/AllDatatypesTest.m
@@ -24,7 +24,7 @@
[[FlutterIntegrationCoreApi alloc] initWithBinaryMessenger:binaryMessenger];
XCTestExpectation *expectation = [self expectationWithDescription:@"callback"];
[api echoAllNullableTypes:everything
- completion:^(AllNullableTypes *_Nonnull result, NSError *_Nullable error) {
+ completion:^(AllNullableTypes *_Nonnull result, FlutterError *_Nullable error) {
XCTAssertNil(result.aNullableBool);
XCTAssertNil(result.aNullableInt);
XCTAssertNil(result.aNullableDouble);
@@ -63,7 +63,7 @@
[[FlutterIntegrationCoreApi alloc] initWithBinaryMessenger:binaryMessenger];
XCTestExpectation *expectation = [self expectationWithDescription:@"callback"];
[api echoAllNullableTypes:everything
- completion:^(AllNullableTypes *_Nonnull result, NSError *_Nullable error) {
+ completion:^(AllNullableTypes *_Nonnull result, FlutterError *_Nullable error) {
XCTAssertEqual(result.aNullableBool, everything.aNullableBool);
XCTAssertEqual(result.aNullableInt, everything.aNullableInt);
XCTAssertEqual(result.aNullableDouble, everything.aNullableDouble);
diff --git a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/AsyncHandlersTest.m b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/AsyncHandlersTest.m
index d8a2033..e72da1d 100644
--- a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/AsyncHandlersTest.m
+++ b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/AsyncHandlersTest.m
@@ -57,7 +57,7 @@
input.number = @(1);
XCTestExpectation *expectation = [self expectationWithDescription:@"calculate callback"];
[api2Flutter calculateValue:input
- completion:^(Value *_Nonnull output, NSError *_Nullable error) {
+ completion:^(Value *_Nonnull output, FlutterError *_Nullable error) {
XCTAssertEqual(output.number.intValue, 2);
[expectation fulfill];
}];
diff --git a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/EchoMessenger.m b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/EchoMessenger.m
index cd86bfd..b7b3342 100644
--- a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/EchoMessenger.m
+++ b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/EchoMessenger.m
@@ -20,7 +20,7 @@
return self;
}
-- (void)cleanupConnection:(FlutterBinaryMessengerConnection)connection {
+- (void)cleanUpConnection:(FlutterBinaryMessengerConnection)connection {
}
- (void)sendOnChannel:(nonnull NSString *)channel message:(NSData *_Nullable)message {
diff --git a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/EnumTest.m b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/EnumTest.m
index 54d3d27..99ff3eb 100644
--- a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/EnumTest.m
+++ b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/EnumTest.m
@@ -24,7 +24,7 @@
EnumApi2Flutter *api = [[EnumApi2Flutter alloc] initWithBinaryMessenger:binaryMessenger];
XCTestExpectation *expectation = [self expectationWithDescription:@"callback"];
[api echoData:data
- completion:^(DataWithEnum *_Nonnull result, NSError *_Nullable error) {
+ completion:^(DataWithEnum *_Nonnull result, FlutterError *_Nullable error) {
XCTAssertEqual(data.state, result.state);
[expectation fulfill];
}];
diff --git a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/HandlerBinaryMessenger.m b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/HandlerBinaryMessenger.m
index e593333..05c38f8 100644
--- a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/HandlerBinaryMessenger.m
+++ b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/HandlerBinaryMessenger.m
@@ -23,7 +23,7 @@
return self;
}
-- (void)cleanupConnection:(FlutterBinaryMessengerConnection)connection {
+- (void)cleanUpConnection:(FlutterBinaryMessengerConnection)connection {
}
- (void)sendOnChannel:(nonnull NSString *)channel message:(NSData *_Nullable)message {
diff --git a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/ListTest.m b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/ListTest.m
index 70c2842..479a80f 100644
--- a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/ListTest.m
+++ b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/ListTest.m
@@ -26,7 +26,7 @@
EchoApi *api = [[EchoApi alloc] initWithBinaryMessenger:binaryMessenger];
XCTestExpectation *expectation = [self expectationWithDescription:@"callback"];
[api echoMsg:top
- completion:^(TestMessage *_Nonnull result, NSError *_Nullable err) {
+ completion:^(TestMessage *_Nonnull result, FlutterError *_Nullable err) {
XCTAssertEqual(1u, result.testList.count);
XCTAssertTrue([result.testList[0] isKindOfClass:[TestMessage class]]);
XCTAssertEqualObjects(inside.testList, [result.testList[0] testList]);
diff --git a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/MultipleArityTest.m b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/MultipleArityTest.m
index fe6ce3f..3bef858 100644
--- a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/MultipleArityTest.m
+++ b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/MultipleArityTest.m
@@ -27,7 +27,7 @@
XCTestExpectation *expectation = [self expectationWithDescription:@"subtraction"];
[api subtractX:@(30)
y:@(10)
- completion:^(NSNumber *_Nonnull result, NSError *_Nullable error) {
+ completion:^(NSNumber *_Nonnull result, FlutterError *_Nullable error) {
XCTAssertNil(error);
XCTAssertEqual(20, result.intValue);
[expectation fulfill];
diff --git a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/NullableReturnsTest.m b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/NullableReturnsTest.m
index 71baf86..d09be4c 100644
--- a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/NullableReturnsTest.m
+++ b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/NullableReturnsTest.m
@@ -40,7 +40,7 @@
[[NullableArgFlutterApi alloc] initWithBinaryMessenger:binaryMessenger];
XCTestExpectation *expectation = [self expectationWithDescription:@"callback"];
[api doitX:nil
- completion:^(NSNumber *_Nonnull result, NSError *_Nullable error) {
+ completion:^(NSNumber *_Nonnull result, FlutterError *_Nullable error) {
XCTAssertNil(result);
[expectation fulfill];
}];
diff --git a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/PrimitiveTest.m b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/PrimitiveTest.m
index 5b554a7..19a4835 100644
--- a/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/PrimitiveTest.m
+++ b/packages/pigeon/platform_tests/alternate_language_test_plugin/example/ios/RunnerTests/PrimitiveTest.m
@@ -22,7 +22,7 @@
PrimitiveFlutterApi *api = [[PrimitiveFlutterApi alloc] initWithBinaryMessenger:binaryMessenger];
XCTestExpectation *expectation = [self expectationWithDescription:@"callback"];
[api anIntValue:@1
- completion:^(NSNumber *_Nonnull result, NSError *_Nullable err) {
+ completion:^(NSNumber *_Nonnull result, FlutterError *_Nullable err) {
XCTAssertEqualObjects(@1, result);
[expectation fulfill];
}];
@@ -36,7 +36,7 @@
XCTestExpectation *expectation = [self expectationWithDescription:@"callback"];
NSNumber *arg = @YES;
[api aBoolValue:arg
- completion:^(NSNumber *_Nonnull result, NSError *_Nullable err) {
+ completion:^(NSNumber *_Nonnull result, FlutterError *_Nullable err) {
XCTAssertEqualObjects(arg, result);
[expectation fulfill];
}];
@@ -50,7 +50,7 @@
XCTestExpectation *expectation = [self expectationWithDescription:@"callback"];
NSNumber *arg = @(1.5);
[api aBoolValue:arg
- completion:^(NSNumber *_Nonnull result, NSError *_Nullable err) {
+ completion:^(NSNumber *_Nonnull result, FlutterError *_Nullable err) {
XCTAssertEqualObjects(arg, result);
[expectation fulfill];
}];
@@ -64,7 +64,7 @@
XCTestExpectation *expectation = [self expectationWithDescription:@"callback"];
NSString *arg = @"hello";
[api aStringValue:arg
- completion:^(NSString *_Nonnull result, NSError *_Nullable err) {
+ completion:^(NSString *_Nonnull result, FlutterError *_Nullable err) {
XCTAssertEqualObjects(arg, result);
[expectation fulfill];
}];
@@ -78,7 +78,7 @@
XCTestExpectation *expectation = [self expectationWithDescription:@"callback"];
NSArray *arg = @[ @"hello" ];
[api aListValue:arg
- completion:^(NSArray *_Nonnull result, NSError *_Nullable err) {
+ completion:^(NSArray *_Nonnull result, FlutterError *_Nullable err) {
XCTAssertEqualObjects(arg, result);
[expectation fulfill];
}];
@@ -92,7 +92,7 @@
XCTestExpectation *expectation = [self expectationWithDescription:@"callback"];
NSDictionary *arg = @{@"hello" : @1};
[api aMapValue:arg
- completion:^(NSDictionary *_Nonnull result, NSError *_Nullable err) {
+ completion:^(NSDictionary *_Nonnull result, FlutterError *_Nullable err) {
XCTAssertEqualObjects(arg, result);
[expectation fulfill];
}];
diff --git a/packages/pigeon/platform_tests/alternate_language_test_plugin/ios/Classes/AlternateLanguageTestPlugin.m b/packages/pigeon/platform_tests/alternate_language_test_plugin/ios/Classes/AlternateLanguageTestPlugin.m
index ee89e6b..578ef71 100644
--- a/packages/pigeon/platform_tests/alternate_language_test_plugin/ios/Classes/AlternateLanguageTestPlugin.m
+++ b/packages/pigeon/platform_tests/alternate_language_test_plugin/ios/Classes/AlternateLanguageTestPlugin.m
@@ -253,7 +253,7 @@
}
- (void)callFlutterNoopWithCompletion:(void (^)(FlutterError *_Nullable))completion {
- [self.flutterAPI noopWithCompletion:^(NSError *error) {
+ [self.flutterAPI noopWithCompletion:^(FlutterError *error) {
completion(error);
}];
}
@@ -261,7 +261,7 @@
- (void)callFlutterEchoAllTypes:(AllTypes *)everything
completion:(void (^)(AllTypes *_Nullable, FlutterError *_Nullable))completion {
[self.flutterAPI echoAllTypes:everything
- completion:^(AllTypes *value, NSError *error) {
+ completion:^(AllTypes *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -274,7 +274,7 @@
[self.flutterAPI sendMultipleNullableTypesABool:aNullableBool
anInt:aNullableInt
aString:aNullableString
- completion:^(AllNullableTypes *value, NSError *error) {
+ completion:^(AllNullableTypes *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -282,7 +282,7 @@
- (void)callFlutterEchoBool:(NSNumber *)aBool
completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
[self.flutterAPI echoBool:aBool
- completion:^(NSNumber *value, NSError *error) {
+ completion:^(NSNumber *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -290,7 +290,7 @@
- (void)callFlutterEchoInt:(NSNumber *)anInt
completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
[self.flutterAPI echoInt:anInt
- completion:^(NSNumber *value, NSError *error) {
+ completion:^(NSNumber *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -298,7 +298,7 @@
- (void)callFlutterEchoDouble:(NSNumber *)aDouble
completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
[self.flutterAPI echoDouble:aDouble
- completion:^(NSNumber *value, NSError *error) {
+ completion:^(NSNumber *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -306,7 +306,7 @@
- (void)callFlutterEchoString:(NSString *)aString
completion:(void (^)(NSString *_Nullable, FlutterError *_Nullable))completion {
[self.flutterAPI echoString:aString
- completion:^(NSString *value, NSError *error) {
+ completion:^(NSString *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -315,7 +315,7 @@
completion:(void (^)(FlutterStandardTypedData *_Nullable,
FlutterError *_Nullable))completion {
[self.flutterAPI echoUint8List:aList
- completion:^(FlutterStandardTypedData *value, NSError *error) {
+ completion:^(FlutterStandardTypedData *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -323,7 +323,7 @@
- (void)callFlutterEchoList:(NSArray<id> *)aList
completion:(void (^)(NSArray<id> *_Nullable, FlutterError *_Nullable))completion {
[self.flutterAPI echoList:aList
- completion:^(NSArray<id> *value, NSError *error) {
+ completion:^(NSArray<id> *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -332,7 +332,7 @@
completion:(void (^)(NSDictionary<NSString *, id> *_Nullable,
FlutterError *_Nullable))completion {
[self.flutterAPI echoMap:aMap
- completion:^(NSDictionary<NSString *, id> *value, NSError *error) {
+ completion:^(NSDictionary<NSString *, id> *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -341,7 +341,7 @@
completion:
(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
[self.flutterAPI echoNullableBool:aBool
- completion:^(NSNumber *value, NSError *error) {
+ completion:^(NSNumber *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -350,7 +350,7 @@
completion:
(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
[self.flutterAPI echoNullableInt:anInt
- completion:^(NSNumber *value, NSError *error) {
+ completion:^(NSNumber *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -359,7 +359,7 @@
completion:
(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
[self.flutterAPI echoNullableDouble:aDouble
- completion:^(NSNumber *value, NSError *error) {
+ completion:^(NSNumber *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -368,7 +368,7 @@
completion:
(void (^)(NSString *_Nullable, FlutterError *_Nullable))completion {
[self.flutterAPI echoNullableString:aString
- completion:^(NSString *value, NSError *error) {
+ completion:^(NSString *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -377,7 +377,7 @@
completion:(void (^)(FlutterStandardTypedData *_Nullable,
FlutterError *_Nullable))completion {
[self.flutterAPI echoNullableUint8List:aList
- completion:^(FlutterStandardTypedData *value, NSError *error) {
+ completion:^(FlutterStandardTypedData *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -386,7 +386,7 @@
completion:
(void (^)(NSArray<id> *_Nullable, FlutterError *_Nullable))completion {
[self.flutterAPI echoNullableList:aList
- completion:^(NSArray<id> *value, NSError *error) {
+ completion:^(NSArray<id> *value, FlutterError *error) {
completion(value, error);
}];
}
@@ -395,7 +395,7 @@
completion:(void (^)(NSDictionary<NSString *, id> *_Nullable,
FlutterError *_Nullable))completion {
[self.flutterAPI echoNullableMap:aMap
- completion:^(NSDictionary<NSString *, id> *value, NSError *error) {
+ completion:^(NSDictionary<NSString *, id> *value, FlutterError *error) {
completion(value, error);
}];
}
diff --git a/packages/pigeon/platform_tests/alternate_language_test_plugin/ios/Classes/CoreTests.gen.h b/packages/pigeon/platform_tests/alternate_language_test_plugin/ios/Classes/CoreTests.gen.h
index 8a0c007..062382f 100644
--- a/packages/pigeon/platform_tests/alternate_language_test_plugin/ios/Classes/CoreTests.gen.h
+++ b/packages/pigeon/platform_tests/alternate_language_test_plugin/ios/Classes/CoreTests.gen.h
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
#import <Foundation/Foundation.h>
@@ -317,13 +317,14 @@
- (instancetype)initWithBinaryMessenger:(id<FlutterBinaryMessenger>)binaryMessenger;
/// A no-op function taking no arguments and returning no value, to sanity
/// test basic calling.
-- (void)noopWithCompletion:(void (^)(NSError *_Nullable))completion;
+- (void)noopWithCompletion:(void (^)(FlutterError *_Nullable))completion;
/// Returns the passed object, to test serialization and deserialization.
- (void)echoAllTypes:(AllTypes *)everything
- completion:(void (^)(AllTypes *_Nullable, NSError *_Nullable))completion;
+ completion:(void (^)(AllTypes *_Nullable, FlutterError *_Nullable))completion;
/// Returns the passed object, to test serialization and deserialization.
- (void)echoAllNullableTypes:(AllNullableTypes *)everything
- completion:(void (^)(AllNullableTypes *_Nullable, NSError *_Nullable))completion;
+ completion:
+ (void (^)(AllNullableTypes *_Nullable, FlutterError *_Nullable))completion;
/// Returns passed in arguments of multiple types.
///
/// Tests multiple-arity FlutterApi handling.
@@ -331,51 +332,53 @@
anInt:(nullable NSNumber *)aNullableInt
aString:(nullable NSString *)aNullableString
completion:(void (^)(AllNullableTypes *_Nullable,
- NSError *_Nullable))completion;
+ FlutterError *_Nullable))completion;
/// Returns the passed boolean, to test serialization and deserialization.
- (void)echoBool:(NSNumber *)aBool
- completion:(void (^)(NSNumber *_Nullable, NSError *_Nullable))completion;
+ completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion;
/// Returns the passed int, to test serialization and deserialization.
- (void)echoInt:(NSNumber *)anInt
- completion:(void (^)(NSNumber *_Nullable, NSError *_Nullable))completion;
+ completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion;
/// Returns the passed double, to test serialization and deserialization.
- (void)echoDouble:(NSNumber *)aDouble
- completion:(void (^)(NSNumber *_Nullable, NSError *_Nullable))completion;
+ completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion;
/// Returns the passed string, to test serialization and deserialization.
- (void)echoString:(NSString *)aString
- completion:(void (^)(NSString *_Nullable, NSError *_Nullable))completion;
+ completion:(void (^)(NSString *_Nullable, FlutterError *_Nullable))completion;
/// Returns the passed byte list, to test serialization and deserialization.
- (void)echoUint8List:(FlutterStandardTypedData *)aList
- completion:(void (^)(FlutterStandardTypedData *_Nullable, NSError *_Nullable))completion;
+ completion:
+ (void (^)(FlutterStandardTypedData *_Nullable, FlutterError *_Nullable))completion;
/// Returns the passed list, to test serialization and deserialization.
- (void)echoList:(NSArray<id> *)aList
- completion:(void (^)(NSArray<id> *_Nullable, NSError *_Nullable))completion;
+ completion:(void (^)(NSArray<id> *_Nullable, FlutterError *_Nullable))completion;
/// Returns the passed map, to test serialization and deserialization.
- (void)echoMap:(NSDictionary<NSString *, id> *)aMap
- completion:(void (^)(NSDictionary<NSString *, id> *_Nullable, NSError *_Nullable))completion;
+ completion:
+ (void (^)(NSDictionary<NSString *, id> *_Nullable, FlutterError *_Nullable))completion;
/// Returns the passed boolean, to test serialization and deserialization.
- (void)echoNullableBool:(nullable NSNumber *)aBool
- completion:(void (^)(NSNumber *_Nullable, NSError *_Nullable))completion;
+ completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion;
/// Returns the passed int, to test serialization and deserialization.
- (void)echoNullableInt:(nullable NSNumber *)anInt
- completion:(void (^)(NSNumber *_Nullable, NSError *_Nullable))completion;
+ completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion;
/// Returns the passed double, to test serialization and deserialization.
- (void)echoNullableDouble:(nullable NSNumber *)aDouble
- completion:(void (^)(NSNumber *_Nullable, NSError *_Nullable))completion;
+ completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion;
/// Returns the passed string, to test serialization and deserialization.
- (void)echoNullableString:(nullable NSString *)aString
- completion:(void (^)(NSString *_Nullable, NSError *_Nullable))completion;
+ completion:(void (^)(NSString *_Nullable, FlutterError *_Nullable))completion;
/// Returns the passed byte list, to test serialization and deserialization.
- (void)echoNullableUint8List:(nullable FlutterStandardTypedData *)aList
completion:(void (^)(FlutterStandardTypedData *_Nullable,
- NSError *_Nullable))completion;
+ FlutterError *_Nullable))completion;
/// Returns the passed list, to test serialization and deserialization.
- (void)echoNullableList:(nullable NSArray<id> *)aList
- completion:(void (^)(NSArray<id> *_Nullable, NSError *_Nullable))completion;
+ completion:(void (^)(NSArray<id> *_Nullable, FlutterError *_Nullable))completion;
/// Returns the passed map, to test serialization and deserialization.
- (void)echoNullableMap:(nullable NSDictionary<NSString *, id> *)aMap
- completion:
- (void (^)(NSDictionary<NSString *, id> *_Nullable, NSError *_Nullable))completion;
+ completion:(void (^)(NSDictionary<NSString *, id> *_Nullable,
+ FlutterError *_Nullable))completion;
@end
/// The codec used by HostTrivialApi.
diff --git a/packages/pigeon/platform_tests/alternate_language_test_plugin/ios/Classes/CoreTests.gen.m b/packages/pigeon/platform_tests/alternate_language_test_plugin/ios/Classes/CoreTests.gen.m
index 7069c17..6970ca8 100644
--- a/packages/pigeon/platform_tests/alternate_language_test_plugin/ios/Classes/CoreTests.gen.m
+++ b/packages/pigeon/platform_tests/alternate_language_test_plugin/ios/Classes/CoreTests.gen.m
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
#import "CoreTests.gen.h"
@@ -1716,7 +1716,7 @@
}
return self;
}
-- (void)noopWithCompletion:(void (^)(NSError *_Nullable))completion {
+- (void)noopWithCompletion:(void (^)(FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.noop"
binaryMessenger:self.binaryMessenger
@@ -1727,7 +1727,7 @@
}];
}
- (void)echoAllTypes:(AllTypes *)arg_everything
- completion:(void (^)(AllTypes *_Nullable, NSError *_Nullable))completion {
+ completion:(void (^)(AllTypes *_Nullable, FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoAllTypes"
binaryMessenger:self.binaryMessenger
@@ -1739,7 +1739,8 @@
}];
}
- (void)echoAllNullableTypes:(AllNullableTypes *)arg_everything
- completion:(void (^)(AllNullableTypes *_Nullable, NSError *_Nullable))completion {
+ completion:
+ (void (^)(AllNullableTypes *_Nullable, FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoAllNullableTypes"
binaryMessenger:self.binaryMessenger
@@ -1754,7 +1755,7 @@
anInt:(nullable NSNumber *)arg_aNullableInt
aString:(nullable NSString *)arg_aNullableString
completion:(void (^)(AllNullableTypes *_Nullable,
- NSError *_Nullable))completion {
+ FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:
@"dev.flutter.pigeon.FlutterIntegrationCoreApi.sendMultipleNullableTypes"
@@ -1770,7 +1771,7 @@
}];
}
- (void)echoBool:(NSNumber *)arg_aBool
- completion:(void (^)(NSNumber *_Nullable, NSError *_Nullable))completion {
+ completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoBool"
binaryMessenger:self.binaryMessenger
@@ -1782,7 +1783,7 @@
}];
}
- (void)echoInt:(NSNumber *)arg_anInt
- completion:(void (^)(NSNumber *_Nullable, NSError *_Nullable))completion {
+ completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoInt"
binaryMessenger:self.binaryMessenger
@@ -1794,7 +1795,7 @@
}];
}
- (void)echoDouble:(NSNumber *)arg_aDouble
- completion:(void (^)(NSNumber *_Nullable, NSError *_Nullable))completion {
+ completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoDouble"
binaryMessenger:self.binaryMessenger
@@ -1806,7 +1807,7 @@
}];
}
- (void)echoString:(NSString *)arg_aString
- completion:(void (^)(NSString *_Nullable, NSError *_Nullable))completion {
+ completion:(void (^)(NSString *_Nullable, FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoString"
binaryMessenger:self.binaryMessenger
@@ -1819,7 +1820,7 @@
}
- (void)echoUint8List:(FlutterStandardTypedData *)arg_aList
completion:
- (void (^)(FlutterStandardTypedData *_Nullable, NSError *_Nullable))completion {
+ (void (^)(FlutterStandardTypedData *_Nullable, FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoUint8List"
binaryMessenger:self.binaryMessenger
@@ -1831,7 +1832,7 @@
}];
}
- (void)echoList:(NSArray<id> *)arg_aList
- completion:(void (^)(NSArray<id> *_Nullable, NSError *_Nullable))completion {
+ completion:(void (^)(NSArray<id> *_Nullable, FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoList"
binaryMessenger:self.binaryMessenger
@@ -1843,7 +1844,8 @@
}];
}
- (void)echoMap:(NSDictionary<NSString *, id> *)arg_aMap
- completion:(void (^)(NSDictionary<NSString *, id> *_Nullable, NSError *_Nullable))completion {
+ completion:
+ (void (^)(NSDictionary<NSString *, id> *_Nullable, FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoMap"
binaryMessenger:self.binaryMessenger
@@ -1855,7 +1857,7 @@
}];
}
- (void)echoNullableBool:(nullable NSNumber *)arg_aBool
- completion:(void (^)(NSNumber *_Nullable, NSError *_Nullable))completion {
+ completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoNullableBool"
binaryMessenger:self.binaryMessenger
@@ -1867,7 +1869,7 @@
}];
}
- (void)echoNullableInt:(nullable NSNumber *)arg_anInt
- completion:(void (^)(NSNumber *_Nullable, NSError *_Nullable))completion {
+ completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoNullableInt"
binaryMessenger:self.binaryMessenger
@@ -1879,7 +1881,7 @@
}];
}
- (void)echoNullableDouble:(nullable NSNumber *)arg_aDouble
- completion:(void (^)(NSNumber *_Nullable, NSError *_Nullable))completion {
+ completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoNullableDouble"
binaryMessenger:self.binaryMessenger
@@ -1891,7 +1893,7 @@
}];
}
- (void)echoNullableString:(nullable NSString *)arg_aString
- completion:(void (^)(NSString *_Nullable, NSError *_Nullable))completion {
+ completion:(void (^)(NSString *_Nullable, FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoNullableString"
binaryMessenger:self.binaryMessenger
@@ -1904,7 +1906,7 @@
}
- (void)echoNullableUint8List:(nullable FlutterStandardTypedData *)arg_aList
completion:(void (^)(FlutterStandardTypedData *_Nullable,
- NSError *_Nullable))completion {
+ FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoNullableUint8List"
binaryMessenger:self.binaryMessenger
@@ -1916,7 +1918,7 @@
}];
}
- (void)echoNullableList:(nullable NSArray<id> *)arg_aList
- completion:(void (^)(NSArray<id> *_Nullable, NSError *_Nullable))completion {
+ completion:(void (^)(NSArray<id> *_Nullable, FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoNullableList"
binaryMessenger:self.binaryMessenger
@@ -1928,8 +1930,8 @@
}];
}
- (void)echoNullableMap:(nullable NSDictionary<NSString *, id> *)arg_aMap
- completion:
- (void (^)(NSDictionary<NSString *, id> *_Nullable, NSError *_Nullable))completion {
+ completion:(void (^)(NSDictionary<NSString *, id> *_Nullable,
+ FlutterError *_Nullable))completion {
FlutterBasicMessageChannel *channel = [FlutterBasicMessageChannel
messageChannelWithName:@"dev.flutter.pigeon.FlutterIntegrationCoreApi.echoNullableMap"
binaryMessenger:self.binaryMessenger
diff --git a/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/core_tests.gen.dart b/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/core_tests.gen.dart
index e2926fe..bf0b3a5 100644
--- a/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/core_tests.gen.dart
+++ b/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/core_tests.gen.dart
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name, unnecessary_import
diff --git a/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/flutter_unittests.gen.dart b/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/flutter_unittests.gen.dart
index a2cce70..e869f1a 100644
--- a/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/flutter_unittests.gen.dart
+++ b/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/flutter_unittests.gen.dart
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name, unnecessary_import
diff --git a/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/multiple_arity.gen.dart b/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/multiple_arity.gen.dart
index 251d69f..4378d4f 100644
--- a/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/multiple_arity.gen.dart
+++ b/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/multiple_arity.gen.dart
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name, unnecessary_import
diff --git a/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/non_null_fields.gen.dart b/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/non_null_fields.gen.dart
index bc46451..04695f5 100644
--- a/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/non_null_fields.gen.dart
+++ b/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/non_null_fields.gen.dart
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name, unnecessary_import
diff --git a/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/null_fields.gen.dart b/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/null_fields.gen.dart
index 65b9384..e53e111 100644
--- a/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/null_fields.gen.dart
+++ b/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/null_fields.gen.dart
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name, unnecessary_import
diff --git a/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/nullable_returns.gen.dart b/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/nullable_returns.gen.dart
index 4d4a325..9b4749b 100644
--- a/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/nullable_returns.gen.dart
+++ b/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/nullable_returns.gen.dart
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name, unnecessary_import
diff --git a/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/primitive.gen.dart b/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/primitive.gen.dart
index d481026..949f79d 100644
--- a/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/primitive.gen.dart
+++ b/packages/pigeon/platform_tests/flutter_null_safe_unit_tests/lib/primitive.gen.dart
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name, unnecessary_import
diff --git a/packages/pigeon/platform_tests/shared_test_plugin_code/lib/src/generated/core_tests.gen.dart b/packages/pigeon/platform_tests/shared_test_plugin_code/lib/src/generated/core_tests.gen.dart
index e2926fe..bf0b3a5 100644
--- a/packages/pigeon/platform_tests/shared_test_plugin_code/lib/src/generated/core_tests.gen.dart
+++ b/packages/pigeon/platform_tests/shared_test_plugin_code/lib/src/generated/core_tests.gen.dart
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name, unnecessary_import
diff --git a/packages/pigeon/platform_tests/test_plugin/android/src/main/kotlin/com/example/test_plugin/CoreTests.gen.kt b/packages/pigeon/platform_tests/test_plugin/android/src/main/kotlin/com/example/test_plugin/CoreTests.gen.kt
index 8a1e42b..c946b5c 100644
--- a/packages/pigeon/platform_tests/test_plugin/android/src/main/kotlin/com/example/test_plugin/CoreTests.gen.kt
+++ b/packages/pigeon/platform_tests/test_plugin/android/src/main/kotlin/com/example/test_plugin/CoreTests.gen.kt
@@ -1,8 +1,8 @@
// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+//
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
package com.example.test_plugin
diff --git a/packages/pigeon/platform_tests/test_plugin/ios/Classes/CoreTests.gen.swift b/packages/pigeon/platform_tests/test_plugin/ios/Classes/CoreTests.gen.swift
index 14ec95b..db401db 100644
--- a/packages/pigeon/platform_tests/test_plugin/ios/Classes/CoreTests.gen.swift
+++ b/packages/pigeon/platform_tests/test_plugin/ios/Classes/CoreTests.gen.swift
@@ -1,8 +1,8 @@
// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+//
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
import Foundation
@@ -117,23 +117,23 @@
var aNullableString: String? = nil
static func fromList(_ list: [Any?]) -> AllNullableTypes? {
- let aNullableBool = list[0] as? Bool
- let aNullableInt = list[1] as? Int32
- let aNullableDouble = list[2] as? Double
- let aNullableByteArray = list[3] as? FlutterStandardTypedData
- let aNullable4ByteArray = list[4] as? FlutterStandardTypedData
- let aNullable8ByteArray = list[5] as? FlutterStandardTypedData
- let aNullableFloatArray = list[6] as? FlutterStandardTypedData
- let aNullableList = list[7] as? [Any?]
- let aNullableMap = list[8] as? [AnyHashable: Any?]
- let nullableNestedList = list[9] as? [[Bool?]?]
- let nullableMapWithAnnotations = list[10] as? [String?: String?]
- let nullableMapWithObject = list[11] as? [String?: Any?]
+ let aNullableBool = list[0] as? Bool
+ let aNullableInt = list[1] as? Int32
+ let aNullableDouble = list[2] as? Double
+ let aNullableByteArray = list[3] as? FlutterStandardTypedData
+ let aNullable4ByteArray = list[4] as? FlutterStandardTypedData
+ let aNullable8ByteArray = list[5] as? FlutterStandardTypedData
+ let aNullableFloatArray = list[6] as? FlutterStandardTypedData
+ let aNullableList = list[7] as? [Any?]
+ let aNullableMap = list[8] as? [AnyHashable: Any?]
+ let nullableNestedList = list[9] as? [[Bool?]?]
+ let nullableMapWithAnnotations = list[10] as? [String?: String?]
+ let nullableMapWithObject = list[11] as? [String?: Any?]
var aNullableEnum: AnEnum? = nil
if let aNullableEnumRawValue = list[12] as? Int {
aNullableEnum = AnEnum(rawValue: aNullableEnumRawValue)
}
- let aNullableString = list[13] as? String
+ let aNullableString = list[13] as? String
return AllNullableTypes(
aNullableBool: aNullableBool,
diff --git a/packages/pigeon/platform_tests/test_plugin/macos/Classes/CoreTests.gen.swift b/packages/pigeon/platform_tests/test_plugin/macos/Classes/CoreTests.gen.swift
index 14ec95b..db401db 100644
--- a/packages/pigeon/platform_tests/test_plugin/macos/Classes/CoreTests.gen.swift
+++ b/packages/pigeon/platform_tests/test_plugin/macos/Classes/CoreTests.gen.swift
@@ -1,8 +1,8 @@
// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+//
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
import Foundation
@@ -117,23 +117,23 @@
var aNullableString: String? = nil
static func fromList(_ list: [Any?]) -> AllNullableTypes? {
- let aNullableBool = list[0] as? Bool
- let aNullableInt = list[1] as? Int32
- let aNullableDouble = list[2] as? Double
- let aNullableByteArray = list[3] as? FlutterStandardTypedData
- let aNullable4ByteArray = list[4] as? FlutterStandardTypedData
- let aNullable8ByteArray = list[5] as? FlutterStandardTypedData
- let aNullableFloatArray = list[6] as? FlutterStandardTypedData
- let aNullableList = list[7] as? [Any?]
- let aNullableMap = list[8] as? [AnyHashable: Any?]
- let nullableNestedList = list[9] as? [[Bool?]?]
- let nullableMapWithAnnotations = list[10] as? [String?: String?]
- let nullableMapWithObject = list[11] as? [String?: Any?]
+ let aNullableBool = list[0] as? Bool
+ let aNullableInt = list[1] as? Int32
+ let aNullableDouble = list[2] as? Double
+ let aNullableByteArray = list[3] as? FlutterStandardTypedData
+ let aNullable4ByteArray = list[4] as? FlutterStandardTypedData
+ let aNullable8ByteArray = list[5] as? FlutterStandardTypedData
+ let aNullableFloatArray = list[6] as? FlutterStandardTypedData
+ let aNullableList = list[7] as? [Any?]
+ let aNullableMap = list[8] as? [AnyHashable: Any?]
+ let nullableNestedList = list[9] as? [[Bool?]?]
+ let nullableMapWithAnnotations = list[10] as? [String?: String?]
+ let nullableMapWithObject = list[11] as? [String?: Any?]
var aNullableEnum: AnEnum? = nil
if let aNullableEnumRawValue = list[12] as? Int {
aNullableEnum = AnEnum(rawValue: aNullableEnumRawValue)
}
- let aNullableString = list[13] as? String
+ let aNullableString = list[13] as? String
return AllNullableTypes(
aNullableBool: aNullableBool,
diff --git a/packages/pigeon/platform_tests/test_plugin/windows/pigeon/core_tests.gen.cpp b/packages/pigeon/platform_tests/test_plugin/windows/pigeon/core_tests.gen.cpp
index c2bdca9..c256d57 100644
--- a/packages/pigeon/platform_tests/test_plugin/windows/pigeon/core_tests.gen.cpp
+++ b/packages/pigeon/platform_tests/test_plugin/windows/pigeon/core_tests.gen.cpp
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
#undef _HAS_EXCEPTIONS
diff --git a/packages/pigeon/platform_tests/test_plugin/windows/pigeon/core_tests.gen.h b/packages/pigeon/platform_tests/test_plugin/windows/pigeon/core_tests.gen.h
index 90c0afd..024c882 100644
--- a/packages/pigeon/platform_tests/test_plugin/windows/pigeon/core_tests.gen.h
+++ b/packages/pigeon/platform_tests/test_plugin/windows/pigeon/core_tests.gen.h
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
-// Autogenerated from Pigeon (v7.2.1), do not edit directly.
+// Autogenerated from Pigeon (v8.0.0), do not edit directly.
// See also: https://pub.dev/packages/pigeon
#ifndef PIGEON_CORE_TESTS_GEN_H_
diff --git a/packages/pigeon/pubspec.yaml b/packages/pigeon/pubspec.yaml
index 0b62f13..29140d9 100644
--- a/packages/pigeon/pubspec.yaml
+++ b/packages/pigeon/pubspec.yaml
@@ -2,7 +2,7 @@
description: Code generator tool to make communication between Flutter and the host platform type-safe and easier.
repository: https://github.com/flutter/packages/tree/main/packages/pigeon
issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3Apigeon
-version: 7.2.1 # This must match the version in lib/generator_tools.dart
+version: 8.0.0 # This must match the version in lib/generator_tools.dart
environment:
sdk: ">=2.12.0 <3.0.0"
diff --git a/packages/pigeon/test/objc_generator_test.dart b/packages/pigeon/test/objc_generator_test.dart
index e54bf59..a4e5f04 100644
--- a/packages/pigeon/test/objc_generator_test.dart
+++ b/packages/pigeon/test/objc_generator_test.dart
@@ -801,7 +801,7 @@
);
generator.generate(generatorOptions, root, sink);
final String code = sink.toString();
- expect(code, contains('completion:(void (^)(NSError *_Nullable))'));
+ expect(code, contains('completion:(void (^)(FlutterError *_Nullable))'));
});
test('gen flutter void return source', () {
@@ -836,7 +836,7 @@
);
generator.generate(generatorOptions, root, sink);
final String code = sink.toString();
- expect(code, contains('completion:(void (^)(NSError *_Nullable))'));
+ expect(code, contains('completion:(void (^)(FlutterError *_Nullable))'));
expect(code, contains('completion(nil)'));
});
@@ -927,7 +927,7 @@
expect(
code,
contains(
- '(void)doSomethingWithCompletion:(void (^)(ABCOutput *_Nullable, NSError *_Nullable))completion'));
+ '(void)doSomethingWithCompletion:(void (^)(ABCOutput *_Nullable, FlutterError *_Nullable))completion'));
});
test('gen flutter void arg source', () {
@@ -959,7 +959,7 @@
expect(
code,
contains(
- '(void)doSomethingWithCompletion:(void (^)(ABCOutput *_Nullable, NSError *_Nullable))completion'));
+ '(void)doSomethingWithCompletion:(void (^)(ABCOutput *_Nullable, FlutterError *_Nullable))completion'));
expect(code, contains('channel sendMessage:nil'));
});
@@ -1818,7 +1818,7 @@
expect(
code,
contains(
- '- (void)addX:(NSNumber *)x y:(NSNumber *)y completion:(void (^)(NSNumber *_Nullable, NSError *_Nullable))completion;'));
+ '- (void)addX:(NSNumber *)x y:(NSNumber *)y completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion;'));
}
{
final StringBuffer sink = StringBuffer();
@@ -1834,7 +1834,7 @@
expect(
code,
contains(
- '- (void)addX:(NSNumber *)arg_x y:(NSNumber *)arg_y completion:(void (^)(NSNumber *_Nullable, NSError *_Nullable))completion {'));
+ '- (void)addX:(NSNumber *)arg_x y:(NSNumber *)arg_y completion:(void (^)(NSNumber *_Nullable, FlutterError *_Nullable))completion {'));
expect(
code,
contains(
@@ -1977,7 +1977,7 @@
expect(
code,
matches(
- r'doitWithCompletion.*void.*NSNumber \*_Nullable.*NSError.*completion;'));
+ r'doitWithCompletion.*void.*NSNumber \*_Nullable.*FlutterError.*completion;'));
});
test('return nullable flutter source', () {