Merge pull request #10633 from igfoo/igfoo/ministdlib

Kotlin: Add a ministdlib test
This commit is contained in:
Ian Lynagh
2022-10-14 15:22:21 +01:00
committed by GitHub
5 changed files with 46 additions and 0 deletions

View File

@@ -0,0 +1,33 @@
package kotlin
/*
This is a mini standard library replacement, to make it easy to write
very small tests that create very small databases.
If you define a class, then you will need to also define any members that
compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/descriptors/IrBuiltInsOverDescriptors.kt
expects (e.g. with findFunctions(...).first) to exist.
*/
public open class Any {
fun toString(): String { return this.toString() }
open operator fun equals(other: Any?): Boolean { return this.equals(other) }
}
public class String {
operator fun plus(other: Any?): String { return this.plus(other) }
}
public class Boolean {
operator fun not(): Boolean { return this.not() }
}
public class Int {
operator fun plus(other: Int): Int { return this.plus(other) }
operator fun times(other: Int): Int { return this.times(other) }
infix fun xor(other: Int): Int { return this.xor(other) }
}
public object Unit {
}

View File

@@ -0,0 +1 @@
class MyClass {}

View File

@@ -0,0 +1,7 @@
| MiniStdLib.kt:12:1:15:1 | Any |
| MiniStdLib.kt:17:1:19:1 | String |
| MiniStdLib.kt:21:1:23:1 | Boolean |
| MiniStdLib.kt:25:1:29:1 | Int |
| MiniStdLib.kt:31:1:32:1 | Unit |
| MyClass.kt:1:1:1:16 | MyClass |
| file://:0:0:0:0 | FakeKotlinClass |

View File

@@ -0,0 +1,4 @@
import java
from Class c
select c

View File

@@ -0,0 +1 @@
codeql-extractor-kotlin-options: -no-jdk -no-reflect -no-stdlib -Xallow-kotlin-package