...

Text file src/github.com/alecthomas/chroma/lexers/testdata/kotlin.actual

Documentation: github.com/alecthomas/chroma/lexers/testdata

     1package X
     2
     3import A
     4import B.*
     5
     6fun main(args: Array<String>) {
     7    val ` + "with spaces" + ` = "hello"
     8    val multiline = """1
     92"""
    10    StringBuilder().apply {
    11        append(multiline)
    12    }
    13    val unsigned = 0x00UL + 123u + 76.54
    14}
    15/*
    16*/
    17
    18fun nullable(nullable: String?): Int = nullable?.length ?: 0
    19
    20fun nullable2(nullable: String?): Int = nullable?.length ?: run {
    21    1 + 2
    22}
    23
    24val rawStringWithQuotes = """
    25Hello "example" ${1 + 2}
    26And now { Just the braces }
    27Escapes here don't work so this is just text \t \n \u1234 $ \$
    28"""
    29
    30fun returnsSomething(): Int {
    31    return "".length
    32}
    33
    34fun returnsSomethingElse(): Int = "\\\n".length
    35
    36val character = '"'
    37val escapedCharacter = '\"'
    38// escaping a double quote character inside a character is optional
    39val stringWithSingleQuote = "'"
    40
    41typealias MySecretAlias<A, B> = (A, B) -> Unit
    42
    43val impl : MySecretAlias<Int, Int> = { a, _ -> Unit }
    44
    45fun someOperators(a: Int, b: Int) {
    46    var c : Int = 123
    47    println("This is an example a = $a and the sum is ${a + b} ${ A.foo() }")
    48    println( a % b)
    49    println(c in a..b)
    50    
    51    a %= 2
    52	a && b
    53	a *= 2
    54	a++
    55	b+=2
    56	b--
    57	a-=1
    58	a /= 2
    59	a <= b
    60	b == a
    61	a >= b
    62	nullable!!
    63	a != b
    64	a || b
    65	a?.foo
    66	a ?: b
    67}
    68
    69class B // no braces
    70
    71data class C(
    72    val s: String
    73)
    74
    75fun moreOperators(arg: Any?) {
    76    when(arg) {
    77        !is Int -> { }
    78        is Number -> {}
    79        in emptyList<Int>() -> { }
    80    }
    81
    82    if(arg !== Boolean)
    83    	println(arg === Unit)
    84}
    85
    86@Target(AnnotationTarget.CLASS, AnnotationTarget.FUNCTION,
    87        AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.EXPRESSION)
    88@Retention(AnnotationRetention.SOURCE)
    89annotation class Annotated
    90
    91@Annotated class A {
    92    @Annotated fun a(
    93        @Annotated param: Int
    94    ) {
    95
    96        @Annotated val y = 0
    97
    98    }
    99}
   100
   101open class TUpper
   102fun <T: TUpper, R: Any?> generic() = 123
   103
   104class Holder <in A, out B, C: TUpper>
   105
   106class Holder2  <T>
   107
   108var holder1: Holder<Int, String, *>? = null
   109
   110class Some(
   111    val holder2: Holder<Int, String, *>? = null
   112) {
   113    var holder3: Holder<Int, String, *>? = null
   114    fun example() {
   115        var holder4: Holder<Int, String, *>? = null
   116    }
   117}
   118fun <T : Comparable<T>> sort(list: List<T>) {
   119    
   120}
   121
   122class X {
   123    companion object {
   124    }
   125    suspend inline fun <reified T>  generic(t: T) { print(T::class.simpleName) }
   126} // eof comment

View as plain text