Immutable JSON Kotlin Decoders This is simply a translation layer between kotlin functions and java functions. This should not be needed when Kotlin gets real SAM( Single Abstract Method) support.