blob: c9a0e32a24a6a0906c442b192113b0d6c854e0e8 [file] [log] [blame]
// Copyright (c) 2022, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
abstract class Class1 {
String get field1;
}
abstract class Class2<V> {}
typedef Function1<O, I> = Class2<O>? Function(I i);
class Class3<V, D> {}
extension Extension1<V> on Class2<V> {
Class3<M, V> method1<M>(Function1<M, V> f) {
throw '';
}
}
class Class4<K, V> {
Class2<V> operator [](K key) => throw '';
}
class Class5 {
late final field2 = Class4<String?, bool>();
late final field3 =
getter1.method1((o) => o != null ? field2[o.field1] : null);
method2() {
late final local1 =
getter1.method1((o) => o != null ? field2[o.field1] : null);
}
Class2<Class1?> get getter1 => throw '';
}