What are the backticks used for in the snippet below?
Why add them around the fun is(amount:Int ):Boolean { ... }?
fun is(amount:Int ):Boolean { ... }
verifier.`is`(amount)
It's because is is a reserved keyword in Kotlin. Since Kotlin is supposed to be interoperable with Java and is is a valid method (identifier) name in Java, the backticks are used to escape the method so that it can be used as a method without confusing it as a keyword. Without it it will not work because it would be invalid syntax.
is
This is highlighted in the Kotlin documentation:
Escaping for Java identifiers that are keywords in Kotlin Some of the Kotlin keywords are valid identifiers in Java: in, object, is, etc. If a Java library uses a Kotlin keyword for a method, you can still call the method escaping it with the backtick (`) character foo.`is`(bar)
Some of the Kotlin keywords are valid identifiers in Java: in, object, is, etc. If a Java library uses a Kotlin keyword for a method, you can still call the method escaping it with the backtick (`) character
in
object
foo.`is`(bar)
1.4m articles
1.4m replys
5 comments
57.0k users