class Class1 { double method(int o) => 0.5; } class Class2 { T field; Class2(this.field, this.nonNullableFunctionField, this.nonNullableFunctionTypedField); T call() => field; T method(int o) => field; Function nonNullableFunctionField; Function get nonNullableFunctionGetter => nonNullableFunctionTypedField; Function? nullableFunctionField; Function? get nullableFunctionGetter => nonNullableFunctionTypedField; void Function() nonNullableFunctionTypedField; void Function() get nonNullableFunctionTypedGetter => nonNullableFunctionTypedField; void Function()? nullableFunctionTypedField; void Function()? get nullableFunctionTypedGetter => nonNullableFunctionTypedField; } const int i = 4; const int j = 24; const int k = i * j; test( Class1 nonNullableClass1, Class1? nullableClass1, dynamic dyn, Never never, Class2 nonNullableClass2, Class2? nullableClass2, Function nonNullableFunction, Function? nullableFunction, int Function(int) nonNullableFunctionType, int Function(int)? nullableFunctionType, T Function(T) genericFunctionType, T1 nonNullableTypeVariable1, T1? nullableTypeVariable1, T2 nonNullableTypeVariable2, T2? nullableTypeVariable2, T3 undeterminedTypeVariable) {} main() {}