mirror of
https://github.com/dart-lang/sdk
synced 2024-09-15 21:40:07 +00:00
[cfe] Refactor FunctionNode.futureValueType into emitted value type
Previously we would encode the type of the value returned in `async` functions as the field `futureValueType` on `FunctionNode`. For all other kinds of functions, such as `sync`, `sync*`, and `async*`, that field would be null. This CL renames `futureValueType` into `emittedVAlueType`, and for functions of kinds `async`, `sync*`, and `async*` that is expected to be the type of values emitted via `return` or `yield` statements. For `sync` functions that field is supposed to contain `null`. In response to https://github.com/dart-lang/sdk/issues/54159 TEST=existing Change-Id: I1efdbcc4e75d150f5618c7ca50cfe49a0e54fce6 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/341662 Reviewed-by: Alexander Markov <alexmarkov@google.com> Reviewed-by: Johnni Winther <johnniwinther@google.com> Reviewed-by: Ömer Ağacan <omersa@google.com> Commit-Queue: Chloe Stefantsova <cstefantsova@google.com> Reviewed-by: Mayank Patke <fishythefish@google.com>
This commit is contained in:
parent
8d8c4c6125
commit
3eeba4a4e2
|
@ -202,7 +202,7 @@ class ImpactBuilder extends StaticTypeVisitor implements ImpactRegistry {
|
|||
break;
|
||||
|
||||
case ir.AsyncMarker.Async:
|
||||
registerAsync(function.futureValueType!);
|
||||
registerAsync(function.emittedValueType!);
|
||||
break;
|
||||
|
||||
case ir.AsyncMarker.AsyncStar:
|
||||
|
|
|
@ -2254,7 +2254,7 @@ class JsElementEnvironment extends ElementEnvironment
|
|||
return _getSyncStarElementType(returnType);
|
||||
case AsyncMarker.ASYNC:
|
||||
return elementMap.getDartType(
|
||||
getFunctionNode(elementMap, function)!.futureValueType!);
|
||||
getFunctionNode(elementMap, function)!.emittedValueType!);
|
||||
case AsyncMarker.ASYNC_STAR:
|
||||
return _getAsyncStarElementType(returnType);
|
||||
}
|
||||
|
|
|
@ -36,7 +36,7 @@ class AsyncLowering {
|
|||
|
||||
bool _shouldTryAsyncLowering(FunctionNode node) =>
|
||||
node.asyncMarker == AsyncMarker.Async &&
|
||||
node.futureValueType != null &&
|
||||
node.emittedValueType != null &&
|
||||
_functions.last.shouldLower;
|
||||
|
||||
void enterFunction(FunctionNode node) {
|
||||
|
@ -54,7 +54,7 @@ class AsyncLowering {
|
|||
|
||||
void _wrapBodySync(FunctionNode node) {
|
||||
node.asyncMarker = AsyncMarker.Sync;
|
||||
final futureValueType = node.futureValueType!;
|
||||
final futureValueType = node.emittedValueType!;
|
||||
_updateFunctionBody(
|
||||
node,
|
||||
ReturnStatement(StaticInvocation(
|
||||
|
@ -69,7 +69,7 @@ class AsyncLowering {
|
|||
}
|
||||
|
||||
void _wrapReturns(_FunctionData functionData, FunctionNode node) {
|
||||
final futureValueType = node.futureValueType!;
|
||||
final futureValueType = node.emittedValueType!;
|
||||
for (final returnStatement in functionData.returnStatements) {
|
||||
final expression = returnStatement.expression;
|
||||
// Ensure the returned future has a runtime type (T) matching the
|
||||
|
|
|
@ -464,7 +464,7 @@ class _WasmTransformer extends Transformer {
|
|||
_addCompleterToController(controller, completer, fileOffset)),
|
||||
tryFinally,
|
||||
]),
|
||||
futureValueType: const VoidType(),
|
||||
emittedValueType: const VoidType(),
|
||||
returnType: InterfaceType(
|
||||
coreTypes.futureClass, Nullability.nonNullable, [const VoidType()]),
|
||||
asyncMarker: AsyncMarker.Async,
|
||||
|
@ -544,7 +544,7 @@ class _WasmTransformer extends Transformer {
|
|||
coreTypes.objectNullableRawType, Nullability.nonNullable),
|
||||
asyncMarker: AsyncMarker.Async,
|
||||
dartAsyncMarker: AsyncMarker.Async,
|
||||
futureValueType: coreTypes.objectNullableRawType,
|
||||
emittedValueType: coreTypes.objectNullableRawType,
|
||||
));
|
||||
|
||||
// Call `asyncMap`.
|
||||
|
|
|
@ -4192,7 +4192,7 @@ class ProgramCompiler extends ComputeOnceConstantVisitor<js_ast.Expression>
|
|||
// In the body of an `async`, `await` is generated simply as `yield`.
|
||||
var gen = emitGeneratorFn((_) => []);
|
||||
var returnType = _currentLibrary!.isNonNullableByDefault
|
||||
? function.futureValueType!
|
||||
? function.emittedValueType!
|
||||
// Otherwise flatten the return type because futureValueType(T) is not
|
||||
// defined for legacy libraries.
|
||||
: _types.flatten(function
|
||||
|
|
|
@ -1305,11 +1305,9 @@ class BodyBuilder extends StackListenerImpl
|
|||
asyncModifier,
|
||||
body);
|
||||
body = inferredFunctionBody.body;
|
||||
function.futureValueType = inferredFunctionBody.futureValueType;
|
||||
assert(
|
||||
!(function.asyncMarker == AsyncMarker.Async &&
|
||||
function.futureValueType == null),
|
||||
"No future value type computed.");
|
||||
function.emittedValueType = inferredFunctionBody.emittedValueType;
|
||||
assert(function.asyncMarker == AsyncMarker.Sync ||
|
||||
function.emittedValueType != null);
|
||||
}
|
||||
|
||||
if (_context.returnType is! OmittedTypeBuilder) {
|
||||
|
|
|
@ -40,7 +40,7 @@ abstract class ClosureContext {
|
|||
/// the unknown type.
|
||||
DartType get yieldContext;
|
||||
|
||||
DartType? get futureValueType;
|
||||
DartType? get emittedValueType;
|
||||
|
||||
factory ClosureContext(InferenceVisitorBase inferrer, AsyncMarker asyncMarker,
|
||||
DartType returnContext, bool needToInferReturnType) {
|
||||
|
@ -142,6 +142,9 @@ class _SyncClosureContext implements ClosureContext {
|
|||
@override
|
||||
DartType get yieldContext => const UnknownType();
|
||||
|
||||
@override
|
||||
DartType? get emittedValueType => null;
|
||||
|
||||
final DartType _declaredReturnType;
|
||||
|
||||
final bool _needToInferReturnType;
|
||||
|
@ -161,9 +164,6 @@ class _SyncClosureContext implements ClosureContext {
|
|||
/// being inferred.
|
||||
List<DartType>? _returnExpressionTypes;
|
||||
|
||||
@override
|
||||
DartType? get futureValueType => null;
|
||||
|
||||
_SyncClosureContext(this.inferrer, this._returnContext,
|
||||
this._declaredReturnType, this._needToInferReturnType) {
|
||||
if (_needToInferReturnType) {
|
||||
|
@ -493,6 +493,9 @@ class _AsyncClosureContext implements ClosureContext {
|
|||
@override
|
||||
DartType get yieldContext => const UnknownType();
|
||||
|
||||
@override
|
||||
DartType? emittedValueType;
|
||||
|
||||
final DartType _declaredReturnType;
|
||||
|
||||
final bool _needToInferReturnType;
|
||||
|
@ -512,15 +515,12 @@ class _AsyncClosureContext implements ClosureContext {
|
|||
/// being inferred.
|
||||
List<DartType>? _returnExpressionTypes;
|
||||
|
||||
@override
|
||||
DartType? futureValueType;
|
||||
|
||||
_AsyncClosureContext(
|
||||
this.inferrer,
|
||||
this._returnContext,
|
||||
this._declaredReturnType,
|
||||
this._needToInferReturnType,
|
||||
this.futureValueType) {
|
||||
this.emittedValueType) {
|
||||
if (_needToInferReturnType) {
|
||||
_returnStatements = [];
|
||||
_returnExpressionTypes = [];
|
||||
|
@ -531,14 +531,14 @@ class _AsyncClosureContext implements ClosureContext {
|
|||
DartType returnType, ReturnStatement statement, DartType expressionType) {
|
||||
if (inferrer.isNonNullableByDefault) {
|
||||
assert(
|
||||
futureValueType != null, "Future value type has not been computed.");
|
||||
emittedValueType != null, "Future value type has not been computed.");
|
||||
|
||||
if (statement.expression == null) {
|
||||
// It is a compile-time error if s is `return;`, unless T_v is void,
|
||||
// dynamic, or Null.
|
||||
if (futureValueType is VoidType ||
|
||||
futureValueType is DynamicType ||
|
||||
futureValueType is NullType) {
|
||||
if (emittedValueType is VoidType ||
|
||||
emittedValueType is DynamicType ||
|
||||
emittedValueType is NullType) {
|
||||
// Valid return;
|
||||
} else {
|
||||
statement.expression = inferrer.helper.wrapInProblem(
|
||||
|
@ -560,7 +560,7 @@ class _AsyncClosureContext implements ClosureContext {
|
|||
|
||||
DartType flattenedExpressionType =
|
||||
inferrer.typeSchemaEnvironment.flatten(expressionType);
|
||||
if (futureValueType is VoidType &&
|
||||
if (emittedValueType is VoidType &&
|
||||
!(flattenedExpressionType is VoidType ||
|
||||
flattenedExpressionType is DynamicType ||
|
||||
flattenedExpressionType is NullType)) {
|
||||
|
@ -573,8 +573,8 @@ class _AsyncClosureContext implements ClosureContext {
|
|||
statement.expression!.fileOffset,
|
||||
noLength)
|
||||
..parent = statement;
|
||||
} else if (!(futureValueType is VoidType ||
|
||||
futureValueType is DynamicType) &&
|
||||
} else if (!(emittedValueType is VoidType ||
|
||||
emittedValueType is DynamicType) &&
|
||||
flattenedExpressionType is VoidType) {
|
||||
// It is a compile-time error if s is `return e;`, T_v is neither void
|
||||
// nor dynamic, and flatten(S) is void.
|
||||
|
@ -588,13 +588,13 @@ class _AsyncClosureContext implements ClosureContext {
|
|||
} else if (flattenedExpressionType is! VoidType &&
|
||||
!inferrer.typeSchemaEnvironment
|
||||
.performNullabilityAwareSubtypeCheck(
|
||||
flattenedExpressionType, futureValueType!)
|
||||
flattenedExpressionType, emittedValueType!)
|
||||
.isSubtypeWhenUsingNullabilities()) {
|
||||
// It is a compile-time error if s is `return e;`, flatten(S) is not
|
||||
// void, S is not assignable to T_v, and flatten(S) is not a subtype
|
||||
// of T_v.
|
||||
statement.expression = inferrer.ensureAssignable(
|
||||
futureValueType!, expressionType, statement.expression!,
|
||||
emittedValueType!, expressionType, statement.expression!,
|
||||
fileOffset: statement.expression!.fileOffset,
|
||||
runtimeCheckedType:
|
||||
inferrer.computeGreatestClosure2(_returnContext),
|
||||
|
@ -831,10 +831,10 @@ class _AsyncClosureContext implements ClosureContext {
|
|||
}
|
||||
|
||||
if (inferrer.isNonNullableByDefault) {
|
||||
futureValueType =
|
||||
emittedValueType =
|
||||
computeFutureValueType(inferrer.coreTypes, inferredType);
|
||||
} else {
|
||||
futureValueType = inferrer.typeSchemaEnvironment.flatten(inferredType);
|
||||
emittedValueType = inferrer.typeSchemaEnvironment.flatten(inferredType);
|
||||
}
|
||||
|
||||
for (int i = 0; i < _returnStatements!.length; ++i) {
|
||||
|
@ -915,21 +915,25 @@ class _SyncStarClosureContext implements ClosureContext {
|
|||
@override
|
||||
DartType get yieldContext => _yieldElementContext;
|
||||
|
||||
@override
|
||||
DartType? get emittedValueType => _emittedValueType;
|
||||
|
||||
final DartType _declaredReturnType;
|
||||
|
||||
DartType? _emittedValueType;
|
||||
|
||||
final bool _needToInferReturnType;
|
||||
|
||||
/// A list of return expression types in functions whose return type is
|
||||
/// being inferred.
|
||||
List<DartType>? _yieldElementTypes;
|
||||
|
||||
@override
|
||||
DartType? get futureValueType => null;
|
||||
|
||||
_SyncStarClosureContext(this.inferrer, this._yieldElementContext,
|
||||
this._declaredReturnType, this._needToInferReturnType) {
|
||||
if (_needToInferReturnType) {
|
||||
_yieldElementTypes = [];
|
||||
} else {
|
||||
_emittedValueType = inferrer.computeGreatestClosure(_yieldElementContext);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1009,8 +1013,13 @@ class _SyncStarClosureContext implements ClosureContext {
|
|||
inferredType = inferrer.computeGreatestClosure2(_declaredReturnType);
|
||||
}
|
||||
|
||||
return demoteTypeInLibrary(inferredType,
|
||||
DartType demotedType = demoteTypeInLibrary(inferredType,
|
||||
isNonNullableByDefault: inferrer.isNonNullableByDefault);
|
||||
_emittedValueType = inferrer.getTypeArgumentOf(
|
||||
inferrer.typeSchemaEnvironment.getUnionFreeType(demotedType,
|
||||
isNonNullableByDefault: inferrer.isNonNullableByDefault),
|
||||
inferrer.coreTypes.iterableClass);
|
||||
return demotedType;
|
||||
}
|
||||
|
||||
@override
|
||||
|
@ -1050,21 +1059,25 @@ class _AsyncStarClosureContext implements ClosureContext {
|
|||
@override
|
||||
DartType get yieldContext => _yieldElementContext;
|
||||
|
||||
@override
|
||||
DartType? get emittedValueType => _emittedValueType;
|
||||
|
||||
final DartType _declaredReturnType;
|
||||
|
||||
DartType? _emittedValueType;
|
||||
|
||||
final bool _needToInferReturnType;
|
||||
|
||||
/// A list of return expression types in functions whose return type is
|
||||
/// being inferred.
|
||||
List<DartType>? _yieldElementTypes;
|
||||
|
||||
@override
|
||||
DartType? get futureValueType => null;
|
||||
|
||||
_AsyncStarClosureContext(this.inferrer, this._yieldElementContext,
|
||||
this._declaredReturnType, this._needToInferReturnType) {
|
||||
if (_needToInferReturnType) {
|
||||
_yieldElementTypes = [];
|
||||
} else {
|
||||
_emittedValueType = inferrer.computeGreatestClosure(_yieldElementContext);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1142,8 +1155,13 @@ class _AsyncStarClosureContext implements ClosureContext {
|
|||
inferredType = inferrer.computeGreatestClosure2(_declaredReturnType);
|
||||
}
|
||||
|
||||
return demoteTypeInLibrary(inferredType,
|
||||
DartType demotedType = demoteTypeInLibrary(inferredType,
|
||||
isNonNullableByDefault: inferrer.isNonNullableByDefault);
|
||||
_emittedValueType = inferrer.getTypeArgumentOf(
|
||||
inferrer.typeSchemaEnvironment.getUnionFreeType(demotedType,
|
||||
isNonNullableByDefault: inferrer.isNonNullableByDefault),
|
||||
inferrer.coreTypes.streamClass);
|
||||
return demotedType;
|
||||
}
|
||||
|
||||
@override
|
||||
|
|
|
@ -2326,11 +2326,7 @@ abstract class InferenceVisitorBase implements InferenceVisitor {
|
|||
}
|
||||
bodyResult = closureContext.handleImplicitReturn(
|
||||
this, function.body!, bodyResult, fileOffset);
|
||||
function.futureValueType = closureContext.futureValueType;
|
||||
assert(
|
||||
!(function.asyncMarker == AsyncMarker.Async &&
|
||||
function.futureValueType == null),
|
||||
"No future value type computed.");
|
||||
function.emittedValueType = closureContext.emittedValueType;
|
||||
|
||||
if (bodyResult.hasChanged) {
|
||||
function.body = bodyResult.statement..parent = function;
|
||||
|
@ -3778,7 +3774,7 @@ abstract class InferenceVisitorBase implements InferenceVisitor {
|
|||
|
||||
/// Computes the `futureValueTypeSchema` for the type schema [type].
|
||||
///
|
||||
/// This is the same as the [futureValueType] except that this handles
|
||||
/// This is the same as the [emittedValueType] except that this handles
|
||||
/// the unknown type.
|
||||
DartType computeFutureValueTypeSchema(DartType type) {
|
||||
return type.accept1(new FutureValueTypeVisitor(unhandledTypeHandler:
|
||||
|
|
|
@ -206,12 +206,11 @@ class TypeInferrerImpl implements TypeInferrer {
|
|||
result =
|
||||
closureContext.handleImplicitReturn(visitor, body, result, fileOffset);
|
||||
visitor.checkCleanState();
|
||||
DartType? futureValueType = closureContext.futureValueType;
|
||||
assert(!(asyncMarker == AsyncMarker.Async && futureValueType == null),
|
||||
"No future value type computed.");
|
||||
DartType? emittedValueType = closureContext.emittedValueType;
|
||||
assert(asyncMarker == AsyncMarker.Sync || emittedValueType != null);
|
||||
flowAnalysis.finish();
|
||||
return new InferredFunctionBody(
|
||||
result.hasChanged ? result.statement : body, futureValueType);
|
||||
result.hasChanged ? result.statement : body, emittedValueType);
|
||||
}
|
||||
|
||||
@override
|
||||
|
@ -432,7 +431,7 @@ class TypeInferrerImplBenchmarked implements TypeInferrer {
|
|||
|
||||
class InferredFunctionBody {
|
||||
final Statement body;
|
||||
final DartType? futureValueType;
|
||||
final DartType? emittedValueType;
|
||||
|
||||
InferredFunctionBody(this.body, this.futureValueType);
|
||||
InferredFunctionBody(this.body, this.emittedValueType);
|
||||
}
|
||||
|
|
|
@ -36,7 +36,7 @@ macro class MethodMacro extends core::Object implements api::ClassDeclarationsMa
|
|||
: super core::Object::•()
|
||||
;
|
||||
@#C2
|
||||
method buildDeclarationsForClass(api::ClassDeclaration clazz, api::MemberDeclarationBuilder builder) → FutureOr<void> async /* futureValueType= void */ {}
|
||||
method buildDeclarationsForClass(api::ClassDeclaration clazz, api::MemberDeclarationBuilder builder) → FutureOr<void> async /* emittedValueType= void */ {}
|
||||
}
|
||||
|
||||
library;
|
||||
|
|
|
@ -33,7 +33,7 @@ macro class MethodMacro extends core::Object implements api::ClassDeclarationsMa
|
|||
: super core::Object::•()
|
||||
;
|
||||
@#C2
|
||||
method buildDeclarationsForClass(api::ClassDeclaration clazz, api::MemberDeclarationBuilder builder) → FutureOr<void> async /* futureValueType= void */ {
|
||||
method buildDeclarationsForClass(api::ClassDeclaration clazz, api::MemberDeclarationBuilder builder) → FutureOr<void> async /* emittedValueType= void */ {
|
||||
builder.{api::MemberDeclarationBuilder::declareInType}(new api::DeclarationCode::fromString(mac2::generateBody())){(api::DeclarationCode) → void};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -35,7 +35,7 @@ macro class MethodMacro extends core::Object implements api::ClassDeclarationsMa
|
|||
: super core::Object::•()
|
||||
;
|
||||
@#C2
|
||||
method buildDeclarationsForClass(api::ClassDeclaration clazz, api::MemberDeclarationBuilder builder) → FutureOr<void> async /* futureValueType= void */ {
|
||||
method buildDeclarationsForClass(api::ClassDeclaration clazz, api::MemberDeclarationBuilder builder) → FutureOr<void> async /* emittedValueType= void */ {
|
||||
builder.{api::MemberDeclarationBuilder::declareInType}(new api::DeclarationCode::fromString(mac2::generateBody())){(api::DeclarationCode) → void};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -96,8 +96,8 @@ class StaticTypeDataExtractor extends CfeDataExtractor<String> {
|
|||
|
||||
@override
|
||||
String? computeMemberValue(Id id, Member node) {
|
||||
if (node is Procedure && node.function.futureValueType != null) {
|
||||
return 'futureValueType=${typeToText(node.function.futureValueType!)}';
|
||||
if (node is Procedure && node.function.emittedValueType != null) {
|
||||
return 'futureValueType=${typeToText(node.function.emittedValueType!)}';
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
@ -109,9 +109,10 @@ class StaticTypeDataExtractor extends CfeDataExtractor<String> {
|
|||
}
|
||||
if (node is Expression) {
|
||||
DartType type = node.getStaticType(_staticTypeContext!);
|
||||
if (node is FunctionExpression && node.function.futureValueType != null) {
|
||||
if (node is FunctionExpression &&
|
||||
node.function.emittedValueType != null) {
|
||||
return '${typeToText(type)},'
|
||||
'futureValueType=${typeToText(node.function.futureValueType!)}';
|
||||
'futureValueType=${typeToText(node.function.emittedValueType!)}';
|
||||
}
|
||||
return typeToText(type);
|
||||
} else if (node is Arguments) {
|
||||
|
@ -123,8 +124,8 @@ class StaticTypeDataExtractor extends CfeDataExtractor<String> {
|
|||
return typeToText(node.getElementType(_staticTypeContext!));
|
||||
}
|
||||
} else if (node is FunctionDeclaration) {
|
||||
if (node.function.futureValueType != null) {
|
||||
return 'futureValueType=${typeToText(node.function.futureValueType!)}';
|
||||
if (node.function.emittedValueType != null) {
|
||||
return 'futureValueType=${typeToText(node.function.emittedValueType!)}';
|
||||
}
|
||||
}
|
||||
return null;
|
||||
|
|
|
@ -6,15 +6,15 @@ import "dart:core" as core;
|
|||
static method bar() → asy::Future<core::int> {
|
||||
return asy::Future::value<core::int>(123);
|
||||
}
|
||||
static method foo1() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo1() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
return await self::bar();
|
||||
}
|
||||
static method foo2(core::bool x) → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo2(core::bool x) → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
if(x)
|
||||
return await asy::Future::value<core::int>(345);
|
||||
return await self::bar();
|
||||
}
|
||||
static method foo3(core::bool x) → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo3(core::bool x) → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
if(x)
|
||||
return 234;
|
||||
return await asy::Future::value<core::int>(123);
|
||||
|
|
|
@ -6,17 +6,17 @@ import "dart:core" as core;
|
|||
static method bar() → asy::Future<core::int> {
|
||||
return asy::Future::value<core::int>(123);
|
||||
}
|
||||
static method foo1() → asy::Future<core::int> /* futureValueType= core::int */ /* originally async */
|
||||
static method foo1() → asy::Future<core::int> /* emittedValueType= core::int */ /* originally async */
|
||||
return asy::Future::sync<core::int>(() → FutureOr<core::int> {
|
||||
return asy::Future::value<core::int>(self::bar());
|
||||
});
|
||||
static method foo2(core::bool x) → asy::Future<core::int> /* futureValueType= core::int */ /* originally async */
|
||||
static method foo2(core::bool x) → asy::Future<core::int> /* emittedValueType= core::int */ /* originally async */
|
||||
return asy::Future::sync<core::int>(() → FutureOr<core::int> {
|
||||
if(x)
|
||||
return asy::Future::value<core::int>(asy::Future::value<core::int>(345));
|
||||
return asy::Future::value<core::int>(self::bar());
|
||||
});
|
||||
static method foo3(core::bool x) → asy::Future<core::int> /* futureValueType= core::int */ /* originally async */
|
||||
static method foo3(core::bool x) → asy::Future<core::int> /* emittedValueType= core::int */ /* originally async */
|
||||
return asy::Future::sync<core::int>(() → FutureOr<core::int> {
|
||||
if(x)
|
||||
return asy::Future::value<core::int>(234);
|
||||
|
|
|
@ -6,15 +6,15 @@ import "dart:core" as core;
|
|||
static method bar() → asy::Future<core::int> {
|
||||
return asy::Future::value<core::int>(123);
|
||||
}
|
||||
static method foo1() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo1() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
return await self::bar();
|
||||
}
|
||||
static method foo2(core::bool x) → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo2(core::bool x) → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
if(x)
|
||||
return await asy::Future::value<core::int>(345);
|
||||
return await self::bar();
|
||||
}
|
||||
static method foo3(core::bool x) → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo3(core::bool x) → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
if(x)
|
||||
return 234;
|
||||
return await asy::Future::value<core::int>(123);
|
||||
|
|
|
@ -6,15 +6,15 @@ import "dart:core" as core;
|
|||
static method bar() → asy::Future<core::int> {
|
||||
return asy::Future::value<core::int>(123);
|
||||
}
|
||||
static method foo1() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo1() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
return await self::bar();
|
||||
}
|
||||
static method foo2(core::bool x) → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo2(core::bool x) → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
if(x)
|
||||
return await asy::Future::value<core::int>(345);
|
||||
return await self::bar();
|
||||
}
|
||||
static method foo3(core::bool x) → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo3(core::bool x) → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
if(x)
|
||||
return 234;
|
||||
return await asy::Future::value<core::int>(123);
|
||||
|
|
|
@ -6,17 +6,17 @@ import "dart:core" as core;
|
|||
static method bar() → asy::Future<core::int> {
|
||||
return asy::Future::value<core::int>(123);
|
||||
}
|
||||
static method foo1() → asy::Future<core::int> /* futureValueType= core::int */ /* originally async */
|
||||
static method foo1() → asy::Future<core::int> /* emittedValueType= core::int */ /* originally async */
|
||||
return asy::Future::sync<core::int>(() → FutureOr<core::int> {
|
||||
return asy::Future::value<core::int>(self::bar());
|
||||
});
|
||||
static method foo2(core::bool x) → asy::Future<core::int> /* futureValueType= core::int */ /* originally async */
|
||||
static method foo2(core::bool x) → asy::Future<core::int> /* emittedValueType= core::int */ /* originally async */
|
||||
return asy::Future::sync<core::int>(() → FutureOr<core::int> {
|
||||
if(x)
|
||||
return asy::Future::value<core::int>(asy::Future::value<core::int>(345));
|
||||
return asy::Future::value<core::int>(self::bar());
|
||||
});
|
||||
static method foo3(core::bool x) → asy::Future<core::int> /* futureValueType= core::int */ /* originally async */
|
||||
static method foo3(core::bool x) → asy::Future<core::int> /* emittedValueType= core::int */ /* originally async */
|
||||
return asy::Future::sync<core::int>(() → FutureOr<core::int> {
|
||||
if(x)
|
||||
return asy::Future::value<core::int>(234);
|
||||
|
|
|
@ -3,7 +3,7 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
final core::int c = 3;
|
||||
return c;
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
final core::int c = 3;
|
||||
return c;
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
final core::int c = 3;
|
||||
return c;
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
final core::int c = 3;
|
||||
return c;
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
final core::int c = 3;
|
||||
return c;
|
||||
}
|
||||
|
|
|
@ -3,25 +3,25 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo1() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo1() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
final core::int c = 3;
|
||||
return c;
|
||||
}
|
||||
static method foo2() → asy::Future<void> async /* futureValueType= void */ {
|
||||
static method foo2() → asy::Future<void> async /* emittedValueType= void */ {
|
||||
final core::int c = 3;
|
||||
}
|
||||
static method foo3() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method foo3() → dynamic async /* emittedValueType= dynamic */ {
|
||||
return 234;
|
||||
}
|
||||
static method bar(() → asy::Future<core::int> func) → void {
|
||||
func(){() → asy::Future<core::int>};
|
||||
}
|
||||
static method foo4() → asy::Future<core::bool> async /* futureValueType= core::bool */ {
|
||||
static method foo4() → asy::Future<core::bool> async /* emittedValueType= core::bool */ {
|
||||
await asy::Future::value<core::int>(2);
|
||||
self::bar(() → asy::Future<core::int> async /* futureValueType= core::int */ => 3);
|
||||
self::bar(() → asy::Future<core::int> async /* emittedValueType= core::int */ => 3);
|
||||
return true;
|
||||
}
|
||||
static method foo5(core::bool x) → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo5(core::bool x) → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
if(x)
|
||||
return 123;
|
||||
return 234;
|
||||
|
|
|
@ -3,28 +3,28 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo1() → asy::Future<core::int> /* futureValueType= core::int */ /* originally async */
|
||||
static method foo1() → asy::Future<core::int> /* emittedValueType= core::int */ /* originally async */
|
||||
return asy::Future::sync<core::int>(() → FutureOr<core::int> {
|
||||
final core::int c = 3;
|
||||
return asy::Future::value<core::int>(c);
|
||||
});
|
||||
static method foo2() → asy::Future<void> /* futureValueType= void */ /* originally async */
|
||||
static method foo2() → asy::Future<void> /* emittedValueType= void */ /* originally async */
|
||||
return asy::Future::sync<void>(() → FutureOr<void>? {
|
||||
final core::int c = 3;
|
||||
});
|
||||
static method foo3() → dynamic /* futureValueType= dynamic */ /* originally async */
|
||||
static method foo3() → dynamic /* emittedValueType= dynamic */ /* originally async */
|
||||
return asy::Future::sync<dynamic>(() → FutureOr<dynamic>? {
|
||||
return asy::Future::value<dynamic>(234);
|
||||
});
|
||||
static method bar(() → asy::Future<core::int> func) → void {
|
||||
func(){() → asy::Future<core::int>};
|
||||
}
|
||||
static method foo4() → asy::Future<core::bool> async /* futureValueType= core::bool */ {
|
||||
static method foo4() → asy::Future<core::bool> async /* emittedValueType= core::bool */ {
|
||||
await asy::Future::value<core::int>(2);
|
||||
self::bar(() → asy::Future<core::int> /* futureValueType= core::int */ /* originally async */ => asy::Future::sync<core::int>(() → FutureOr<core::int> => asy::Future::value<core::int>(3)));
|
||||
self::bar(() → asy::Future<core::int> /* emittedValueType= core::int */ /* originally async */ => asy::Future::sync<core::int>(() → FutureOr<core::int> => asy::Future::value<core::int>(3)));
|
||||
return true;
|
||||
}
|
||||
static method foo5(core::bool x) → asy::Future<core::int> /* futureValueType= core::int */ /* originally async */
|
||||
static method foo5(core::bool x) → asy::Future<core::int> /* emittedValueType= core::int */ /* originally async */
|
||||
return asy::Future::sync<core::int>(() → FutureOr<core::int> {
|
||||
if(x)
|
||||
return asy::Future::value<core::int>(123);
|
||||
|
|
|
@ -3,25 +3,25 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo1() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo1() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
final core::int c = 3;
|
||||
return c;
|
||||
}
|
||||
static method foo2() → asy::Future<void> async /* futureValueType= void */ {
|
||||
static method foo2() → asy::Future<void> async /* emittedValueType= void */ {
|
||||
final core::int c = 3;
|
||||
}
|
||||
static method foo3() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method foo3() → dynamic async /* emittedValueType= dynamic */ {
|
||||
return 234;
|
||||
}
|
||||
static method bar(() → asy::Future<core::int> func) → void {
|
||||
func(){() → asy::Future<core::int>};
|
||||
}
|
||||
static method foo4() → asy::Future<core::bool> async /* futureValueType= core::bool */ {
|
||||
static method foo4() → asy::Future<core::bool> async /* emittedValueType= core::bool */ {
|
||||
await asy::Future::value<core::int>(2);
|
||||
self::bar(() → asy::Future<core::int> async /* futureValueType= core::int */ => 3);
|
||||
self::bar(() → asy::Future<core::int> async /* emittedValueType= core::int */ => 3);
|
||||
return true;
|
||||
}
|
||||
static method foo5(core::bool x) → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo5(core::bool x) → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
if(x)
|
||||
return 123;
|
||||
return 234;
|
||||
|
|
|
@ -3,25 +3,25 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo1() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo1() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
final core::int c = 3;
|
||||
return c;
|
||||
}
|
||||
static method foo2() → asy::Future<void> async /* futureValueType= void */ {
|
||||
static method foo2() → asy::Future<void> async /* emittedValueType= void */ {
|
||||
final core::int c = 3;
|
||||
}
|
||||
static method foo3() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method foo3() → dynamic async /* emittedValueType= dynamic */ {
|
||||
return 234;
|
||||
}
|
||||
static method bar(() → asy::Future<core::int> func) → void {
|
||||
func(){() → asy::Future<core::int>};
|
||||
}
|
||||
static method foo4() → asy::Future<core::bool> async /* futureValueType= core::bool */ {
|
||||
static method foo4() → asy::Future<core::bool> async /* emittedValueType= core::bool */ {
|
||||
await asy::Future::value<core::int>(2);
|
||||
self::bar(() → asy::Future<core::int> async /* futureValueType= core::int */ => 3);
|
||||
self::bar(() → asy::Future<core::int> async /* emittedValueType= core::int */ => 3);
|
||||
return true;
|
||||
}
|
||||
static method foo5(core::bool x) → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo5(core::bool x) → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
if(x)
|
||||
return 123;
|
||||
return 234;
|
||||
|
|
|
@ -3,28 +3,28 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo1() → asy::Future<core::int> /* futureValueType= core::int */ /* originally async */
|
||||
static method foo1() → asy::Future<core::int> /* emittedValueType= core::int */ /* originally async */
|
||||
return asy::Future::sync<core::int>(() → FutureOr<core::int> {
|
||||
final core::int c = 3;
|
||||
return asy::Future::value<core::int>(c);
|
||||
});
|
||||
static method foo2() → asy::Future<void> /* futureValueType= void */ /* originally async */
|
||||
static method foo2() → asy::Future<void> /* emittedValueType= void */ /* originally async */
|
||||
return asy::Future::sync<void>(() → FutureOr<void>? {
|
||||
final core::int c = 3;
|
||||
});
|
||||
static method foo3() → dynamic /* futureValueType= dynamic */ /* originally async */
|
||||
static method foo3() → dynamic /* emittedValueType= dynamic */ /* originally async */
|
||||
return asy::Future::sync<dynamic>(() → FutureOr<dynamic>? {
|
||||
return asy::Future::value<dynamic>(234);
|
||||
});
|
||||
static method bar(() → asy::Future<core::int> func) → void {
|
||||
func(){() → asy::Future<core::int>};
|
||||
}
|
||||
static method foo4() → asy::Future<core::bool> async /* futureValueType= core::bool */ {
|
||||
static method foo4() → asy::Future<core::bool> async /* emittedValueType= core::bool */ {
|
||||
await asy::Future::value<core::int>(2);
|
||||
self::bar(() → asy::Future<core::int> /* futureValueType= core::int */ /* originally async */ => asy::Future::sync<core::int>(() → FutureOr<core::int> => asy::Future::value<core::int>(3)));
|
||||
self::bar(() → asy::Future<core::int> /* emittedValueType= core::int */ /* originally async */ => asy::Future::sync<core::int>(() → FutureOr<core::int> => asy::Future::value<core::int>(3)));
|
||||
return true;
|
||||
}
|
||||
static method foo5(core::bool x) → asy::Future<core::int> /* futureValueType= core::int */ /* originally async */
|
||||
static method foo5(core::bool x) → asy::Future<core::int> /* emittedValueType= core::int */ /* originally async */
|
||||
return asy::Future::sync<core::int>(() → FutureOr<core::int> {
|
||||
if(x)
|
||||
return asy::Future::value<core::int>(123);
|
||||
|
|
|
@ -3,19 +3,19 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo1() → asy::Future<void> async /* futureValueType= void */ {
|
||||
static method foo1() → asy::Future<void> async /* emittedValueType= void */ {
|
||||
await 6 /* runtimeCheckType= asy::Future<core::int> */ ;
|
||||
}
|
||||
static method foo2() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo2() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
return (await 6 /* runtimeCheckType= asy::Future<core::int> */ ).{core::num::+}(3){(core::num) → core::int};
|
||||
}
|
||||
static method foo3() → asy::Future<void> async /* futureValueType= void */ {
|
||||
static method foo3() → asy::Future<void> async /* emittedValueType= void */ {
|
||||
#L1:
|
||||
await for (final dynamic x in new asy::_EmptyStream::•<dynamic>()) {
|
||||
break #L1;
|
||||
}
|
||||
}
|
||||
static method foo4() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo4() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
try {
|
||||
return 3;
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ static method foo4() → asy::Future<core::int> async /* futureValueType= core::
|
|||
return 2;
|
||||
}
|
||||
}
|
||||
static method foo5() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo5() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
try {
|
||||
return 3;
|
||||
}
|
||||
|
|
|
@ -3,19 +3,19 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo1() → asy::Future<void> async /* futureValueType= void */ {
|
||||
static method foo1() → asy::Future<void> async /* emittedValueType= void */ {
|
||||
await asy::_wrapAwaitedExpression<core::int>(6);
|
||||
}
|
||||
static method foo2() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo2() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
return (await asy::_wrapAwaitedExpression<core::int>(6)).{core::num::+}(3){(core::num) → core::int};
|
||||
}
|
||||
static method foo3() → asy::Future<void> async /* futureValueType= void */ {
|
||||
static method foo3() → asy::Future<void> async /* emittedValueType= void */ {
|
||||
#L1:
|
||||
await for (final dynamic x in new asy::_EmptyStream::•<dynamic>()) {
|
||||
break #L1;
|
||||
}
|
||||
}
|
||||
static method foo4() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo4() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
try {
|
||||
return 3;
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ static method foo4() → asy::Future<core::int> async /* futureValueType= core::
|
|||
return 2;
|
||||
}
|
||||
}
|
||||
static method foo5() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo5() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
try {
|
||||
return 3;
|
||||
}
|
||||
|
|
|
@ -3,19 +3,19 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo1() → asy::Future<void> async /* futureValueType= void */ {
|
||||
static method foo1() → asy::Future<void> async /* emittedValueType= void */ {
|
||||
await 6 /* runtimeCheckType= asy::Future<core::int> */ ;
|
||||
}
|
||||
static method foo2() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo2() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
return (await 6 /* runtimeCheckType= asy::Future<core::int> */ ).{core::num::+}(3){(core::num) → core::int};
|
||||
}
|
||||
static method foo3() → asy::Future<void> async /* futureValueType= void */ {
|
||||
static method foo3() → asy::Future<void> async /* emittedValueType= void */ {
|
||||
#L1:
|
||||
await for (final dynamic x in new asy::_EmptyStream::•<dynamic>()) {
|
||||
break #L1;
|
||||
}
|
||||
}
|
||||
static method foo4() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo4() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
try {
|
||||
return 3;
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ static method foo4() → asy::Future<core::int> async /* futureValueType= core::
|
|||
return 2;
|
||||
}
|
||||
}
|
||||
static method foo5() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo5() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
try {
|
||||
return 3;
|
||||
}
|
||||
|
|
|
@ -3,19 +3,19 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo1() → asy::Future<void> async /* futureValueType= void */ {
|
||||
static method foo1() → asy::Future<void> async /* emittedValueType= void */ {
|
||||
await 6 /* runtimeCheckType= asy::Future<core::int> */ ;
|
||||
}
|
||||
static method foo2() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo2() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
return (await 6 /* runtimeCheckType= asy::Future<core::int> */ ).{core::num::+}(3){(core::num) → core::int};
|
||||
}
|
||||
static method foo3() → asy::Future<void> async /* futureValueType= void */ {
|
||||
static method foo3() → asy::Future<void> async /* emittedValueType= void */ {
|
||||
#L1:
|
||||
await for (final dynamic x in new asy::_EmptyStream::•<dynamic>()) {
|
||||
break #L1;
|
||||
}
|
||||
}
|
||||
static method foo4() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo4() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
try {
|
||||
return 3;
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ static method foo4() → asy::Future<core::int> async /* futureValueType= core::
|
|||
return 2;
|
||||
}
|
||||
}
|
||||
static method foo5() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo5() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
try {
|
||||
return 3;
|
||||
}
|
||||
|
|
|
@ -3,19 +3,19 @@ import self as self;
|
|||
import "dart:async" as asy;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method foo1() → asy::Future<void> async /* futureValueType= void */ {
|
||||
static method foo1() → asy::Future<void> async /* emittedValueType= void */ {
|
||||
await asy::_wrapAwaitedExpression<core::int>(6);
|
||||
}
|
||||
static method foo2() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo2() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
return (await asy::_wrapAwaitedExpression<core::int>(6)).{core::num::+}(3){(core::num) → core::int};
|
||||
}
|
||||
static method foo3() → asy::Future<void> async /* futureValueType= void */ {
|
||||
static method foo3() → asy::Future<void> async /* emittedValueType= void */ {
|
||||
#L1:
|
||||
await for (final dynamic x in new asy::_EmptyStream::•<dynamic>()) {
|
||||
break #L1;
|
||||
}
|
||||
}
|
||||
static method foo4() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo4() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
try {
|
||||
return 3;
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ static method foo4() → asy::Future<core::int> async /* futureValueType= core::
|
|||
return 2;
|
||||
}
|
||||
}
|
||||
static method foo5() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
static method foo5() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
try {
|
||||
return 3;
|
||||
}
|
||||
|
|
|
@ -8,7 +8,7 @@ static method method(core::Iterable<core::int> iterable) → dynamic {
|
|||
core::print(i);
|
||||
}
|
||||
}
|
||||
static method asyncMethod(asy::Stream<core::int> stream) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method asyncMethod(asy::Stream<core::int> stream) → dynamic async /* emittedValueType= dynamic */ {
|
||||
await for (core::int i in stream) {
|
||||
core::print(i);
|
||||
}
|
||||
|
|
|
@ -14,7 +14,7 @@ static method method(core::Iterable<core::int> iterable) → dynamic {
|
|||
}
|
||||
}
|
||||
}
|
||||
static method asyncMethod(asy::Stream<core::int> stream) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method asyncMethod(asy::Stream<core::int> stream) → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::bool :async_temporary_0;
|
||||
dynamic :async_temporary_1;
|
||||
{
|
||||
|
|
|
@ -8,14 +8,14 @@ import "dart:typed_data";
|
|||
|
||||
static method getBinaryTestProto() → asy::Future<typ::Uint8List>
|
||||
return self::readFileWeb("test.binary.pb");
|
||||
static method readFileWeb(core::String path) → asy::Future<typ::Uint8List> async /* futureValueType= typ::Uint8List */ {
|
||||
static method readFileWeb(core::String path) → asy::Future<typ::Uint8List> async /* emittedValueType= typ::Uint8List */ {
|
||||
throw "";
|
||||
}
|
||||
static method runBench([typ::Uint8List? data = #C1]) → void async /* futureValueType= void */ {
|
||||
static method runBench([typ::Uint8List? data = #C1]) → void async /* emittedValueType= void */ {
|
||||
data == null ?{typ::Uint8List?} data = await self::getBinaryTestProto() : null;
|
||||
core::print(data{typ::Uint8List});
|
||||
}
|
||||
static method main() → void async /* futureValueType= void */ {
|
||||
static method main() → void async /* emittedValueType= void */ {
|
||||
typ::Uint8List data = await self::getBinaryTestProto();
|
||||
core::print("File successfully read, contents: ${data}");
|
||||
self::runBench(data);
|
||||
|
|
|
@ -8,10 +8,10 @@ import "dart:typed_data";
|
|||
|
||||
static method getBinaryTestProto() → asy::Future<typ::Uint8List>
|
||||
return self::readFileWeb("test.binary.pb");
|
||||
static method readFileWeb(core::String path) → asy::Future<typ::Uint8List> async /* futureValueType= typ::Uint8List */ {
|
||||
static method readFileWeb(core::String path) → asy::Future<typ::Uint8List> async /* emittedValueType= typ::Uint8List */ {
|
||||
throw "";
|
||||
}
|
||||
static method runBench([typ::Uint8List? data = #C1]) → void async /* futureValueType= void */ {
|
||||
static method runBench([typ::Uint8List? data = #C1]) → void async /* emittedValueType= void */ {
|
||||
typ::Uint8List :async_temporary_0;
|
||||
typ::Uint8List? :async_temporary_1;
|
||||
if(data == null) {
|
||||
|
@ -24,7 +24,7 @@ static method runBench([typ::Uint8List? data = #C1]) → void async /* futureVal
|
|||
:async_temporary_1 as{ForLegacy} dynamic;
|
||||
core::print(data{typ::Uint8List});
|
||||
}
|
||||
static method main() → void async /* futureValueType= void */ {
|
||||
static method main() → void async /* emittedValueType= void */ {
|
||||
typ::Uint8List :async_temporary_0;
|
||||
:async_temporary_0 = await self::getBinaryTestProto();
|
||||
typ::Uint8List data = :async_temporary_0 as{ForLegacy} dynamic;
|
||||
|
|
|
@ -3,12 +3,12 @@ import self as self;
|
|||
import "dart:core" as core;
|
||||
import "dart:async" as asy;
|
||||
|
||||
static method method(core::Iterable<core::int> iterable) → core::Iterable<core::int> sync* {
|
||||
static method method(core::Iterable<core::int> iterable) → core::Iterable<core::int> sync* /* emittedValueType= core::int */ {
|
||||
yield 1;
|
||||
yield 2;
|
||||
yield* iterable;
|
||||
}
|
||||
static method asyncMethod(asy::Stream<core::int> stream) → asy::Stream<core::int> async* {
|
||||
static method asyncMethod(asy::Stream<core::int> stream) → asy::Stream<core::int> async* /* emittedValueType= core::int */ {
|
||||
yield 1;
|
||||
yield 2;
|
||||
yield* stream;
|
||||
|
|
|
@ -3,14 +3,14 @@ import self as self;
|
|||
import "dart:core" as core;
|
||||
import "dart:async" as asy;
|
||||
|
||||
static method method(core::Iterable<core::int> iterable) → core::Iterable<core::int> sync* {
|
||||
static method method(core::Iterable<core::int> iterable) → core::Iterable<core::int> sync* /* emittedValueType= core::int */ {
|
||||
yield 1;
|
||||
yield 2;
|
||||
yield* iterable;
|
||||
}
|
||||
static method asyncMethod(asy::Stream<core::int> stream) → asy::Stream<core::int> {
|
||||
synthesized asy::StreamController<core::Object?> #controller = asy::StreamController::•<core::Object?>();
|
||||
synthesized () → asy::Future<void> #body = () → asy::Future<void> async /* futureValueType= void */ {
|
||||
synthesized () → asy::Future<void> #body = () → asy::Future<void> async /* emittedValueType= void */ {
|
||||
core::bool :async_temporary_0;
|
||||
core::bool :async_temporary_1;
|
||||
core::bool :async_temporary_2;
|
||||
|
@ -96,7 +96,7 @@ static method asyncMethod(asy::Stream<core::int> stream) → asy::Stream<core::i
|
|||
synthesized core::bool #isFirst = #C2;
|
||||
synthesized core::bool #isEven = #C1;
|
||||
#controller.{asy::StreamController::add}(#C3){(core::Object?) → void};
|
||||
return #controller.{asy::StreamController::stream}{asy::Stream<core::Object?>}.{asy::Stream::asyncMap}<core::Object?>((synthesized core::Object? value) → FutureOr<core::Object?> async /* futureValueType= core::Object? */ {
|
||||
return #controller.{asy::StreamController::stream}{asy::Stream<core::Object?>}.{asy::Stream::asyncMap}<core::Object?>((synthesized core::Object? value) → FutureOr<core::Object?> async /* emittedValueType= core::Object? */ {
|
||||
if(#isFirst) {
|
||||
#body(){() → asy::Future<void>};
|
||||
return #C3;
|
||||
|
|
|
@ -25,7 +25,7 @@ static extension-type-member method V2|constructor#<T extends asy::Future<core::
|
|||
}
|
||||
static extension-type-member method V2|constructor#_#new#tearOff<T extends asy::Future<core::Object>>(self::V2|constructor#_#new#tearOff::T id) → self::V2<self::V2|constructor#_#new#tearOff::T> /* = self::V2|constructor#_#new#tearOff::T */
|
||||
return self::V2|constructor#<self::V2|constructor#_#new#tearOff::T>(id);
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
self::V1 /* = asy::Future<core::int> */ v1 = self::V1|constructor#(asy::Future::value<core::int>(42));
|
||||
core::int _v1 = await v1;
|
||||
self::expect(42, _v1);
|
||||
|
|
|
@ -25,7 +25,7 @@ static extension-type-member method V2|constructor#<T extends asy::Future<core::
|
|||
}
|
||||
static extension-type-member method V2|constructor#_#new#tearOff<T extends asy::Future<core::Object>>(self::V2|constructor#_#new#tearOff::T id) → self::V2<self::V2|constructor#_#new#tearOff::T> /* = self::V2|constructor#_#new#tearOff::T */
|
||||
return self::V2|constructor#<self::V2|constructor#_#new#tearOff::T>(id);
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
self::V1 /* = asy::Future<core::int> */ v1 = self::V1|constructor#(asy::Future::value<core::int>(42));
|
||||
core::int _v1 = await v1;
|
||||
self::expect(42, _v1);
|
||||
|
|
|
@ -25,7 +25,7 @@ static extension-type-member method V2|constructor#<T extends asy::Future<core::
|
|||
}
|
||||
static extension-type-member method V2|constructor#_#new#tearOff<T extends asy::Future<core::Object>>(self::V2|constructor#_#new#tearOff::T id) → self::V2<self::V2|constructor#_#new#tearOff::T> /* = self::V2|constructor#_#new#tearOff::T */
|
||||
return self::V2|constructor#<self::V2|constructor#_#new#tearOff::T>(id);
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
self::V1 /* = asy::Future<core::int> */ v1 = self::V1|constructor#(asy::Future::value<core::int>(42));
|
||||
core::int _v1 = await v1;
|
||||
self::expect(42, _v1);
|
||||
|
|
|
@ -25,7 +25,7 @@ static extension-type-member method V2|constructor#<T extends asy::Future<core::
|
|||
}
|
||||
static extension-type-member method V2|constructor#_#new#tearOff<T extends asy::Future<core::Object>>(self::V2|constructor#_#new#tearOff::T id) → self::V2<self::V2|constructor#_#new#tearOff::T> /* = self::V2|constructor#_#new#tearOff::T */
|
||||
return self::V2|constructor#<self::V2|constructor#_#new#tearOff::T>(id);
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
self::V1 /* = asy::Future<core::int> */ v1 = self::V1|constructor#(asy::Future::value<core::int>(42));
|
||||
core::int _v1 = await v1;
|
||||
self::expect(42, _v1);
|
||||
|
|
|
@ -25,7 +25,7 @@ static extension-type-member method V2|constructor#<T extends asy::Future<core::
|
|||
}
|
||||
static extension-type-member method V2|constructor#_#new#tearOff<T extends asy::Future<core::Object>>(self::V2|constructor#_#new#tearOff::T id) → self::V2<self::V2|constructor#_#new#tearOff::T> /* = self::V2|constructor#_#new#tearOff::T */
|
||||
return self::V2|constructor#<self::V2|constructor#_#new#tearOff::T>(id);
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
self::V1 /* = asy::Future<core::int> */ v1 = self::V1|constructor#(asy::Future::value<core::int>(42));
|
||||
core::int _v1 = await v1;
|
||||
self::expect(42, _v1);
|
||||
|
|
|
@ -131,7 +131,7 @@ static extension-type-member method F4|constructor#<X extends asy::Future<core::
|
|||
}
|
||||
static extension-type-member method F4|constructor#_#new#tearOff<X extends asy::Future<core::num>>(self::F4|constructor#_#new#tearOff::X foo) → self::F4<self::F4|constructor#_#new#tearOff::X> /* = self::F4|constructor#_#new#tearOff::X */
|
||||
return self::F4|constructor#<self::F4|constructor#_#new#tearOff::X>(foo);
|
||||
static method test(self::E1 /* = asy::Future<core::int> */ e1, self::E2<asy::Future<core::String>> /* = asy::Future<core::String> */ e2, self::E3 /* = FutureOr<core::bool>*/ e3, self::E4<asy::Future<core::double>> /* = asy::Future<core::double> */ e4, self::E5<core::Object> /* = core::Object */ e5object, self::E5<asy::Future<core::num>> /* = asy::Future<core::num> */ e5future, self::F1 /* = asy::Future<core::int> */ f1, self::F2<asy::Future<core::num>> /* = asy::Future<core::num> */ f2, self::F3<asy::Future<core::String>> /* = asy::Future<core::String> */ f3, self::F4<asy::Future<core::int>> /* = asy::Future<core::int> */ f4) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method test(self::E1 /* = asy::Future<core::int> */ e1, self::E2<asy::Future<core::String>> /* = asy::Future<core::String> */ e2, self::E3 /* = FutureOr<core::bool>*/ e3, self::E4<asy::Future<core::double>> /* = asy::Future<core::double> */ e4, self::E5<core::Object> /* = core::Object */ e5object, self::E5<asy::Future<core::num>> /* = asy::Future<core::num> */ e5future, self::F1 /* = asy::Future<core::int> */ f1, self::F2<asy::Future<core::num>> /* = asy::Future<core::num> */ f2, self::F3<asy::Future<core::String>> /* = asy::Future<core::String> */ f3, self::F4<asy::Future<core::int>> /* = asy::Future<core::int> */ f4) → dynamic async /* emittedValueType= dynamic */ {
|
||||
await invalid-expression "pkg/front_end/testcases/extension_types/issue53207.dart:21:9: Error: The 'await' expression can't be used for an expression with an extension type that is not a subtype of 'Future'.
|
||||
await e1; // Error.
|
||||
^" in e1 /* runtimeCheckType= asy::Future<self::E1 /* = asy::Future<core::int> */> */ ;
|
||||
|
|
|
@ -131,7 +131,7 @@ static extension-type-member method F4|constructor#<X extends asy::Future<core::
|
|||
}
|
||||
static extension-type-member method F4|constructor#_#new#tearOff<X extends asy::Future<core::num>>(self::F4|constructor#_#new#tearOff::X foo) → self::F4<self::F4|constructor#_#new#tearOff::X> /* = self::F4|constructor#_#new#tearOff::X */
|
||||
return self::F4|constructor#<self::F4|constructor#_#new#tearOff::X>(foo);
|
||||
static method test(self::E1 /* = asy::Future<core::int> */ e1, self::E2<asy::Future<core::String>> /* = asy::Future<core::String> */ e2, self::E3 /* = FutureOr<core::bool>*/ e3, self::E4<asy::Future<core::double>> /* = asy::Future<core::double> */ e4, self::E5<core::Object> /* = core::Object */ e5object, self::E5<asy::Future<core::num>> /* = asy::Future<core::num> */ e5future, self::F1 /* = asy::Future<core::int> */ f1, self::F2<asy::Future<core::num>> /* = asy::Future<core::num> */ f2, self::F3<asy::Future<core::String>> /* = asy::Future<core::String> */ f3, self::F4<asy::Future<core::int>> /* = asy::Future<core::int> */ f4) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method test(self::E1 /* = asy::Future<core::int> */ e1, self::E2<asy::Future<core::String>> /* = asy::Future<core::String> */ e2, self::E3 /* = FutureOr<core::bool>*/ e3, self::E4<asy::Future<core::double>> /* = asy::Future<core::double> */ e4, self::E5<core::Object> /* = core::Object */ e5object, self::E5<asy::Future<core::num>> /* = asy::Future<core::num> */ e5future, self::F1 /* = asy::Future<core::int> */ f1, self::F2<asy::Future<core::num>> /* = asy::Future<core::num> */ f2, self::F3<asy::Future<core::String>> /* = asy::Future<core::String> */ f3, self::F4<asy::Future<core::int>> /* = asy::Future<core::int> */ f4) → dynamic async /* emittedValueType= dynamic */ {
|
||||
await invalid-expression "pkg/front_end/testcases/extension_types/issue53207.dart:21:9: Error: The 'await' expression can't be used for an expression with an extension type that is not a subtype of 'Future'.
|
||||
await e1; // Error.
|
||||
^" in e1 /* runtimeCheckType= asy::Future<self::E1 /* = asy::Future<core::int> */> */ ;
|
||||
|
|
|
@ -131,7 +131,7 @@ static extension-type-member method F4|constructor#<X extends asy::Future<core::
|
|||
}
|
||||
static extension-type-member method F4|constructor#_#new#tearOff<X extends asy::Future<core::num>>(self::F4|constructor#_#new#tearOff::X foo) → self::F4<self::F4|constructor#_#new#tearOff::X> /* = self::F4|constructor#_#new#tearOff::X */
|
||||
return self::F4|constructor#<self::F4|constructor#_#new#tearOff::X>(foo);
|
||||
static method test(self::E1 /* = asy::Future<core::int> */ e1, self::E2<asy::Future<core::String>> /* = asy::Future<core::String> */ e2, self::E3 /* = FutureOr<core::bool>*/ e3, self::E4<asy::Future<core::double>> /* = asy::Future<core::double> */ e4, self::E5<core::Object> /* = core::Object */ e5object, self::E5<asy::Future<core::num>> /* = asy::Future<core::num> */ e5future, self::F1 /* = asy::Future<core::int> */ f1, self::F2<asy::Future<core::num>> /* = asy::Future<core::num> */ f2, self::F3<asy::Future<core::String>> /* = asy::Future<core::String> */ f3, self::F4<asy::Future<core::int>> /* = asy::Future<core::int> */ f4) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method test(self::E1 /* = asy::Future<core::int> */ e1, self::E2<asy::Future<core::String>> /* = asy::Future<core::String> */ e2, self::E3 /* = FutureOr<core::bool>*/ e3, self::E4<asy::Future<core::double>> /* = asy::Future<core::double> */ e4, self::E5<core::Object> /* = core::Object */ e5object, self::E5<asy::Future<core::num>> /* = asy::Future<core::num> */ e5future, self::F1 /* = asy::Future<core::int> */ f1, self::F2<asy::Future<core::num>> /* = asy::Future<core::num> */ f2, self::F3<asy::Future<core::String>> /* = asy::Future<core::String> */ f3, self::F4<asy::Future<core::int>> /* = asy::Future<core::int> */ f4) → dynamic async /* emittedValueType= dynamic */ {
|
||||
await invalid-expression "pkg/front_end/testcases/extension_types/issue53207.dart:21:9: Error: The 'await' expression can't be used for an expression with an extension type that is not a subtype of 'Future'.
|
||||
await e1; // Error.
|
||||
^" in e1 /* runtimeCheckType= asy::Future<self::E1 /* = asy::Future<core::int> */> */ ;
|
||||
|
|
|
@ -131,7 +131,7 @@ static extension-type-member method F4|constructor#<X extends asy::Future<core::
|
|||
}
|
||||
static extension-type-member method F4|constructor#_#new#tearOff<X extends asy::Future<core::num>>(self::F4|constructor#_#new#tearOff::X foo) → self::F4<self::F4|constructor#_#new#tearOff::X> /* = self::F4|constructor#_#new#tearOff::X */
|
||||
return self::F4|constructor#<self::F4|constructor#_#new#tearOff::X>(foo);
|
||||
static method test(self::E1 /* = asy::Future<core::int> */ e1, self::E2<asy::Future<core::String>> /* = asy::Future<core::String> */ e2, self::E3 /* = FutureOr<core::bool>*/ e3, self::E4<asy::Future<core::double>> /* = asy::Future<core::double> */ e4, self::E5<core::Object> /* = core::Object */ e5object, self::E5<asy::Future<core::num>> /* = asy::Future<core::num> */ e5future, self::F1 /* = asy::Future<core::int> */ f1, self::F2<asy::Future<core::num>> /* = asy::Future<core::num> */ f2, self::F3<asy::Future<core::String>> /* = asy::Future<core::String> */ f3, self::F4<asy::Future<core::int>> /* = asy::Future<core::int> */ f4) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method test(self::E1 /* = asy::Future<core::int> */ e1, self::E2<asy::Future<core::String>> /* = asy::Future<core::String> */ e2, self::E3 /* = FutureOr<core::bool>*/ e3, self::E4<asy::Future<core::double>> /* = asy::Future<core::double> */ e4, self::E5<core::Object> /* = core::Object */ e5object, self::E5<asy::Future<core::num>> /* = asy::Future<core::num> */ e5future, self::F1 /* = asy::Future<core::int> */ f1, self::F2<asy::Future<core::num>> /* = asy::Future<core::num> */ f2, self::F3<asy::Future<core::String>> /* = asy::Future<core::String> */ f3, self::F4<asy::Future<core::int>> /* = asy::Future<core::int> */ f4) → dynamic async /* emittedValueType= dynamic */ {
|
||||
await invalid-expression "pkg/front_end/testcases/extension_types/issue53207.dart:21:9: Error: The 'await' expression can't be used for an expression with an extension type that is not a subtype of 'Future'.
|
||||
await e1; // Error.
|
||||
^" in e1 /* runtimeCheckType= asy::Future<self::E1 /* = asy::Future<core::int> */> */ ;
|
||||
|
|
|
@ -131,7 +131,7 @@ static extension-type-member method F4|constructor#<X extends asy::Future<core::
|
|||
}
|
||||
static extension-type-member method F4|constructor#_#new#tearOff<X extends asy::Future<core::num>>(self::F4|constructor#_#new#tearOff::X foo) → self::F4<self::F4|constructor#_#new#tearOff::X> /* = self::F4|constructor#_#new#tearOff::X */
|
||||
return self::F4|constructor#<self::F4|constructor#_#new#tearOff::X>(foo);
|
||||
static method test(self::E1 /* = asy::Future<core::int> */ e1, self::E2<asy::Future<core::String>> /* = asy::Future<core::String> */ e2, self::E3 /* = FutureOr<core::bool>*/ e3, self::E4<asy::Future<core::double>> /* = asy::Future<core::double> */ e4, self::E5<core::Object> /* = core::Object */ e5object, self::E5<asy::Future<core::num>> /* = asy::Future<core::num> */ e5future, self::F1 /* = asy::Future<core::int> */ f1, self::F2<asy::Future<core::num>> /* = asy::Future<core::num> */ f2, self::F3<asy::Future<core::String>> /* = asy::Future<core::String> */ f3, self::F4<asy::Future<core::int>> /* = asy::Future<core::int> */ f4) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method test(self::E1 /* = asy::Future<core::int> */ e1, self::E2<asy::Future<core::String>> /* = asy::Future<core::String> */ e2, self::E3 /* = FutureOr<core::bool>*/ e3, self::E4<asy::Future<core::double>> /* = asy::Future<core::double> */ e4, self::E5<core::Object> /* = core::Object */ e5object, self::E5<asy::Future<core::num>> /* = asy::Future<core::num> */ e5future, self::F1 /* = asy::Future<core::int> */ f1, self::F2<asy::Future<core::num>> /* = asy::Future<core::num> */ f2, self::F3<asy::Future<core::String>> /* = asy::Future<core::String> */ f3, self::F4<asy::Future<core::int>> /* = asy::Future<core::int> */ f4) → dynamic async /* emittedValueType= dynamic */ {
|
||||
await invalid-expression "pkg/front_end/testcases/extension_types/issue53207.dart:21:9: Error: The 'await' expression can't be used for an expression with an extension type that is not a subtype of 'Future'.
|
||||
await e1; // Error.
|
||||
^" in e1 /* runtimeCheckType= asy::Future<self::E1 /* = asy::Future<core::int> */> */ ;
|
||||
|
|
|
@ -27,13 +27,13 @@ static extension-type-member method MyStream|constructor#<T extends core::Object
|
|||
}
|
||||
static extension-type-member method MyStream|constructor#_#new#tearOff<T extends core::Object? = dynamic>(asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> it) → self::MyStream<self::MyStream|constructor#_#new#tearOff::T%> /* = asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> */
|
||||
return self::MyStream|constructor#<self::MyStream|constructor#_#new#tearOff::T%>(it);
|
||||
static method method1(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::int> /* = asy::Stream<core::int> */ stream) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method method1(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::int> /* = asy::Stream<core::int> */ stream) → dynamic async /* emittedValueType= dynamic */ {
|
||||
for (core::int a in list) {
|
||||
}
|
||||
await for (core::int a in stream) {
|
||||
}
|
||||
}
|
||||
static method method2(self::MyList<(core::int, core::String)> /* = core::List<(core::int, core::String)> */ list, self::MyStream<(core::int, core::String)> /* = asy::Stream<(core::int, core::String)> */ stream) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method method2(self::MyList<(core::int, core::String)> /* = core::List<(core::int, core::String)> */ list, self::MyStream<(core::int, core::String)> /* = asy::Stream<(core::int, core::String)> */ stream) → dynamic async /* emittedValueType= dynamic */ {
|
||||
for (final(core::int, core::String) #t1 in list) {
|
||||
hoisted core::int a;
|
||||
hoisted core::String b;
|
||||
|
|
|
@ -27,7 +27,7 @@ static extension-type-member method MyStream|constructor#<T extends core::Object
|
|||
}
|
||||
static extension-type-member method MyStream|constructor#_#new#tearOff<T extends core::Object? = dynamic>(asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> it) → self::MyStream<self::MyStream|constructor#_#new#tearOff::T%> /* = asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> */
|
||||
return self::MyStream|constructor#<self::MyStream|constructor#_#new#tearOff::T%>(it);
|
||||
static method method1(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::int> /* = asy::Stream<core::int> */ stream) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method method1(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::int> /* = asy::Stream<core::int> */ stream) → dynamic async /* emittedValueType= dynamic */ {
|
||||
{
|
||||
synthesized core::Iterator<core::int> :sync-for-iterator = list.{core::Iterable::iterator}{core::Iterator<core::int>};
|
||||
for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) {
|
||||
|
@ -48,7 +48,7 @@ static method method1(self::MyList<core::int> /* = core::List<core::int> */ list
|
|||
await :for-iterator.{asy::_StreamIterator::cancel}(){() → asy::Future<dynamic>};
|
||||
}
|
||||
}
|
||||
static method method2(self::MyList<(core::int, core::String)> /* = core::List<(core::int, core::String)> */ list, self::MyStream<(core::int, core::String)> /* = asy::Stream<(core::int, core::String)> */ stream) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method method2(self::MyList<(core::int, core::String)> /* = core::List<(core::int, core::String)> */ list, self::MyStream<(core::int, core::String)> /* = asy::Stream<(core::int, core::String)> */ stream) → dynamic async /* emittedValueType= dynamic */ {
|
||||
{
|
||||
synthesized core::Iterator<(core::int, core::String)> :sync-for-iterator = list.{core::Iterable::iterator}{core::Iterator<(core::int, core::String)>};
|
||||
for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) {
|
||||
|
|
|
@ -27,13 +27,13 @@ static extension-type-member method MyStream|constructor#<T extends core::Object
|
|||
}
|
||||
static extension-type-member method MyStream|constructor#_#new#tearOff<T extends core::Object? = dynamic>(asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> it) → self::MyStream<self::MyStream|constructor#_#new#tearOff::T%> /* = asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> */
|
||||
return self::MyStream|constructor#<self::MyStream|constructor#_#new#tearOff::T%>(it);
|
||||
static method method1(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::int> /* = asy::Stream<core::int> */ stream) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method method1(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::int> /* = asy::Stream<core::int> */ stream) → dynamic async /* emittedValueType= dynamic */ {
|
||||
for (core::int a in list) {
|
||||
}
|
||||
await for (core::int a in stream) {
|
||||
}
|
||||
}
|
||||
static method method2(self::MyList<(core::int, core::String)> /* = core::List<(core::int, core::String)> */ list, self::MyStream<(core::int, core::String)> /* = asy::Stream<(core::int, core::String)> */ stream) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method method2(self::MyList<(core::int, core::String)> /* = core::List<(core::int, core::String)> */ list, self::MyStream<(core::int, core::String)> /* = asy::Stream<(core::int, core::String)> */ stream) → dynamic async /* emittedValueType= dynamic */ {
|
||||
for (final(core::int, core::String) #t1 in list) {
|
||||
hoisted core::int a;
|
||||
hoisted core::String b;
|
||||
|
|
|
@ -27,13 +27,13 @@ static extension-type-member method MyStream|constructor#<T extends core::Object
|
|||
}
|
||||
static extension-type-member method MyStream|constructor#_#new#tearOff<T extends core::Object? = dynamic>(asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> it) → self::MyStream<self::MyStream|constructor#_#new#tearOff::T%> /* = asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> */
|
||||
return self::MyStream|constructor#<self::MyStream|constructor#_#new#tearOff::T%>(it);
|
||||
static method method1(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::int> /* = asy::Stream<core::int> */ stream) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method method1(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::int> /* = asy::Stream<core::int> */ stream) → dynamic async /* emittedValueType= dynamic */ {
|
||||
for (core::int a in list) {
|
||||
}
|
||||
await for (core::int a in stream) {
|
||||
}
|
||||
}
|
||||
static method method2(self::MyList<(core::int, core::String)> /* = core::List<(core::int, core::String)> */ list, self::MyStream<(core::int, core::String)> /* = asy::Stream<(core::int, core::String)> */ stream) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method method2(self::MyList<(core::int, core::String)> /* = core::List<(core::int, core::String)> */ list, self::MyStream<(core::int, core::String)> /* = asy::Stream<(core::int, core::String)> */ stream) → dynamic async /* emittedValueType= dynamic */ {
|
||||
for (final(core::int, core::String) #t1 in list) {
|
||||
hoisted core::int a;
|
||||
hoisted core::String b;
|
||||
|
|
|
@ -27,7 +27,7 @@ static extension-type-member method MyStream|constructor#<T extends core::Object
|
|||
}
|
||||
static extension-type-member method MyStream|constructor#_#new#tearOff<T extends core::Object? = dynamic>(asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> it) → self::MyStream<self::MyStream|constructor#_#new#tearOff::T%> /* = asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> */
|
||||
return self::MyStream|constructor#<self::MyStream|constructor#_#new#tearOff::T%>(it);
|
||||
static method method1(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::int> /* = asy::Stream<core::int> */ stream) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method method1(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::int> /* = asy::Stream<core::int> */ stream) → dynamic async /* emittedValueType= dynamic */ {
|
||||
{
|
||||
synthesized core::Iterator<core::int> :sync-for-iterator = list.{core::Iterable::iterator}{core::Iterator<core::int>};
|
||||
for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) {
|
||||
|
@ -48,7 +48,7 @@ static method method1(self::MyList<core::int> /* = core::List<core::int> */ list
|
|||
await :for-iterator.{asy::_StreamIterator::cancel}(){() → asy::Future<dynamic>};
|
||||
}
|
||||
}
|
||||
static method method2(self::MyList<(core::int, core::String)> /* = core::List<(core::int, core::String)> */ list, self::MyStream<(core::int, core::String)> /* = asy::Stream<(core::int, core::String)> */ stream) → dynamic async /* futureValueType= dynamic */ {
|
||||
static method method2(self::MyList<(core::int, core::String)> /* = core::List<(core::int, core::String)> */ list, self::MyStream<(core::int, core::String)> /* = asy::Stream<(core::int, core::String)> */ stream) → dynamic async /* emittedValueType= dynamic */ {
|
||||
{
|
||||
synthesized core::Iterator<(core::int, core::String)> :sync-for-iterator = list.{core::Iterable::iterator}{core::Iterator<(core::int, core::String)>};
|
||||
for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) {
|
||||
|
|
|
@ -26,10 +26,10 @@ static extension-type-member method MyStream|constructor#<T extends core::Object
|
|||
static extension-type-member method MyStream|constructor#_#new#tearOff<T extends core::Object? = dynamic>(asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> it) → self::MyStream<self::MyStream|constructor#_#new#tearOff::T%> /* = asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> */
|
||||
return self::MyStream|constructor#<self::MyStream|constructor#_#new#tearOff::T%>(it);
|
||||
static method method(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::String> /* = asy::Stream<core::String> */ stream) → dynamic {
|
||||
() → core::Iterable<core::int> a = () → core::Iterable<core::int> sync* {
|
||||
() → core::Iterable<core::int> a = () → core::Iterable<core::int> sync* /* emittedValueType= core::int */ {
|
||||
yield* list;
|
||||
};
|
||||
() → asy::Stream<core::String> b = () → asy::Stream<core::String> async* {
|
||||
() → asy::Stream<core::String> b = () → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield* stream;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -26,10 +26,10 @@ static extension-type-member method MyStream|constructor#<T extends core::Object
|
|||
static extension-type-member method MyStream|constructor#_#new#tearOff<T extends core::Object? = dynamic>(asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> it) → self::MyStream<self::MyStream|constructor#_#new#tearOff::T%> /* = asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> */
|
||||
return self::MyStream|constructor#<self::MyStream|constructor#_#new#tearOff::T%>(it);
|
||||
static method method(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::String> /* = asy::Stream<core::String> */ stream) → dynamic {
|
||||
() → core::Iterable<core::int> a = () → core::Iterable<core::int> sync* {
|
||||
() → core::Iterable<core::int> a = () → core::Iterable<core::int> sync* /* emittedValueType= core::int */ {
|
||||
yield* list;
|
||||
};
|
||||
() → asy::Stream<core::String> b = () → asy::Stream<core::String> async* {
|
||||
() → asy::Stream<core::String> b = () → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield* stream;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -26,10 +26,10 @@ static extension-type-member method MyStream|constructor#<T extends core::Object
|
|||
static extension-type-member method MyStream|constructor#_#new#tearOff<T extends core::Object? = dynamic>(asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> it) → self::MyStream<self::MyStream|constructor#_#new#tearOff::T%> /* = asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> */
|
||||
return self::MyStream|constructor#<self::MyStream|constructor#_#new#tearOff::T%>(it);
|
||||
static method method(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::String> /* = asy::Stream<core::String> */ stream) → dynamic {
|
||||
() → core::Iterable<core::int> a = () → core::Iterable<core::int> sync* {
|
||||
() → core::Iterable<core::int> a = () → core::Iterable<core::int> sync* /* emittedValueType= core::int */ {
|
||||
yield* list;
|
||||
};
|
||||
() → asy::Stream<core::String> b = () → asy::Stream<core::String> async* {
|
||||
() → asy::Stream<core::String> b = () → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield* stream;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -26,10 +26,10 @@ static extension-type-member method MyStream|constructor#<T extends core::Object
|
|||
static extension-type-member method MyStream|constructor#_#new#tearOff<T extends core::Object? = dynamic>(asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> it) → self::MyStream<self::MyStream|constructor#_#new#tearOff::T%> /* = asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> */
|
||||
return self::MyStream|constructor#<self::MyStream|constructor#_#new#tearOff::T%>(it);
|
||||
static method method(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::String> /* = asy::Stream<core::String> */ stream) → dynamic {
|
||||
() → core::Iterable<core::int> a = () → core::Iterable<core::int> sync* {
|
||||
() → core::Iterable<core::int> a = () → core::Iterable<core::int> sync* /* emittedValueType= core::int */ {
|
||||
yield* list;
|
||||
};
|
||||
() → asy::Stream<core::String> b = () → asy::Stream<core::String> async* {
|
||||
() → asy::Stream<core::String> b = () → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield* stream;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -26,10 +26,10 @@ static extension-type-member method MyStream|constructor#<T extends core::Object
|
|||
static extension-type-member method MyStream|constructor#_#new#tearOff<T extends core::Object? = dynamic>(asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> it) → self::MyStream<self::MyStream|constructor#_#new#tearOff::T%> /* = asy::Stream<self::MyStream|constructor#_#new#tearOff::T%> */
|
||||
return self::MyStream|constructor#<self::MyStream|constructor#_#new#tearOff::T%>(it);
|
||||
static method method(self::MyList<core::int> /* = core::List<core::int> */ list, self::MyStream<core::String> /* = asy::Stream<core::String> */ stream) → dynamic {
|
||||
() → core::Iterable<core::int> a = () → core::Iterable<core::int> sync* {
|
||||
() → core::Iterable<core::int> a = () → core::Iterable<core::int> sync* /* emittedValueType= core::int */ {
|
||||
yield* list;
|
||||
};
|
||||
() → asy::Stream<core::String> b = () → asy::Stream<core::String> async* {
|
||||
() → asy::Stream<core::String> b = () → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield* stream;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -10,13 +10,13 @@ extension Extension on core::int {
|
|||
method asyncStarMethod = self::Extension|asyncStarMethod;
|
||||
method tearoff asyncStarMethod = self::Extension|get#asyncStarMethod;
|
||||
}
|
||||
static extension-member method Extension|syncStarMethod(lowered final core::int #this) → dynamic sync* {}
|
||||
static extension-member method Extension|syncStarMethod(lowered final core::int #this) → dynamic sync* /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#syncStarMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|syncStarMethod(#this);
|
||||
static extension-member method Extension|asyncMethod(lowered final core::int #this) → dynamic async /* futureValueType= dynamic */ {}
|
||||
static extension-member method Extension|asyncMethod(lowered final core::int #this) → dynamic async /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#asyncMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|asyncMethod(#this);
|
||||
static extension-member method Extension|asyncStarMethod(lowered final core::int #this) → dynamic async* {}
|
||||
static extension-member method Extension|asyncStarMethod(lowered final core::int #this) → dynamic async* /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#asyncStarMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|asyncStarMethod(#this);
|
||||
static method main() → dynamic {
|
||||
|
|
|
@ -10,13 +10,13 @@ extension Extension on core::int {
|
|||
method asyncStarMethod = self::Extension|asyncStarMethod;
|
||||
method tearoff asyncStarMethod = self::Extension|get#asyncStarMethod;
|
||||
}
|
||||
static extension-member method Extension|syncStarMethod(lowered final core::int #this) → dynamic sync* {}
|
||||
static extension-member method Extension|syncStarMethod(lowered final core::int #this) → dynamic sync* /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#syncStarMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|syncStarMethod(#this);
|
||||
static extension-member method Extension|asyncMethod(lowered final core::int #this) → dynamic async /* futureValueType= dynamic */ {}
|
||||
static extension-member method Extension|asyncMethod(lowered final core::int #this) → dynamic async /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#asyncMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|asyncMethod(#this);
|
||||
static extension-member method Extension|asyncStarMethod(lowered final core::int #this) → dynamic async* {}
|
||||
static extension-member method Extension|asyncStarMethod(lowered final core::int #this) → dynamic async* /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#asyncStarMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|asyncStarMethod(#this);
|
||||
static method main() → dynamic {
|
||||
|
|
|
@ -10,13 +10,13 @@ extension Extension on core::int {
|
|||
method asyncStarMethod = self::Extension|asyncStarMethod;
|
||||
method tearoff asyncStarMethod = self::Extension|get#asyncStarMethod;
|
||||
}
|
||||
static extension-member method Extension|syncStarMethod(lowered final core::int #this) → dynamic sync* {}
|
||||
static extension-member method Extension|syncStarMethod(lowered final core::int #this) → dynamic sync* /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#syncStarMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|syncStarMethod(#this);
|
||||
static extension-member method Extension|asyncMethod(lowered final core::int #this) → dynamic async /* futureValueType= dynamic */ {}
|
||||
static extension-member method Extension|asyncMethod(lowered final core::int #this) → dynamic async /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#asyncMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|asyncMethod(#this);
|
||||
static extension-member method Extension|asyncStarMethod(lowered final core::int #this) → dynamic async* {}
|
||||
static extension-member method Extension|asyncStarMethod(lowered final core::int #this) → dynamic async* /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#asyncStarMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|asyncStarMethod(#this);
|
||||
static method main() → dynamic {
|
||||
|
|
|
@ -10,13 +10,13 @@ extension Extension on core::int {
|
|||
method asyncStarMethod = self::Extension|asyncStarMethod;
|
||||
method tearoff asyncStarMethod = self::Extension|get#asyncStarMethod;
|
||||
}
|
||||
static extension-member method Extension|syncStarMethod(lowered final core::int #this) → dynamic sync* {}
|
||||
static extension-member method Extension|syncStarMethod(lowered final core::int #this) → dynamic sync* /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#syncStarMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|syncStarMethod(#this);
|
||||
static extension-member method Extension|asyncMethod(lowered final core::int #this) → dynamic async /* futureValueType= dynamic */ {}
|
||||
static extension-member method Extension|asyncMethod(lowered final core::int #this) → dynamic async /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#asyncMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|asyncMethod(#this);
|
||||
static extension-member method Extension|asyncStarMethod(lowered final core::int #this) → dynamic async* {}
|
||||
static extension-member method Extension|asyncStarMethod(lowered final core::int #this) → dynamic async* /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#asyncStarMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|asyncStarMethod(#this);
|
||||
static method main() → dynamic {
|
||||
|
|
|
@ -10,13 +10,13 @@ extension Extension on core::int {
|
|||
method asyncStarMethod = self::Extension|asyncStarMethod;
|
||||
method tearoff asyncStarMethod = self::Extension|get#asyncStarMethod;
|
||||
}
|
||||
static extension-member method Extension|syncStarMethod(lowered final core::int #this) → dynamic sync* {}
|
||||
static extension-member method Extension|syncStarMethod(lowered final core::int #this) → dynamic sync* /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#syncStarMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|syncStarMethod(#this);
|
||||
static extension-member method Extension|asyncMethod(lowered final core::int #this) → dynamic async /* futureValueType= dynamic */ {}
|
||||
static extension-member method Extension|asyncMethod(lowered final core::int #this) → dynamic async /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#asyncMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|asyncMethod(#this);
|
||||
static extension-member method Extension|asyncStarMethod(lowered final core::int #this) → dynamic async* {}
|
||||
static extension-member method Extension|asyncStarMethod(lowered final core::int #this) → dynamic async* /* emittedValueType= dynamic */ {}
|
||||
static extension-member method Extension|get#asyncStarMethod(lowered final core::int #this) → () → dynamic
|
||||
return () → dynamic => self::Extension|asyncStarMethod(#this);
|
||||
static method main() → dynamic {
|
||||
|
|
|
@ -13,7 +13,7 @@ import "dart:core" as core;
|
|||
|
||||
import "org-dartlang-testcase:///deferred_explicit_access_lib.dart" deferred as prefix;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await LoadLibrary(prefix);
|
||||
self::expect(0, let final dynamic #t1 = CheckLibraryIsLoaded(prefix) in def::Extension|staticField);
|
||||
self::expect(0, let final dynamic #t2 = CheckLibraryIsLoaded(prefix) in def::Extension|get#property(0));
|
||||
|
|
|
@ -13,7 +13,7 @@ import "deferred_explicit_access_lib.dart" as def;
|
|||
|
||||
import "org-dartlang-testcase:///deferred_explicit_access_lib.dart" deferred as prefix;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await LoadLibrary(prefix);
|
||||
self::expect(0, let final core::Object* #t1 = CheckLibraryIsLoaded(prefix) in def::Extension|staticField);
|
||||
self::expect(0, let final core::Object* #t2 = CheckLibraryIsLoaded(prefix) in def::Extension|get#property(0));
|
||||
|
|
|
@ -13,7 +13,7 @@ import "dart:core" as core;
|
|||
|
||||
import "org-dartlang-testcase:///deferred_explicit_access_lib.dart" deferred as prefix;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await LoadLibrary(prefix);
|
||||
self::expect(0, let final dynamic #t1 = CheckLibraryIsLoaded(prefix) in def::Extension|staticField);
|
||||
self::expect(0, let final dynamic #t2 = CheckLibraryIsLoaded(prefix) in def::Extension|get#property(0));
|
||||
|
|
|
@ -13,7 +13,7 @@ import "dart:core" as core;
|
|||
|
||||
import "org-dartlang-testcase:///deferred_explicit_access_lib.dart" deferred as prefix;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await LoadLibrary(prefix);
|
||||
self::expect(0, let final dynamic #t1 = CheckLibraryIsLoaded(prefix) in def::Extension|staticField);
|
||||
self::expect(0, let final dynamic #t2 = CheckLibraryIsLoaded(prefix) in def::Extension|get#property(0));
|
||||
|
|
|
@ -13,7 +13,7 @@ import "deferred_explicit_access_lib.dart" as def;
|
|||
|
||||
import "org-dartlang-testcase:///deferred_explicit_access_lib.dart" deferred as prefix;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await LoadLibrary(prefix);
|
||||
self::expect(0, let final core::Object* #t1 = CheckLibraryIsLoaded(prefix) in def::Extension|staticField);
|
||||
self::expect(0, let final core::Object* #t2 = CheckLibraryIsLoaded(prefix) in def::Extension|get#property(0));
|
||||
|
|
|
@ -5,7 +5,7 @@ import "dart:core" as core;
|
|||
|
||||
import "org-dartlang-testcase:///deferred_explicit_access_lib.dart" deferred as prefix hide Extension;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await LoadLibrary(prefix);
|
||||
self::expect(0, let final dynamic #t1 = CheckLibraryIsLoaded(prefix) in def::topLevelField);
|
||||
self::expect(42, let final dynamic #t2 = CheckLibraryIsLoaded(prefix) in def::topLevelField = 42);
|
||||
|
|
|
@ -5,7 +5,7 @@ import "deferred_explicit_access_lib.dart" as def;
|
|||
|
||||
import "org-dartlang-testcase:///deferred_explicit_access_lib.dart" deferred as prefix hide Extension;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await LoadLibrary(prefix);
|
||||
self::expect(0, let final core::Object* #t1 = CheckLibraryIsLoaded(prefix) in def::topLevelField);
|
||||
self::expect(42, let final core::Object* #t2 = CheckLibraryIsLoaded(prefix) in def::topLevelField = 42);
|
||||
|
|
|
@ -5,7 +5,7 @@ import "dart:core" as core;
|
|||
|
||||
import "org-dartlang-testcase:///deferred_explicit_access_lib.dart" deferred as prefix hide Extension;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await LoadLibrary(prefix);
|
||||
self::expect(0, let final dynamic #t1 = CheckLibraryIsLoaded(prefix) in def::topLevelField);
|
||||
self::expect(42, let final dynamic #t2 = CheckLibraryIsLoaded(prefix) in def::topLevelField = 42);
|
||||
|
|
|
@ -5,7 +5,7 @@ import "dart:core" as core;
|
|||
|
||||
import "org-dartlang-testcase:///deferred_explicit_access_lib.dart" deferred as prefix hide Extension;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await LoadLibrary(prefix);
|
||||
self::expect(0, let final dynamic #t1 = CheckLibraryIsLoaded(prefix) in def::topLevelField);
|
||||
self::expect(42, let final dynamic #t2 = CheckLibraryIsLoaded(prefix) in def::topLevelField = 42);
|
||||
|
|
|
@ -5,7 +5,7 @@ import "deferred_explicit_access_lib.dart" as def;
|
|||
|
||||
import "org-dartlang-testcase:///deferred_explicit_access_lib.dart" deferred as prefix hide Extension;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await LoadLibrary(prefix);
|
||||
self::expect(0, let final core::Object* #t1 = CheckLibraryIsLoaded(prefix) in def::topLevelField);
|
||||
self::expect(42, let final core::Object* #t2 = CheckLibraryIsLoaded(prefix) in def::topLevelField = 42);
|
||||
|
|
|
@ -6,28 +6,28 @@ import "dart:core" as core;
|
|||
import "dart:async";
|
||||
|
||||
static field core::List<core::String> stringList = <core::String>["bar"];
|
||||
static method asyncString() → asy::Future<core::String> async /* futureValueType= core::String */ {
|
||||
static method asyncString() → asy::Future<core::String> async /* emittedValueType= core::String */ {
|
||||
return "foo";
|
||||
}
|
||||
static method asyncString2() → asy::Future<core::String> async /* futureValueType= core::String */ {
|
||||
static method asyncString2() → asy::Future<core::String> async /* emittedValueType= core::String */ {
|
||||
return self::asyncString();
|
||||
}
|
||||
static method syncStarString() → core::Iterable<core::String> sync* {
|
||||
static method syncStarString() → core::Iterable<core::String> sync* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
yield* self::syncStarString2();
|
||||
yield* self::stringList;
|
||||
}
|
||||
static method syncStarString2() → core::Iterable<core::String> sync* {
|
||||
static method syncStarString2() → core::Iterable<core::String> sync* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
}
|
||||
static method asyncStarString() → asy::Stream<core::String> async* {
|
||||
static method asyncStarString() → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
yield* self::asyncStarString2();
|
||||
yield await self::asyncString();
|
||||
}
|
||||
static method asyncStarString2() → asy::Stream<core::String> async* {
|
||||
static method asyncStarString2() → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield "bar";
|
||||
}
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::String str = await self::asyncString();
|
||||
}
|
||||
|
|
|
@ -6,28 +6,28 @@ import "dart:core" as core;
|
|||
import "dart:async";
|
||||
|
||||
static field core::List<core::String> stringList = core::_GrowableList::_literal1<core::String>("bar");
|
||||
static method asyncString() → asy::Future<core::String> async /* futureValueType= core::String */ {
|
||||
static method asyncString() → asy::Future<core::String> async /* emittedValueType= core::String */ {
|
||||
return "foo";
|
||||
}
|
||||
static method asyncString2() → asy::Future<core::String> async /* futureValueType= core::String */ {
|
||||
static method asyncString2() → asy::Future<core::String> async /* emittedValueType= core::String */ {
|
||||
return self::asyncString();
|
||||
}
|
||||
static method syncStarString() → core::Iterable<core::String> sync* {
|
||||
static method syncStarString() → core::Iterable<core::String> sync* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
yield* self::syncStarString2();
|
||||
yield* self::stringList;
|
||||
}
|
||||
static method syncStarString2() → core::Iterable<core::String> sync* {
|
||||
static method syncStarString2() → core::Iterable<core::String> sync* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
}
|
||||
static method asyncStarString() → asy::Stream<core::String> async* {
|
||||
static method asyncStarString() → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
yield* self::asyncStarString2();
|
||||
yield await self::asyncString();
|
||||
}
|
||||
static method asyncStarString2() → asy::Stream<core::String> async* {
|
||||
static method asyncStarString2() → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield "bar";
|
||||
}
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::String str = await self::asyncString();
|
||||
}
|
||||
|
|
|
@ -6,28 +6,28 @@ import "dart:core" as core;
|
|||
import "dart:async";
|
||||
|
||||
static field core::List<core::String> stringList = <core::String>["bar"];
|
||||
static method asyncString() → asy::Future<core::String> async /* futureValueType= core::String */ {
|
||||
static method asyncString() → asy::Future<core::String> async /* emittedValueType= core::String */ {
|
||||
return "foo";
|
||||
}
|
||||
static method asyncString2() → asy::Future<core::String> async /* futureValueType= core::String */ {
|
||||
static method asyncString2() → asy::Future<core::String> async /* emittedValueType= core::String */ {
|
||||
return self::asyncString();
|
||||
}
|
||||
static method syncStarString() → core::Iterable<core::String> sync* {
|
||||
static method syncStarString() → core::Iterable<core::String> sync* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
yield* self::syncStarString2();
|
||||
yield* self::stringList;
|
||||
}
|
||||
static method syncStarString2() → core::Iterable<core::String> sync* {
|
||||
static method syncStarString2() → core::Iterable<core::String> sync* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
}
|
||||
static method asyncStarString() → asy::Stream<core::String> async* {
|
||||
static method asyncStarString() → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
yield* self::asyncStarString2();
|
||||
yield await self::asyncString();
|
||||
}
|
||||
static method asyncStarString2() → asy::Stream<core::String> async* {
|
||||
static method asyncStarString2() → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield "bar";
|
||||
}
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::String str = await self::asyncString();
|
||||
}
|
||||
|
|
|
@ -6,28 +6,28 @@ import "dart:core" as core;
|
|||
import "dart:async";
|
||||
|
||||
static field core::List<core::String> stringList = <core::String>["bar"];
|
||||
static method asyncString() → asy::Future<core::String> async /* futureValueType= core::String */ {
|
||||
static method asyncString() → asy::Future<core::String> async /* emittedValueType= core::String */ {
|
||||
return "foo";
|
||||
}
|
||||
static method asyncString2() → asy::Future<core::String> async /* futureValueType= core::String */ {
|
||||
static method asyncString2() → asy::Future<core::String> async /* emittedValueType= core::String */ {
|
||||
return self::asyncString();
|
||||
}
|
||||
static method syncStarString() → core::Iterable<core::String> sync* {
|
||||
static method syncStarString() → core::Iterable<core::String> sync* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
yield* self::syncStarString2();
|
||||
yield* self::stringList;
|
||||
}
|
||||
static method syncStarString2() → core::Iterable<core::String> sync* {
|
||||
static method syncStarString2() → core::Iterable<core::String> sync* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
}
|
||||
static method asyncStarString() → asy::Stream<core::String> async* {
|
||||
static method asyncStarString() → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
yield* self::asyncStarString2();
|
||||
yield await self::asyncString();
|
||||
}
|
||||
static method asyncStarString2() → asy::Stream<core::String> async* {
|
||||
static method asyncStarString2() → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield "bar";
|
||||
}
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::String str = await self::asyncString();
|
||||
}
|
||||
|
|
|
@ -6,28 +6,28 @@ import "dart:core" as core;
|
|||
import "dart:async";
|
||||
|
||||
static field core::List<core::String> stringList = core::_GrowableList::_literal1<core::String>("bar");
|
||||
static method asyncString() → asy::Future<core::String> async /* futureValueType= core::String */ {
|
||||
static method asyncString() → asy::Future<core::String> async /* emittedValueType= core::String */ {
|
||||
return "foo";
|
||||
}
|
||||
static method asyncString2() → asy::Future<core::String> async /* futureValueType= core::String */ {
|
||||
static method asyncString2() → asy::Future<core::String> async /* emittedValueType= core::String */ {
|
||||
return self::asyncString();
|
||||
}
|
||||
static method syncStarString() → core::Iterable<core::String> sync* {
|
||||
static method syncStarString() → core::Iterable<core::String> sync* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
yield* self::syncStarString2();
|
||||
yield* self::stringList;
|
||||
}
|
||||
static method syncStarString2() → core::Iterable<core::String> sync* {
|
||||
static method syncStarString2() → core::Iterable<core::String> sync* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
}
|
||||
static method asyncStarString() → asy::Stream<core::String> async* {
|
||||
static method asyncStarString() → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield "foo";
|
||||
yield* self::asyncStarString2();
|
||||
yield await self::asyncString();
|
||||
}
|
||||
static method asyncStarString2() → asy::Stream<core::String> async* {
|
||||
static method asyncStarString2() → asy::Stream<core::String> async* /* emittedValueType= core::String */ {
|
||||
yield "bar";
|
||||
}
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::String str = await self::asyncString();
|
||||
}
|
||||
|
|
|
@ -5,7 +5,7 @@ import "dart:core" as core;
|
|||
|
||||
import "dart:async";
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await self::returnsString();
|
||||
await self::returnsFutureOrString();
|
||||
await self::returnsAwaitFutureOrString();
|
||||
|
@ -17,27 +17,27 @@ static method main() → dynamic async /* futureValueType= dynamic */ {
|
|||
await self::returnsFutureObject();
|
||||
await self::returnsAwaitFutureObject() /* runtimeCheckType= asy::Future<core::Object> */ ;
|
||||
}
|
||||
static method returnsString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return "a";
|
||||
static method returnsFutureOrString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsFutureOrString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return self::getFutureOr<core::String>("a");
|
||||
static method returnsAwaitFutureOrString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsAwaitFutureOrString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return await self::getFutureOr<core::String>("a") /* runtimeCheckType= asy::Future<core::String> */ ;
|
||||
static method returnsFutureString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsFutureString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return self::getFuture<core::String>("a");
|
||||
static method returnsAwaitFutureString() → FutureOr<core::String> async /* futureValueType= core::String */
|
||||
static method returnsAwaitFutureString() → FutureOr<core::String> async /* emittedValueType= core::String */
|
||||
return await self::getFuture<core::String>("a");
|
||||
static method returnsObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return new core::Object::•();
|
||||
static method returnsFutureOrObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsFutureOrObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return self::getFutureOr<core::Object>(new core::Object::•());
|
||||
static method returnsAwaitFutureOrObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsAwaitFutureOrObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return await self::getFutureOr<core::Object>(new core::Object::•()) /* runtimeCheckType= asy::Future<core::Object> */ ;
|
||||
static method returnsFutureObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsFutureObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return self::getFuture<core::Object>(new core::Object::•());
|
||||
static method returnsAwaitFutureObject() → FutureOr<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsAwaitFutureObject() → FutureOr<core::Object> async /* emittedValueType= core::Object */
|
||||
return await self::getFuture<core::Object>(new core::Object::•());
|
||||
static method getFutureOr<T extends core::Object? = dynamic>(self::getFutureOr::T% v) → FutureOr<self::getFutureOr::T%> async /* futureValueType= self::getFutureOr::T% */
|
||||
static method getFutureOr<T extends core::Object? = dynamic>(self::getFutureOr::T% v) → FutureOr<self::getFutureOr::T%> async /* emittedValueType= self::getFutureOr::T% */
|
||||
return v;
|
||||
static method getFuture<T extends core::Object? = dynamic>(self::getFuture::T% v) → asy::Future<self::getFuture::T%> async /* futureValueType= self::getFuture::T% */
|
||||
static method getFuture<T extends core::Object? = dynamic>(self::getFuture::T% v) → asy::Future<self::getFuture::T%> async /* emittedValueType= self::getFuture::T% */
|
||||
return v;
|
||||
|
|
|
@ -5,7 +5,7 @@ import "dart:core" as core;
|
|||
|
||||
import "dart:async";
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await self::returnsString();
|
||||
await self::returnsFutureOrString();
|
||||
await self::returnsAwaitFutureOrString();
|
||||
|
@ -17,27 +17,27 @@ static method main() → dynamic async /* futureValueType= dynamic */ {
|
|||
await self::returnsFutureObject();
|
||||
await self::returnsAwaitFutureObject() /* runtimeCheckType= asy::Future<core::Object> */ ;
|
||||
}
|
||||
static method returnsString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return "a";
|
||||
static method returnsFutureOrString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsFutureOrString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return self::getFutureOr<core::String>("a");
|
||||
static method returnsAwaitFutureOrString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsAwaitFutureOrString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return await self::getFutureOr<core::String>("a") /* runtimeCheckType= asy::Future<core::String> */ ;
|
||||
static method returnsFutureString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsFutureString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return self::getFuture<core::String>("a");
|
||||
static method returnsAwaitFutureString() → FutureOr<core::String> async /* futureValueType= core::String */
|
||||
static method returnsAwaitFutureString() → FutureOr<core::String> async /* emittedValueType= core::String */
|
||||
return await self::getFuture<core::String>("a");
|
||||
static method returnsObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return new core::Object::•();
|
||||
static method returnsFutureOrObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsFutureOrObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return self::getFutureOr<core::Object>(new core::Object::•());
|
||||
static method returnsAwaitFutureOrObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsAwaitFutureOrObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return await self::getFutureOr<core::Object>(new core::Object::•()) /* runtimeCheckType= asy::Future<core::Object> */ ;
|
||||
static method returnsFutureObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsFutureObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return self::getFuture<core::Object>(new core::Object::•());
|
||||
static method returnsAwaitFutureObject() → FutureOr<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsAwaitFutureObject() → FutureOr<core::Object> async /* emittedValueType= core::Object */
|
||||
return await self::getFuture<core::Object>(new core::Object::•());
|
||||
static method getFutureOr<T extends core::Object? = dynamic>(self::getFutureOr::T% v) → FutureOr<self::getFutureOr::T%> async /* futureValueType= self::getFutureOr::T% */
|
||||
static method getFutureOr<T extends core::Object? = dynamic>(self::getFutureOr::T% v) → FutureOr<self::getFutureOr::T%> async /* emittedValueType= self::getFutureOr::T% */
|
||||
return v;
|
||||
static method getFuture<T extends core::Object? = dynamic>(self::getFuture::T% v) → asy::Future<self::getFuture::T%> async /* futureValueType= self::getFuture::T% */
|
||||
static method getFuture<T extends core::Object? = dynamic>(self::getFuture::T% v) → asy::Future<self::getFuture::T%> async /* emittedValueType= self::getFuture::T% */
|
||||
return v;
|
||||
|
|
|
@ -5,7 +5,7 @@ import "dart:core" as core;
|
|||
|
||||
import "dart:async";
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await self::returnsString();
|
||||
await self::returnsFutureOrString();
|
||||
await self::returnsAwaitFutureOrString();
|
||||
|
@ -17,27 +17,27 @@ static method main() → dynamic async /* futureValueType= dynamic */ {
|
|||
await self::returnsFutureObject();
|
||||
await self::returnsAwaitFutureObject() /* runtimeCheckType= asy::Future<core::Object> */ ;
|
||||
}
|
||||
static method returnsString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return "a";
|
||||
static method returnsFutureOrString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsFutureOrString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return self::getFutureOr<core::String>("a");
|
||||
static method returnsAwaitFutureOrString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsAwaitFutureOrString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return await self::getFutureOr<core::String>("a") /* runtimeCheckType= asy::Future<core::String> */ ;
|
||||
static method returnsFutureString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsFutureString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return self::getFuture<core::String>("a");
|
||||
static method returnsAwaitFutureString() → FutureOr<core::String> async /* futureValueType= core::String */
|
||||
static method returnsAwaitFutureString() → FutureOr<core::String> async /* emittedValueType= core::String */
|
||||
return await self::getFuture<core::String>("a");
|
||||
static method returnsObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return new core::Object::•();
|
||||
static method returnsFutureOrObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsFutureOrObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return self::getFutureOr<core::Object>(new core::Object::•());
|
||||
static method returnsAwaitFutureOrObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsAwaitFutureOrObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return await self::getFutureOr<core::Object>(new core::Object::•()) /* runtimeCheckType= asy::Future<core::Object> */ ;
|
||||
static method returnsFutureObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsFutureObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return self::getFuture<core::Object>(new core::Object::•());
|
||||
static method returnsAwaitFutureObject() → FutureOr<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsAwaitFutureObject() → FutureOr<core::Object> async /* emittedValueType= core::Object */
|
||||
return await self::getFuture<core::Object>(new core::Object::•());
|
||||
static method getFutureOr<T extends core::Object? = dynamic>(self::getFutureOr::T% v) → FutureOr<self::getFutureOr::T%> async /* futureValueType= self::getFutureOr::T% */
|
||||
static method getFutureOr<T extends core::Object? = dynamic>(self::getFutureOr::T% v) → FutureOr<self::getFutureOr::T%> async /* emittedValueType= self::getFutureOr::T% */
|
||||
return v;
|
||||
static method getFuture<T extends core::Object? = dynamic>(self::getFuture::T% v) → asy::Future<self::getFuture::T%> async /* futureValueType= self::getFuture::T% */
|
||||
static method getFuture<T extends core::Object? = dynamic>(self::getFuture::T% v) → asy::Future<self::getFuture::T%> async /* emittedValueType= self::getFuture::T% */
|
||||
return v;
|
||||
|
|
|
@ -5,7 +5,7 @@ import "dart:core" as core;
|
|||
|
||||
import "dart:async";
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await self::returnsString();
|
||||
await self::returnsFutureOrString();
|
||||
await self::returnsAwaitFutureOrString();
|
||||
|
@ -17,27 +17,27 @@ static method main() → dynamic async /* futureValueType= dynamic */ {
|
|||
await self::returnsFutureObject();
|
||||
await self::returnsAwaitFutureObject() /* runtimeCheckType= asy::Future<core::Object> */ ;
|
||||
}
|
||||
static method returnsString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return "a";
|
||||
static method returnsFutureOrString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsFutureOrString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return self::getFutureOr<core::String>("a");
|
||||
static method returnsAwaitFutureOrString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsAwaitFutureOrString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return await self::getFutureOr<core::String>("a") /* runtimeCheckType= asy::Future<core::String> */ ;
|
||||
static method returnsFutureString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsFutureString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return self::getFuture<core::String>("a");
|
||||
static method returnsAwaitFutureString() → FutureOr<core::String> async /* futureValueType= core::String */
|
||||
static method returnsAwaitFutureString() → FutureOr<core::String> async /* emittedValueType= core::String */
|
||||
return await self::getFuture<core::String>("a");
|
||||
static method returnsObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return new core::Object::•();
|
||||
static method returnsFutureOrObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsFutureOrObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return self::getFutureOr<core::Object>(new core::Object::•());
|
||||
static method returnsAwaitFutureOrObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsAwaitFutureOrObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return await self::getFutureOr<core::Object>(new core::Object::•()) /* runtimeCheckType= asy::Future<core::Object> */ ;
|
||||
static method returnsFutureObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsFutureObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return self::getFuture<core::Object>(new core::Object::•());
|
||||
static method returnsAwaitFutureObject() → FutureOr<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsAwaitFutureObject() → FutureOr<core::Object> async /* emittedValueType= core::Object */
|
||||
return await self::getFuture<core::Object>(new core::Object::•());
|
||||
static method getFutureOr<T extends core::Object? = dynamic>(self::getFutureOr::T% v) → FutureOr<self::getFutureOr::T%> async /* futureValueType= self::getFutureOr::T% */
|
||||
static method getFutureOr<T extends core::Object? = dynamic>(self::getFutureOr::T% v) → FutureOr<self::getFutureOr::T%> async /* emittedValueType= self::getFutureOr::T% */
|
||||
return v;
|
||||
static method getFuture<T extends core::Object? = dynamic>(self::getFuture::T% v) → asy::Future<self::getFuture::T%> async /* futureValueType= self::getFuture::T% */
|
||||
static method getFuture<T extends core::Object? = dynamic>(self::getFuture::T% v) → asy::Future<self::getFuture::T%> async /* emittedValueType= self::getFuture::T% */
|
||||
return v;
|
||||
|
|
|
@ -5,7 +5,7 @@ import "dart:core" as core;
|
|||
|
||||
import "dart:async";
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
await self::returnsString();
|
||||
await self::returnsFutureOrString();
|
||||
await self::returnsAwaitFutureOrString();
|
||||
|
@ -17,27 +17,27 @@ static method main() → dynamic async /* futureValueType= dynamic */ {
|
|||
await self::returnsFutureObject();
|
||||
await self::returnsAwaitFutureObject() /* runtimeCheckType= asy::Future<core::Object> */ ;
|
||||
}
|
||||
static method returnsString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return "a";
|
||||
static method returnsFutureOrString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsFutureOrString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return self::getFutureOr<core::String>("a");
|
||||
static method returnsAwaitFutureOrString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsAwaitFutureOrString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return await self::getFutureOr<core::String>("a") /* runtimeCheckType= asy::Future<core::String> */ ;
|
||||
static method returnsFutureString() → asy::Future<core::String> async /* futureValueType= core::String */
|
||||
static method returnsFutureString() → asy::Future<core::String> async /* emittedValueType= core::String */
|
||||
return self::getFuture<core::String>("a");
|
||||
static method returnsAwaitFutureString() → FutureOr<core::String> async /* futureValueType= core::String */
|
||||
static method returnsAwaitFutureString() → FutureOr<core::String> async /* emittedValueType= core::String */
|
||||
return await self::getFuture<core::String>("a");
|
||||
static method returnsObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return new core::Object::•();
|
||||
static method returnsFutureOrObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsFutureOrObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return self::getFutureOr<core::Object>(new core::Object::•());
|
||||
static method returnsAwaitFutureOrObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsAwaitFutureOrObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return await self::getFutureOr<core::Object>(new core::Object::•()) /* runtimeCheckType= asy::Future<core::Object> */ ;
|
||||
static method returnsFutureObject() → asy::Future<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsFutureObject() → asy::Future<core::Object> async /* emittedValueType= core::Object */
|
||||
return self::getFuture<core::Object>(new core::Object::•());
|
||||
static method returnsAwaitFutureObject() → FutureOr<core::Object> async /* futureValueType= core::Object */
|
||||
static method returnsAwaitFutureObject() → FutureOr<core::Object> async /* emittedValueType= core::Object */
|
||||
return await self::getFuture<core::Object>(new core::Object::•());
|
||||
static method getFutureOr<T extends core::Object? = dynamic>(self::getFutureOr::T% v) → FutureOr<self::getFutureOr::T%> async /* futureValueType= self::getFutureOr::T% */
|
||||
static method getFutureOr<T extends core::Object? = dynamic>(self::getFutureOr::T% v) → FutureOr<self::getFutureOr::T%> async /* emittedValueType= self::getFutureOr::T% */
|
||||
return v;
|
||||
static method getFuture<T extends core::Object? = dynamic>(self::getFuture::T% v) → asy::Future<self::getFuture::T%> async /* futureValueType= self::getFuture::T% */
|
||||
static method getFuture<T extends core::Object? = dynamic>(self::getFuture::T% v) → asy::Future<self::getFuture::T%> async /* emittedValueType= self::getFuture::T% */
|
||||
return v;
|
||||
|
|
|
@ -8,7 +8,7 @@ library;
|
|||
//
|
||||
import self as self;
|
||||
|
||||
static method foo() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method foo() → dynamic async /* emittedValueType= dynamic */ {
|
||||
invalid-type x;
|
||||
for (dynamic y in x{<invalid>}.z) {
|
||||
}
|
||||
|
|
|
@ -8,7 +8,7 @@ library;
|
|||
//
|
||||
import self as self;
|
||||
|
||||
static method foo() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method foo() → dynamic async /* emittedValueType= dynamic */ {
|
||||
invalid-type x;
|
||||
invalid-expression "Invalid iterable type in for-in";
|
||||
}
|
||||
|
|
|
@ -8,7 +8,7 @@ library;
|
|||
//
|
||||
import self as self;
|
||||
|
||||
static method foo() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method foo() → dynamic async /* emittedValueType= dynamic */ {
|
||||
invalid-type x;
|
||||
for (dynamic y in x{<invalid>}.z) {
|
||||
}
|
||||
|
|
|
@ -8,7 +8,7 @@ library;
|
|||
//
|
||||
import self as self;
|
||||
|
||||
static method foo() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method foo() → dynamic async /* emittedValueType= dynamic */ {
|
||||
invalid-type x;
|
||||
for (dynamic y in x{<invalid>}.z) {
|
||||
}
|
||||
|
|
|
@ -8,7 +8,7 @@ library;
|
|||
//
|
||||
import self as self;
|
||||
|
||||
static method foo() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method foo() → dynamic async /* emittedValueType= dynamic */ {
|
||||
invalid-type x;
|
||||
invalid-expression "Invalid iterable type in for-in";
|
||||
}
|
||||
|
|
|
@ -17,7 +17,7 @@ class Node extends core::Object {
|
|||
return "${this.{self::Node::name}{core::String}} ${let final core::Iterable<dynamic>? #t3 = tmp in #t3 == null ?{core::String?} null : #t3{core::Iterable<dynamic>}.{core::Iterable::join}(" "){([core::String]) → core::String}}".{core::String::trim}(){() → core::String};
|
||||
}
|
||||
}
|
||||
static method main() → void async /* futureValueType= void */ {
|
||||
static method main() → void async /* emittedValueType= void */ {
|
||||
core::String expected = "1 2 3 4 5 6 7 8 9 10";
|
||||
self::Node node = new self::Node::•("1", <self::Node>[new self::Node::•("2", <self::Node>[]), await asy::Future::value<self::Node>(new self::Node::•("3", <self::Node>[await asy::Future::value<self::Node>(new self::Node::•("4", <self::Node>[new self::Node::•("5", <self::Node>[await asy::Future::value<self::Node>(new self::Node::•("6", <self::Node>[await asy::Future::value<self::Node>(new self::Node::•("7", <self::Node>[]))])), await asy::Future::value<self::Node>(new self::Node::•("8", <self::Node>[])), await asy::Future::value<self::Node>(new self::Node::•("9", <self::Node>[]))])]))])), await asy::Future::value<self::Node>(new self::Node::•("10", <self::Node>[]))]);
|
||||
core::String actual = node.{self::Node::toSimpleString}(){() → dynamic} as{TypeError,ForDynamic} core::String;
|
||||
|
|
|
@ -17,7 +17,7 @@ class Node extends core::Object {
|
|||
return "${this.{self::Node::name}{core::String}} ${let final core::Iterable<dynamic>? #t3 = tmp in #t3 == null ?{core::String?} null : #t3{core::Iterable<dynamic>}.{core::Iterable::join}(" "){([core::String]) → core::String}}".{core::String::trim}(){() → core::String};
|
||||
}
|
||||
}
|
||||
static method main() → void async /* futureValueType= void */ {
|
||||
static method main() → void async /* emittedValueType= void */ {
|
||||
core::String expected = "1 2 3 4 5 6 7 8 9 10";
|
||||
self::Node node = new self::Node::•("1", core::_GrowableList::_literal3<self::Node>(new self::Node::•("2", core::_GrowableList::•<self::Node>(0)), await asy::Future::value<self::Node>(new self::Node::•("3", core::_GrowableList::_literal1<self::Node>(await asy::Future::value<self::Node>(new self::Node::•("4", core::_GrowableList::_literal1<self::Node>(new self::Node::•("5", core::_GrowableList::_literal3<self::Node>(await asy::Future::value<self::Node>(new self::Node::•("6", core::_GrowableList::_literal1<self::Node>(await asy::Future::value<self::Node>(new self::Node::•("7", core::_GrowableList::•<self::Node>(0)))))), await asy::Future::value<self::Node>(new self::Node::•("8", core::_GrowableList::•<self::Node>(0))), await asy::Future::value<self::Node>(new self::Node::•("9", core::_GrowableList::•<self::Node>(0))))))))))), await asy::Future::value<self::Node>(new self::Node::•("10", core::_GrowableList::•<self::Node>(0)))));
|
||||
core::String actual = node.{self::Node::toSimpleString}(){() → dynamic} as{TypeError,ForDynamic} core::String;
|
||||
|
|
|
@ -17,7 +17,7 @@ class Node extends core::Object {
|
|||
return "${this.{self::Node::name}{core::String}} ${let final core::Iterable<dynamic>? #t3 = tmp in #t3 == null ?{core::String?} null : #t3{core::Iterable<dynamic>}.{core::Iterable::join}(" "){([core::String]) → core::String}}".{core::String::trim}(){() → core::String};
|
||||
}
|
||||
}
|
||||
static method main() → void async /* futureValueType= void */ {
|
||||
static method main() → void async /* emittedValueType= void */ {
|
||||
core::String expected = "1 2 3 4 5 6 7 8 9 10";
|
||||
self::Node node = new self::Node::•("1", <self::Node>[new self::Node::•("2", <self::Node>[]), await asy::Future::value<self::Node>(new self::Node::•("3", <self::Node>[await asy::Future::value<self::Node>(new self::Node::•("4", <self::Node>[new self::Node::•("5", <self::Node>[await asy::Future::value<self::Node>(new self::Node::•("6", <self::Node>[await asy::Future::value<self::Node>(new self::Node::•("7", <self::Node>[]))])), await asy::Future::value<self::Node>(new self::Node::•("8", <self::Node>[])), await asy::Future::value<self::Node>(new self::Node::•("9", <self::Node>[]))])]))])), await asy::Future::value<self::Node>(new self::Node::•("10", <self::Node>[]))]);
|
||||
core::String actual = node.{self::Node::toSimpleString}(){() → dynamic} as{TypeError,ForDynamic} core::String;
|
||||
|
|
|
@ -17,7 +17,7 @@ class Node extends core::Object {
|
|||
return "${this.{self::Node::name}{core::String}} ${let final core::Iterable<dynamic>? #t3 = tmp in #t3 == null ?{core::String?} null : #t3{core::Iterable<dynamic>}.{core::Iterable::join}(" "){([core::String]) → core::String}}".{core::String::trim}(){() → core::String};
|
||||
}
|
||||
}
|
||||
static method main() → void async /* futureValueType= void */ {
|
||||
static method main() → void async /* emittedValueType= void */ {
|
||||
core::String expected = "1 2 3 4 5 6 7 8 9 10";
|
||||
self::Node node = new self::Node::•("1", <self::Node>[new self::Node::•("2", <self::Node>[]), await asy::Future::value<self::Node>(new self::Node::•("3", <self::Node>[await asy::Future::value<self::Node>(new self::Node::•("4", <self::Node>[new self::Node::•("5", <self::Node>[await asy::Future::value<self::Node>(new self::Node::•("6", <self::Node>[await asy::Future::value<self::Node>(new self::Node::•("7", <self::Node>[]))])), await asy::Future::value<self::Node>(new self::Node::•("8", <self::Node>[])), await asy::Future::value<self::Node>(new self::Node::•("9", <self::Node>[]))])]))])), await asy::Future::value<self::Node>(new self::Node::•("10", <self::Node>[]))]);
|
||||
core::String actual = node.{self::Node::toSimpleString}(){() → dynamic} as{TypeError,ForDynamic} core::String;
|
||||
|
|
|
@ -17,7 +17,7 @@ class Node extends core::Object {
|
|||
return "${this.{self::Node::name}{core::String}} ${let final core::Iterable<dynamic>? #t3 = tmp in #t3 == null ?{core::String?} null : #t3{core::Iterable<dynamic>}.{core::Iterable::join}(" "){([core::String]) → core::String}}".{core::String::trim}(){() → core::String};
|
||||
}
|
||||
}
|
||||
static method main() → void async /* futureValueType= void */ {
|
||||
static method main() → void async /* emittedValueType= void */ {
|
||||
core::String expected = "1 2 3 4 5 6 7 8 9 10";
|
||||
self::Node node = new self::Node::•("1", core::_GrowableList::_literal3<self::Node>(new self::Node::•("2", core::_GrowableList::•<self::Node>(0)), await asy::Future::value<self::Node>(new self::Node::•("3", core::_GrowableList::_literal1<self::Node>(await asy::Future::value<self::Node>(new self::Node::•("4", core::_GrowableList::_literal1<self::Node>(new self::Node::•("5", core::_GrowableList::_literal3<self::Node>(await asy::Future::value<self::Node>(new self::Node::•("6", core::_GrowableList::_literal1<self::Node>(await asy::Future::value<self::Node>(new self::Node::•("7", core::_GrowableList::•<self::Node>(0)))))), await asy::Future::value<self::Node>(new self::Node::•("8", core::_GrowableList::•<self::Node>(0))), await asy::Future::value<self::Node>(new self::Node::•("9", core::_GrowableList::•<self::Node>(0))))))))))), await asy::Future::value<self::Node>(new self::Node::•("10", core::_GrowableList::•<self::Node>(0)))));
|
||||
core::String actual = node.{self::Node::toSimpleString}(){() → dynamic} as{TypeError,ForDynamic} core::String;
|
||||
|
|
|
@ -2,6 +2,6 @@ library;
|
|||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::print(await "Hello, World!" /* runtimeCheckType= dart.async::Future<core::String> */ );
|
||||
}
|
||||
|
|
|
@ -2,6 +2,6 @@ library;
|
|||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::print(await "Hello, World!" /* runtimeCheckType= dart.async::Future<core::String> */ );
|
||||
}
|
||||
|
|
|
@ -2,6 +2,6 @@ library;
|
|||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::print(await "Hello, World!" /* runtimeCheckType= dart.async::Future<core::String> */ );
|
||||
}
|
||||
|
|
|
@ -2,6 +2,6 @@ library;
|
|||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::print(await "Hello, World!" /* runtimeCheckType= dart.async::Future<core::String> */ );
|
||||
}
|
||||
|
|
|
@ -2,6 +2,6 @@ library;
|
|||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::print(await "Hello, World!" /* runtimeCheckType= dart.async::Future<core::String> */ );
|
||||
}
|
||||
|
|
|
@ -52,7 +52,7 @@ static set topLevelSetter(dynamic val) → void {
|
|||
}
|
||||
static method dummy() → dynamic
|
||||
return 1;
|
||||
static method staticMembers() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method staticMembers() → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::num a = self::C::staticField.{core::num::+}(await self::dummy() /* runtimeCheckType= asy::Future<dynamic> */ as{TypeError,ForDynamic} core::num){(core::num) → core::num};
|
||||
self::expect(2, a);
|
||||
core::num f = (self::C::staticField = 1).{core::num::+}(await self::dummy() /* runtimeCheckType= asy::Future<dynamic> */ as{TypeError,ForDynamic} core::num){(core::num) → core::num};
|
||||
|
@ -66,7 +66,7 @@ static method staticMembers() → dynamic async /* futureValueType= dynamic */ {
|
|||
core::num e = self::C::staticField.{core::num::+}(self::C::staticGetter){(core::num) → core::int}.{core::num::+}(self::C::staticSetter = 1){(core::num) → core::int}.{core::num::+}(self::C::staticFoo(1)){(core::num) → core::int}.{core::num::+}(await self::dummy() /* runtimeCheckType= asy::Future<dynamic> */ as{TypeError,ForDynamic} core::num){(core::num) → core::num};
|
||||
self::expect(5, e);
|
||||
}
|
||||
static method topLevelMembers() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method topLevelMembers() → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::num a = self::globalVariable.{core::num::+}(await self::dummy() /* runtimeCheckType= asy::Future<dynamic> */ as{TypeError,ForDynamic} core::num){(core::num) → core::num};
|
||||
self::expect(2, a);
|
||||
core::num b = self::topLevelGetter.{core::num::+}(await self::dummy() /* runtimeCheckType= asy::Future<dynamic> */ as{TypeError,ForDynamic} core::num){(core::num) → core::num};
|
||||
|
@ -78,7 +78,7 @@ static method topLevelMembers() → dynamic async /* futureValueType= dynamic */
|
|||
core::num e = self::globalVariable.{core::num::+}(self::topLevelGetter){(core::num) → core::int}.{core::num::+}(self::topLevelSetter = 1){(core::num) → core::int}.{core::num::+}(self::topLevelFoo(1)){(core::num) → core::int}.{core::num::+}(await self::dummy() /* runtimeCheckType= asy::Future<dynamic> */ as{TypeError,ForDynamic} core::num){(core::num) → core::num};
|
||||
self::expect(5, e);
|
||||
}
|
||||
static method instanceMembers() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method instanceMembers() → dynamic async /* emittedValueType= dynamic */ {
|
||||
self::C inst = new self::C::•();
|
||||
core::num a = inst.{self::C::field}{core::int}.{core::num::+}(await self::dummy() /* runtimeCheckType= asy::Future<dynamic> */ as{TypeError,ForDynamic} core::num){(core::num) → core::num};
|
||||
self::expect(2, a);
|
||||
|
@ -91,7 +91,7 @@ static method instanceMembers() → dynamic async /* futureValueType= dynamic */
|
|||
core::num e = inst.{self::C::field}{core::int}.{core::num::+}(inst.{self::C::getter}{core::int}){(core::num) → core::int}.{core::num::+}(inst.{self::C::setter} = 1){(core::num) → core::int}.{core::num::+}(inst.{self::C::foo}(1){(core::int) → core::int}){(core::num) → core::int}.{core::num::+}(await self::dummy() /* runtimeCheckType= asy::Future<dynamic> */ as{TypeError,ForDynamic} core::num){(core::num) → core::num};
|
||||
self::expect(5, e);
|
||||
}
|
||||
static method others() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method others() → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::String a = "${self::globalVariable} ${await self::dummy() /* runtimeCheckType= asy::Future<dynamic> */ } ".{core::String::+}(await "someString" /* runtimeCheckType= asy::Future<core::String> */ ){(core::String) → core::String};
|
||||
self::expect("1 1 someString", a);
|
||||
self::C c = new self::C::•();
|
||||
|
@ -103,7 +103,7 @@ static method others() → dynamic async /* futureValueType= dynamic */ {
|
|||
core::num e = b.{core::List::[]}(0){(core::int) → core::int}.{core::num::+}(await self::dummy() /* runtimeCheckType= asy::Future<dynamic> */ as{TypeError,ForDynamic} core::num){(core::num) → core::num};
|
||||
self::expect(2, e);
|
||||
}
|
||||
static method conditionals() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method conditionals() → dynamic async /* emittedValueType= dynamic */ {
|
||||
core::bool a = false;
|
||||
core::bool b = true;
|
||||
core::bool c = a || b || await self::dummy() /* runtimeCheckType= asy::Future<dynamic> */ as{TypeError,ForDynamic} core::bool;
|
||||
|
@ -118,7 +118,7 @@ static method conditionals() → dynamic async /* futureValueType= dynamic */ {
|
|||
on core::Object catch(final core::Object e) {
|
||||
}
|
||||
}
|
||||
static method asserts() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method asserts() → dynamic async /* emittedValueType= dynamic */ {
|
||||
for (final <T extends core::Object? = dynamic>(T%) → FutureOr<T%>func in <<T extends core::Object? = dynamic>(T%) → FutureOr<T%>>[#C1, #C2]) {
|
||||
assert(await func<core::bool>(true){(core::bool) → FutureOr<core::bool>} /* runtimeCheckType= asy::Future<core::bool> */ );
|
||||
assert(invalid-expression "pkg/front_end/testcases/general/await_complex.dart:120:12: Error: A value of type 'FutureOr<bool>' can't be assigned to a variable of type 'bool'.
|
||||
|
@ -135,7 +135,7 @@ static method asserts() → dynamic async /* futureValueType= dynamic */ {
|
|||
}
|
||||
}
|
||||
}
|
||||
static method controlFlow() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method controlFlow() → dynamic async /* emittedValueType= dynamic */ {
|
||||
for (final <T extends core::Object? = dynamic>(T%) → FutureOr<T%>func in <<T extends core::Object? = dynamic>(T%) → FutureOr<T%>>[#C1, #C2]) {
|
||||
core::int c = 0;
|
||||
for (core::int i = await func<core::int>(0){(core::int) → FutureOr<core::int>} /* runtimeCheckType= asy::Future<core::int> */ ; await func<core::bool>(i.{core::num::<}(5){(core::num) → core::bool}){(core::bool) → FutureOr<core::bool>} /* runtimeCheckType= asy::Future<core::bool> */ ; await func<core::int>(let final core::int #t1 = i in let final core::int #t2 = i = #t1.{core::num::+}(1){(core::num) → core::int} in #t1){(core::int) → FutureOr<core::int>} /* runtimeCheckType= asy::Future<core::int> */ ) {
|
||||
|
@ -203,30 +203,30 @@ static method controlFlow() → dynamic async /* futureValueType= dynamic */ {
|
|||
throw "unreachable";
|
||||
}
|
||||
}
|
||||
self::expect(42, await(() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
self::expect(42, await(() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
return await func<core::int>(42){(core::int) → FutureOr<core::int>} /* runtimeCheckType= asy::Future<core::int> */ ;
|
||||
})(){() → asy::Future<core::int>});
|
||||
self::expect(42, await(() → asy::Future<core::int> async /* futureValueType= core::int */ {
|
||||
self::expect(42, await(() → asy::Future<core::int> async /* emittedValueType= core::int */ {
|
||||
return func<core::int>(42){(core::int) → FutureOr<core::int>};
|
||||
})(){() → asy::Future<core::int>});
|
||||
function testStream1() → asy::Stream<core::int> async* {
|
||||
function testStream1() → asy::Stream<core::int> async* /* emittedValueType= core::int */ {
|
||||
yield await func<core::int>(42){(core::int) → FutureOr<core::int>} /* runtimeCheckType= asy::Future<core::int> */ ;
|
||||
}
|
||||
self::expectList(<dynamic>[42], await testStream1(){() → asy::Stream<core::int>}.{asy::Stream::toList}(){() → asy::Future<core::List<core::int>>});
|
||||
function testStream2() → asy::Stream<core::int> async* {
|
||||
function testStream2() → asy::Stream<core::int> async* /* emittedValueType= core::int */ {
|
||||
yield* await func<asy::Stream<core::int>>(self::intStream()){(asy::Stream<core::int>) → FutureOr<asy::Stream<core::int>>} /* runtimeCheckType= asy::Future<asy::Stream<core::int>> */ ;
|
||||
}
|
||||
self::expectList(<dynamic>[42], await testStream2(){() → asy::Stream<core::int>}.{asy::Stream::toList}(){() → asy::Future<core::List<core::int>>});
|
||||
}
|
||||
}
|
||||
static method future<T extends core::Object? = dynamic>(self::future::T% value) → FutureOr<self::future::T%> async /* futureValueType= self::future::T% */
|
||||
static method future<T extends core::Object? = dynamic>(self::future::T% value) → FutureOr<self::future::T%> async /* emittedValueType= self::future::T% */
|
||||
return value;
|
||||
static method id<T extends core::Object? = dynamic>(self::id::T% value) → FutureOr<self::id::T%>
|
||||
return value;
|
||||
static method intStream() → asy::Stream<core::int> async* {
|
||||
static method intStream() → asy::Stream<core::int> async* /* emittedValueType= core::int */ {
|
||||
yield 42;
|
||||
}
|
||||
static method main() → dynamic async /* futureValueType= dynamic */ {
|
||||
static method main() → dynamic async /* emittedValueType= dynamic */ {
|
||||
for (core::int i = 0; i.{core::num::<}(11){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) {
|
||||
await self::staticMembers() /* runtimeCheckType= asy::Future<dynamic> */ ;
|
||||
await self::topLevelMembers() /* runtimeCheckType= asy::Future<dynamic> */ ;
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue