blob: 9527be1a15ce6c2ad02bb9d29f15b8b96502ed14 [file] [log] [blame]
class Class1 {
Class1? get property => null;
void set property(Class1? value) {}
Class1 get property1 => new Class1();
Class2 get property2 => new Class2();
Class1? get nullable1 => property1;
void set nullable1(Class1? value) {}
Class1 nonNullable1Method() => nonNullable1;
Class1? operator [](Class1? key) => nullable1;
void operator []=(Class1? key, Class1? value) {}
Class1? operator +(int value) => nullable1;
Class1? operator -() => nullable1;
Class1 get nonNullable1 => property1;
Class2 get nonNullable2 => property2;
}
class Class2 {
Class2 get property => this;
void set property(Class2 value) {}
Class2 nonNullable2Method() => nonNullable2;
Class2 operator [](Class2? key) => property;
void operator []=(Class2? key, Class2? value) => property;
Class2 operator +(int value) => property;
Class2 operator -() => property;
Class2 get nonNullable2 => property;
void set nonNullable2(Class2 value) {}
}
class Class3 {
Class2? get property => null;
Class2? operator [](Class3? key) => property;
}
main() {}
void propertyAccess(Class1? n1) {}
void indexAccess(Class1? n1, Class2? n2, Class3? n3) {}
void operatorAccess(Class1? n1, Class2? n2) {}
void ifNull(Class1? n1) {}
void throws(void Function() f) {}