Chris Smowton
8acf7d74c1
Restore check for Array<T> type argument
2022-05-10 19:51:02 +01:00
Chris Smowton
dd3bb053e5
Add extracted array length and clone members
2022-05-10 19:51:02 +01:00
Chris Smowton
d62af44baa
Extract array type inheritence graph
2022-05-10 19:51:02 +01:00
Chris Smowton
23553f15ee
Arrays: extract dimensionality
2022-05-10 19:51:01 +01:00
Chris Smowton
c571657fb1
Abbreviate array test
2022-05-10 19:51:01 +01:00
Chris Smowton
f1a3c9ca20
Arrays: note TODOs
2022-05-10 19:51:01 +01:00
Chris Smowton
2cc5f3e5b7
kt_*_types tables: cite correct Kotlin classid for arrays
2022-05-10 19:51:01 +01:00
Chris Smowton
b926521e7a
Only write arrays table on first usage
2022-05-10 19:51:01 +01:00
Chris Smowton
055e9b7797
Convert primitive arrays to Java arrays
2022-05-10 19:51:01 +01:00
Chris Smowton
a92e20e526
Extract nullable arrays as Java arrays
...
Nullability doesn't matter to this conversion since Java's arrays are reftypes
2022-05-10 19:51:01 +01:00
Ian Lynagh
80e2140ca7
Kotlin: Add TrapWriter.writeComment
2022-05-10 19:51:01 +01:00
Ian Lynagh
8853489f04
Kotlin: Add a "generted by" field to the diagnostics table
2022-05-10 19:51:01 +01:00
Ian Lynagh
512e4ce41e
Kotlin: Fix bug in DB scheme generator
2022-05-10 19:51:01 +01:00
Ian Lynagh
be75d30ee0
Kotlin: Add support for varargs
2022-05-10 19:51:01 +01:00
Ian Lynagh
bdaa3ce2b3
Kotlin: Add support for companion objects
2022-05-10 19:51:01 +01:00
Ian Lynagh
f726e6acf8
Kotlin: Fix handling of objects in external dependencies
2022-05-10 19:51:01 +01:00
Ian Lynagh
b460c92c61
Kotlin: Add modifiers to object INSTANCEs
2022-05-10 19:51:01 +01:00
Ian Lynagh
112fac6286
Kotlin: We only support non-companion objects for now
2022-05-10 19:51:01 +01:00
Ian Lynagh
e5cd32bdfe
Kotlin: Get the tests passing again
2022-05-10 19:51:01 +01:00
Ian Lynagh
ceb1e57ddd
Kotlin: Add support for objects
2022-05-10 19:51:01 +01:00
Tamás Vajk
35a15d7eb4
Fix typo
2022-05-10 19:51:01 +01:00
Ian Lynagh
87b433142c
Kotlin: Add support for Kotlin type aliases
2022-05-10 19:51:01 +01:00
Ian Lynagh
8330a404df
Kotlin: Add warning location to warnings
...
This also tweaks how the "too many warnings" logic works
2022-05-10 19:51:01 +01:00
Ian Lynagh
41d4c21910
Kotlin: Add a warning
2022-05-10 19:51:01 +01:00
Ian Lynagh
9b3f36d1ae
Kotlin: Remove useTypeOld
2022-05-10 19:51:00 +01:00
Ian Lynagh
e61ff60bf8
Kotlin: Add KotlinType to ExtensionMethod
2022-05-10 19:51:00 +01:00
Ian Lynagh
6cf0b755f0
Kotlin: Add KotlinType to localvars
2022-05-10 19:51:00 +01:00
Ian Lynagh
06a41b3923
Kotlin: Add KotlinTypes to arrays
2022-05-10 19:51:00 +01:00
Ian Lynagh
ef22194eed
Kotlin: Add KotlinType to params
2022-05-10 19:51:00 +01:00
Ian Lynagh
0d5e471b96
Kotlin: Give methods and constructors a KotlinType
2022-05-10 19:51:00 +01:00
Ian Lynagh
c20ee76826
Kotlin: Give fields a Kotlin type
...
This meant refactoring the EnumEntry extraction a bit. The IR doesn't
give us a type for fields, so we have to make it up based on the parent.
2022-05-10 19:51:00 +01:00
Ian Lynagh
b3a28af319
Kotlin: Move extractTypeParameter back to KotlinFileExtractor
2022-05-10 19:51:00 +01:00
Ian Lynagh
7421e95816
Kotlin: Pull more out into KotlinUsesExtractor
2022-05-10 19:51:00 +01:00
Ian Lynagh
b381556a06
Kotlin: Fix up things that got pulled out into KotlinUsesExtractor
2022-05-10 19:51:00 +01:00
Ian Lynagh
a5a42b4416
Kotlin: Refactor so that we can't give locations to "used" things
...
Things we use may not be in the same file as us, so we aren't able to
generate valid locations for them.
2022-05-10 19:51:00 +01:00
Ian Lynagh
960c436824
Kotlin: Call extractClassCommon later
...
This fixes a "Missing type parameter label" warning from the extractor
with
interface Foo<T>
class Bar<T>: Foo<T> { }
caused by the `: Foo<T>` being extracted before extracting the `T`
in `Bar<T>`.
2022-05-10 19:51:00 +01:00
Ian Lynagh
6c957284de
Kotlin: Add support for enum value accesses
2022-05-10 19:51:00 +01:00
Ian Lynagh
976cc31c7a
Kotlin: Add support for string templates
2022-05-10 19:50:59 +01:00
Ian Lynagh
81fd7c735a
Kotlin: Add suport for enum classes
2022-05-10 19:50:59 +01:00
Ian Lynagh
2b01c5d825
Kotlin: Follow changes in main
2022-05-10 19:50:59 +01:00
Chris Smowton
97f380eddc
Don't abort external class extraction after first duplicate
2022-05-10 19:50:59 +01:00
Ian Lynagh
e8fd9ed948
Kotlin: Add a warning suppression
2022-05-10 19:50:59 +01:00
Ian Lynagh
cbd265ab7a
Kotlin: Add support for try statements
2022-05-10 19:50:59 +01:00
Ian Lynagh
6b5663df46
Kotlin: Handle Short and Byte literals
...
I don't think we need separate DB types for them
2022-05-10 19:50:59 +01:00
Ian Lynagh
ba335b0c69
Kotlin: Add StmtExpr
...
In some contexts, Kotlin has what we would call a Stmt inside what we
would call an Expr. This allows us to handle this case.
2022-05-10 19:50:59 +01:00
Ian Lynagh
2ba8ccafa9
Kotlin: Make build compatible with older javac's
2022-05-10 19:50:59 +01:00
Ian Lynagh
9a886260cd
Kotlin: Add support for IMPLICIT_COERCION_TO_UNIT
2022-05-10 19:50:59 +01:00
Ian Lynagh
46e55f5990
Kotlin: Add support for IMPLICIT_NOTNULL
2022-05-10 19:50:59 +01:00
Chris Smowton
dfa9bef5bd
Fix gradle homedir search
2022-05-10 19:50:59 +01:00
Ian Lynagh
a6c504abe3
Kotlin: Add support for implicit casts
2022-05-10 19:50:59 +01:00