Commit Graph

86 Commits

Author SHA1 Message Date
simon.ogorodnik ae54815132 [FIR] Fix varargs of unsigned numbers 2020-03-24 18:58:17 +03:00
Dmitriy Novozhilov 6ce8d661ad [FIR] Add nullability to ILT. #KT-37639 Fixed 2020-03-20 23:11:28 +03:00
Dmitriy Novozhilov ea02855ba6 [FIR] Fix type arguments and substitution for flexible types 2020-03-20 23:11:28 +03:00
Alexander Udalov 795d6ab407 Migrate UseExperimental->OptIn in project sources 2020-03-10 12:07:14 +01:00
simon.ogorodnik f405b3f827 [FIR] Reorganize ConeKotlinTypeProjection hierarchy 2020-02-27 19:07:16 +03:00
Dmitriy Novozhilov 89e377763a [FIR] Change rendering for captured types and stub types 2020-02-18 15:19:33 +03:00
Dmitriy Novozhilov 57a1342aac [FIR] Fix creating DefinitelyNotNullTypes
Also fix substitutions to them
2020-01-28 14:14:21 +03:00
Dmitriy Novozhilov 4303cd2fc7 [FIR] Put rendering of cone types in one place and change render for error types 2020-01-28 14:14:21 +03:00
Dmitriy Novozhilov 7d8363d6aa [FIR] Use Function<R> as super type for all FunctionNtypes 2020-01-28 14:14:20 +03:00
Dmitriy Novozhilov 4e0b54e1a6 [FIR] Add equality to ConeTypeVariableType 2020-01-21 12:06:34 +03:00
Denis Zharkov 4202c9c1a4 NI: Fix regression for star-projections approximation
See the test added

^KT-35703 Fixed
2020-01-14 17:35:24 +03:00
Simon Ogorodnik 13132e69a3 [FIR] Start enum entries reworking 2020-01-10 10:23:50 +03:00
Simon Ogorodnik 1715f1a864 [FIR] Refactoring: create use-site scopes via scope provider 2019-12-30 12:52:58 +03:00
Denis Zharkov 153d894afb FIR: Optimize ConeTypeContext::asSimpleType 2019-12-16 13:09:48 +03:00
Denis Zharkov a14852a6ec Minor. Make ConeClassLikeTypeImpl final 2019-12-16 13:09:48 +03:00
Dmitriy Novozhilov 4faa2c0c2c [FIR] Replace static cone types for integers with default classIds in ILT 2019-12-12 16:11:47 +03:00
Mark Punzalan 692a83f7bb [FIR] Add FirCheckNotNullCall converted to CHECK_NOT_NULL intrinsic
function call.
2019-12-11 16:54:15 +03:00
Dmitriy Novozhilov b76c984b26 [FIR] Support IntegerLiteralTypes 2019-12-09 17:24:26 +03:00
Denis Zharkov db24d4ac9a FIR: Drop ConeTypeAliasLookupTag 2019-11-20 18:02:08 +03:00
Denis Zharkov 38500d27e8 FIR: Add cache for expanded types 2019-11-20 18:02:07 +03:00
Denis Zharkov 159aefd26d FIR: Refactor Cone types
- Get rid of AbbreviatedType
2019-11-20 17:57:35 +03:00
Denis Zharkov e03162f2dd FIR: Rename ConeClassTypeImpl -> ConeClassLikeTypeImpl 2019-11-20 17:55:23 +03:00
Simon Ogorodnik 6e8f8f9a65 [FIR] Partially support raw types 2019-11-19 16:50:40 +03:00
Mikhail Glukhikh bd70daa3d1 FIR Java: use definitely not-null types for type parameters
We support & use ConeDefinitelyNotNullType more properly here
2019-11-14 19:10:59 +03:00
Dmitriy Novozhilov 4733c78a6a [FIR] Add toString() to ErrorTypeConstructor and ConeClassifierLookupTag 2019-11-14 18:33:47 +03:00
Dmitriy Novozhilov e910653d6f [FIR] Add pretty rendering of functional types 2019-11-08 12:12:39 +03:00
Mikhail Zarechenskiy b30a9e1d3e [NI] Remove capturing from supertypes during computation of CST 2019-10-31 11:32:05 +03:00
Mikhail Zarechenskiy 77577dfa6f [FIR] Introduce ConeStubType to have subtyping for non-fixed variables
Currently, it's needed after changes in d7b47108f70a107818a04c8b8db33bfbf7c7e590

 Later it'll be also used for builder-inference
2019-10-31 11:32:03 +03:00
Denis Zharkov fe8cd195aa FIR: Support callable references outside of the calls
^KT-32725 In Progress
2019-10-28 17:07:15 +03:00
Denis Zharkov 006e475a99 FIR: Support callable references partially
^KT-32725 In Progress
2019-10-28 17:04:48 +03:00
Denis Zharkov fb4b6b8290 FIR: Move constructor processing from scopes to tower resolvers 2019-09-18 10:03:28 +07:00
Mikhail Glukhikh 20c45a8382 FIR general refactoring: get rid of ConeSymbols 2019-09-16 16:55:42 +03:00
Dmitriy Novozhilov e4938c6c36 [FIR] Remove status map from intersection type 2019-08-30 11:10:31 +03:00
Dmitriy Novozhilov e48959350c [FIR] Infer type of when expressions and try expressions like it is function call 2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov 637fb55a7b [FIR] Add implementation of intersection types to Fir type system 2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov e6bf3b3263 [FIR] Render nullability in type renderer, not in fir renderer 2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov 6e2958880b [FIR] Add forgotten replacing arguments in abbreviated type expansion 2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov 3c7b25b8c9 [FIR] Minor. Cleanup code in ConeTypes.kt 2019-07-30 16:28:15 +03:00
Dmitriy Novozhilov 43e7f54fae [FIR] Add string representation for ConeKotlinType
`ConeKotlinType.render` moved from `tree` module to `types` module
2019-07-30 16:28:15 +03:00
Mikhail Glukhikh 213f951da3 FIR: partial implementation of delegate resolve #KT-32217 Fixed 2019-07-25 09:46:34 +03:00
Simon Ogorodnik 321e948eca [FIR] Improve typing to get rid of cast 2019-06-18 11:14:57 +03:00
Simon Ogorodnik 146a53f18c Change lookup tags from interfaces to abstract classes 2019-06-10 11:03:09 +03:00
Denis Zharkov 373283dcae FIR: Cache ConeClassifierSymbol in ConeClassLikeLookupTagImpl 2019-06-10 11:03:08 +03:00
Mikhail Glukhikh 3cede7e827 Make FIR cone flexible type data class to improve constraint comparison 2019-05-28 10:19:08 +03:00
Simon Ogorodnik 9266a2cdba Add equals/hashCode to some FIR cone types 2019-05-23 14:02:08 +03:00
Simon Ogorodnik 861ea6a30f Provide hashCode and equals for lookup tag based types 2019-04-30 18:45:50 +03:00
Simon Ogorodnik 6f9f9fc087 FIR types: relax requirements around flexible types 2019-04-30 18:45:49 +03:00
Mikhail Glukhikh 5bf489327d Minor fix of around flexible and not-null FIR types (by semoro) 2019-04-30 18:45:47 +03:00
Simon Ogorodnik 9dcf8f836a FIR: support varargs in resolve 2019-04-30 18:45:44 +03:00
Simon Ogorodnik b38f3a1272 Replace ConeFunctionType with ConeClassType 2019-04-30 18:45:36 +03:00