I want to use @OneOf
annotation from package io.dropwizard.validation;
Java usage:
@OneOf(value = {"m", "f"})
Kotlin usage: ???
I've tried this:
@OneOf(value = arrayOf("m", "f"))
and this:
@OneOf(value = ["m", "f"])
(EDIT: this example works since Kotlin 1.2, it supports array literal in annotation, thanks @BakaWaii)
All i get is :
Type inference failed. Expected type mismatch:
required: String
found:
Array<String>
Kotlin version: 1.1.2-2
The value
parameter is automatically converted to a vararg parameter in Kotlin, as described in http://kotlinlang.org/docs/reference/annotations.html#java-annotations.
The correct syntax for this particular case is @OneOf("m", "f")