2024年11月21日くいなちゃん


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

1Kuinの列挙型

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

enum 名前

    要素名1

    要素名2

    要素名3 :: 要素の値

    

end enum

図1-1: 列挙型定義
列挙型の要素はそれぞれint型の値を持ち、他の型にキャストした場合にはその値になります。 要素の値は明示的に指定できますが、省略することもできます。
列挙型の仕様は図1-2の通りです。
  • 要素の値はコンパイル時に定数に確定できなければならない。
  • 要素の値は重複してはならない。
  • 要素の値を明示的に指定しなかった場合は先頭から順に「0、1、2、3、…」と0から始めて1ずつ増やしながら設定される。
  • 要素の値を明示的に指定した場合は指定した値になり、その後指定しなかった場合はその値から始めて1ずつ増やしながら設定される。
図1-2: 列挙型の仕様
列挙型の要素を式の中で参照するには、「%要素名」とします(図1-3)。
  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-3: 列挙型の例
1732192589jaf