diff --git a/doc/vim9class.jax b/doc/vim9class.jax index a8d774ead..d713238d2 100644 --- a/doc/vim9class.jax +++ b/doc/vim9class.jax @@ -1,4 +1,4 @@ -*vim9class.txt* For Vim バージョン 9.1. Last change: 2025 Apr 05 +*vim9class.txt* For Vim バージョン 9.1. Last change: 2025 Apr 13 VIMリファレンスマニュアル by Bram Moolenaar @@ -1053,6 +1053,21 @@ Note 列挙型内の列挙値の順序が変更されると、その序数の値 public const ordinal: number endclass < +enum には、通常のクラスと同様にオブジェクト変数とメソッドを含めることができる: +> + enum Color + Cyan([0, 255, 255]), + Magenta([255, 0, 255]), + Gray([128, 128, 128]) + + var rgb_values: list + + def Get_RGB(): list + return this.rgb_values + enddef + endenum + echo Color.Magenta.Get_RGB() +< ============================================================================== 9. 論理的根拠 diff --git a/en/vim9class.txt b/en/vim9class.txt index 5d6f7fca1..519545677 100644 --- a/en/vim9class.txt +++ b/en/vim9class.txt @@ -1,4 +1,4 @@ -*vim9class.txt* For Vim version 9.1. Last change: 2025 Apr 05 +*vim9class.txt* For Vim version 9.1. Last change: 2025 Apr 13 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1067,6 +1067,22 @@ The above enum definition is equivalent to the following class definition: > public const ordinal: number endclass < +A enum can contain object variables and methods just like a regular +class: > + + enum Color + Cyan([0, 255, 255]), + Magenta([255, 0, 255]), + Gray([128, 128, 128]) + + var rgb_values: list + + def Get_RGB(): list + return this.rgb_values + enddef + endenum + echo Color.Magenta.Get_RGB() +< ============================================================================== 9. Rationale