Kuina-chan

くいなちゃん2018年12月11日


プログラミング言語Kuin」の言語仕様6、列挙型についてです。

1Kuinの列挙型

Kuinでは、列挙型を表1-1のように定義します。
表1-1: 列挙型定義

enum 名前
    要素名1
    要素名2
    要素名3 :: 要素の値
    
end enum

列挙型の要素はそれぞれint型の値を持ち、他の型にキャストした場合にはその値になります。 要素の値は明示的に指定できますが、省略することもできます。
列挙型の仕様は図1-1の通りです。
  • 要素の値はコンパイル時に定数に確定できなければならない。
  • 要素の値は重複してはならない。
  • 要素の値を明示的に指定しなかった場合は先頭から順に「0、1、2、3、…」と0から始めて1ずつ増やしながら設定される。
  • 要素の値を明示的に指定した場合は指定した値になり、その後指定しなかった場合はその値から始めて1ずつ増やしながら設定される。
図1-1: 列挙型の仕様
列挙型の要素を式の中で参照するには、「%要素名」とします(図1-2)。
  1. enum Color
  2.   red
  3.   green
  4.   blue
  5. end enum
  6.  
  7. func main()
  8.   var color: @Color :: %red
  9. end func
図1-2: 列挙型の例
1544537474jaf