| // Copyright (c) 2019, the R8 project authors. Please see the AUTHORS file | |
| // for details. All rights reserved. Use of this source code is governed by a | |
| // BSD-style license that can be found in the LICENSE file. | |
| package enumswitch | |
| enum class KDirection { | |
| North, | |
| South, | |
| East, | |
| West | |
| } | |
| fun direction1(direction: KDirection) = when (direction) { | |
| KDirection.North -> "N" | |
| KDirection.South -> "S" | |
| KDirection.East -> "E" | |
| KDirection.West -> "W" | |
| } | |
| // Different declaration order than direction1 or direction2 | |
| fun direction2(direction: KDirection) = when (direction) { | |
| KDirection.East -> "E" | |
| KDirection.North -> "N" | |
| KDirection.West -> "W" | |
| KDirection.South -> "S" | |
| } | |
| fun main(args: Array<String>) { | |
| println(direction1(KDirection.North)) | |
| println(direction1(KDirection.South)) | |
| println(direction1(KDirection.East)) | |
| println(direction1(KDirection.West)) | |
| println(direction2(KDirection.North)) | |
| println(direction2(KDirection.South)) | |
| println(direction2(KDirection.East)) | |
| println(direction2(KDirection.West)) | |
| } |