@@ -847,3 +847,154 @@ test.kt:
847
847
# 1| 2: [NullLiteral] null
848
848
# 1| 3: [IntegerLiteral] 1
849
849
# 1| 4: [NullLiteral] null
850
+ # 143| 12: [Class,GenericType,ParameterizedType] TestGenericFunction
851
+ #-----| -2: (Generic Parameters)
852
+ # 143| 0: [TypeVariable] T
853
+ # 143| 1: [Constructor] TestGenericFunction
854
+ # 143| 5: [BlockStmt] { ... }
855
+ # 143| 0: [SuperConstructorInvocationStmt] super(...)
856
+ # 143| 1: [BlockStmt] { ... }
857
+ # 145| 2: [Method] f
858
+ #-----| 2: (Generic Parameters)
859
+ # 145| 0: [TypeVariable] S
860
+ # 145| 3: [TypeAccess] Unit
861
+ #-----| 4: (Parameters)
862
+ # 145| 0: [Parameter] x
863
+ # 145| 0: [TypeAccess] S
864
+ # 145| 1: [Parameter] y
865
+ # 145| 0: [TypeAccess] T
866
+ # 145| 2: [Parameter] def1
867
+ # 145| 0: [TypeAccess] T
868
+ # 145| 3: [Parameter] def2
869
+ # 145| 0: [TypeAccess] List<? extends T>
870
+ # 145| 0: [WildcardTypeAccess] ? ...
871
+ # 145| 0: [TypeAccess] T
872
+ # 145| 4: [Parameter] def3
873
+ # 145| 0: [TypeAccess] S
874
+ # 145| 5: [Parameter] def4
875
+ # 145| 0: [TypeAccess] List<? extends S>
876
+ # 145| 0: [WildcardTypeAccess] ? ...
877
+ # 145| 0: [TypeAccess] S
878
+ # 145| 5: [BlockStmt] { ... }
879
+ # 146| 0: [ExprStmt] <Expr>;
880
+ # 146| 0: [MethodAccess] sink(...)
881
+ # 146| -1: [TypeAccess] TestKt
882
+ # 146| 0: [VarAccess] y
883
+ # 145| 3: [Method] f$default
884
+ # 145| 3: [TypeAccess] Unit
885
+ #-----| 4: (Parameters)
886
+ # 145| 0: [Parameter] p0
887
+ # 145| 0: [TypeAccess] TestGenericFunction<>
888
+ # 145| 1: [Parameter] p1
889
+ # 145| 0: [TypeAccess] Object
890
+ # 145| 2: [Parameter] p2
891
+ # 145| 0: [TypeAccess] Object
892
+ # 145| 3: [Parameter] p3
893
+ # 145| 0: [TypeAccess] Object
894
+ # 145| 4: [Parameter] p4
895
+ # 145| 0: [TypeAccess] List<>
896
+ # 145| 5: [Parameter] p5
897
+ # 145| 0: [TypeAccess] Object
898
+ # 145| 6: [Parameter] p6
899
+ # 145| 0: [TypeAccess] List<>
900
+ # 145| 7: [Parameter] p7
901
+ # 145| 0: [TypeAccess] int
902
+ # 145| 8: [Parameter] p8
903
+ # 145| 0: [TypeAccess] Object
904
+ # 145| 5: [BlockStmt] { ... }
905
+ # 145| 0: [IfStmt] if (...)
906
+ # 145| 0: [EQExpr] ... == ...
907
+ # 145| 0: [AndBitwiseExpr] ... & ...
908
+ # 145| 0: [IntegerLiteral] 2
909
+ # 145| 1: [VarAccess] p7
910
+ # 145| 1: [IntegerLiteral] 0
911
+ # 145| 1: [ExprStmt] <Expr>;
912
+ # 145| 0: [AssignExpr] ...=...
913
+ # 145| 0: [VarAccess] p2
914
+ # 145| 1: [VarAccess] p1
915
+ # 145| 1: [IfStmt] if (...)
916
+ # 145| 0: [EQExpr] ... == ...
917
+ # 145| 0: [AndBitwiseExpr] ... & ...
918
+ # 145| 0: [IntegerLiteral] 4
919
+ # 145| 1: [VarAccess] p7
920
+ # 145| 1: [IntegerLiteral] 0
921
+ # 145| 1: [ExprStmt] <Expr>;
922
+ # 145| 0: [AssignExpr] ...=...
923
+ # 145| 0: [VarAccess] p3
924
+ # 145| 1: [NullLiteral] null
925
+ # 145| 2: [IfStmt] if (...)
926
+ # 145| 0: [EQExpr] ... == ...
927
+ # 145| 0: [AndBitwiseExpr] ... & ...
928
+ # 145| 0: [IntegerLiteral] 8
929
+ # 145| 1: [VarAccess] p7
930
+ # 145| 1: [IntegerLiteral] 0
931
+ # 145| 1: [ExprStmt] <Expr>;
932
+ # 145| 0: [AssignExpr] ...=...
933
+ # 145| 0: [VarAccess] p4
934
+ # 145| 1: [MethodAccess] listOf(...)
935
+ # 145| -2: [TypeAccess] Object
936
+ # 145| -1: [TypeAccess] CollectionsKt
937
+ # 145| 0: [VarAccess] p2
938
+ # 145| 3: [IfStmt] if (...)
939
+ # 145| 0: [EQExpr] ... == ...
940
+ # 145| 0: [AndBitwiseExpr] ... & ...
941
+ # 145| 0: [IntegerLiteral] 16
942
+ # 145| 1: [VarAccess] p7
943
+ # 145| 1: [IntegerLiteral] 0
944
+ # 145| 1: [ExprStmt] <Expr>;
945
+ # 145| 0: [AssignExpr] ...=...
946
+ # 145| 0: [VarAccess] p5
947
+ # 145| 1: [NullLiteral] null
948
+ # 145| 4: [IfStmt] if (...)
949
+ # 145| 0: [EQExpr] ... == ...
950
+ # 145| 0: [AndBitwiseExpr] ... & ...
951
+ # 145| 0: [IntegerLiteral] 32
952
+ # 145| 1: [VarAccess] p7
953
+ # 145| 1: [IntegerLiteral] 0
954
+ # 145| 1: [ExprStmt] <Expr>;
955
+ # 145| 0: [AssignExpr] ...=...
956
+ # 145| 0: [VarAccess] p6
957
+ # 145| 1: [MethodAccess] listOf(...)
958
+ # 145| -2: [TypeAccess] Object
959
+ # 145| -1: [TypeAccess] CollectionsKt
960
+ # 145| 0: [VarAccess] p1
961
+ # 145| 5: [ReturnStmt] return ...
962
+ # 145| 0: [MethodAccess] f(...)
963
+ # 145| -1: [VarAccess] p0
964
+ # 145| 0: [VarAccess] p1
965
+ # 145| 1: [VarAccess] p2
966
+ # 145| 2: [VarAccess] p3
967
+ # 145| 3: [VarAccess] p4
968
+ # 145| 4: [VarAccess] p5
969
+ # 145| 5: [VarAccess] p6
970
+ # 149| 4: [Method] user
971
+ # 149| 3: [TypeAccess] Unit
972
+ #-----| 4: (Parameters)
973
+ # 149| 0: [Parameter] inst
974
+ # 149| 0: [TypeAccess] TestGenericFunction<String>
975
+ # 149| 0: [TypeAccess] String
976
+ # 149| 5: [BlockStmt] { ... }
977
+ # 150| 0: [ExprStmt] <Expr>;
978
+ # 150| 0: [MethodAccess] f$default(...)
979
+ # 150| -1: [TypeAccess] TestGenericFunction<>
980
+ # 150| 0: [VarAccess] inst
981
+ # 150| 1: [StringLiteral] generic function sunk
982
+ # 1| 2: [NullLiteral] null
983
+ # 1| 3: [NullLiteral] null
984
+ # 1| 4: [NullLiteral] null
985
+ # 1| 5: [NullLiteral] null
986
+ # 1| 6: [NullLiteral] null
987
+ # 1| 7: [IntegerLiteral] 1
988
+ # 1| 8: [NullLiteral] null
989
+ # 151| 1: [ExprStmt] <Expr>;
990
+ # 151| 0: [MethodAccess] f$default(...)
991
+ # 151| -1: [TypeAccess] TestGenericFunction<>
992
+ # 151| 0: [VarAccess] inst
993
+ # 151| 1: [StringLiteral] generic function sunk fp
994
+ # 151| 2: [StringLiteral] generic function sunk 2
995
+ # 1| 3: [NullLiteral] null
996
+ # 1| 4: [NullLiteral] null
997
+ # 1| 5: [NullLiteral] null
998
+ # 1| 6: [NullLiteral] null
999
+ # 1| 7: [IntegerLiteral] 3
1000
+ # 1| 8: [NullLiteral] null
0 commit comments