class HEXAGRAM_NAMES_I
Chinese names for I Ching hexagrams
note
description: "Chinese names for I Ching hexagrams"
author: "Finnian Reilly"
copyright: "Copyright (c) 2001-2022 Finnian Reilly"
contact: "finnian at eiffel hyphen loop dot com"
license: "MIT license (See: en.wikipedia.org/wiki/MIT_License)"
date: "2025-05-03 9:26:13 GMT (Saturday 3rd May 2025)"
revision: "20"
deferred class
HEXAGRAM_NAMES_I
inherit
EL_ROUTINES
feature {NONE} -- Access
i_th_combined (i: INTEGER): ZSTRING
-- combined pinyin and hanzi characters
-- Eg. "Qián (屯)"
do
Result := Combined #$ [i_th_pinyin_name (i), i_th_hanzi_characters (i)]
end
i_th_pinyin_name (i: INTEGER): IMMUTABLE_STRING_32
require
matches_number: Name_grid.i_th_cell (i, 1).same_string (i.out)
do
Result := Name_grid.i_th_cell (i, 2)
end
i_th_hanzi_characters (i: INTEGER): IMMUTABLE_STRING_32
require
matches_number: Name_grid.i_th_cell (i, 1).same_string (i.out)
do
Result := Name_grid.i_th_cell (i, 3)
end
feature {NONE} -- Constants
Combined: ZSTRING
once
Result := "%S (%S)"
end
Name_grid: EL_IMMUTABLE_STRING_32_GRID
once
create Result.make (3, Name_manifest)
end
Name_manifest: STRING_32 = "[
1, Qián, 乾,
2, Kūn, 坤,
3, Zhūn, 屯,
4, Méng, 蒙,
5, Xū, 需,
6, Sòng, 訟,
7, Shī, 師,
8, Bǐ, 比,
9, Xiǎo Chù, 小畜,
10, Lǚ, 履,
11, Tài, 泰,
12, Pǐ, 否,
13, Tóng Rén, 同人,
14, Dà Yǒu, 大有,
15, Qiān, 謙,
16, Yù, 豫,
17, Suí, 隨,
18, Gŭ, 蠱,
19, Lín, 臨,
20, Guān, 觀,
21, Shì Kè, 噬嗑,
22, Bì, 賁,
23, Bō, 剝,
24, Fù, 復,
25, Wú Wàng, 無妄,
26, Dà Chù, 大畜,
27, Yí, 頤,
28, Dà Guò, 大過,
29, Kǎn, 坎,
30, Lí, 離,
31, Xián, 咸,
32, Héng, 恆,
33, Dùn, 遯,
34, Dà Zhuàng, 大壯,
35, Jìn, 晉,
36, Míng Yí, 明夷,
37, Jiā Rén, 家人,
38, Kuí, 睽,
39, Jiǎn, 蹇,
40, Xiè, 解,
41, Sǔn, 損,
42, Yì, 益,
43, Guài, 夬,
44, Gòu, 姤,
45, Cuì, 萃,
46, Shēng, 升,
47, Kùn, 困,
48, Jǐng, 井,
49, Gé, 革,
50, Dǐng, 鼎,
51, Zhèn, 震,
52, Gèn, 艮,
53, Jiàn, 漸,
54, Guī Mèi, 歸妹,
55, Fēng, 豐,
56, Lǚ, 旅,
57, Xùn, 巽,
58, Duì, 兌,
59, Huàn, 渙,
60, Jié, 節,
61, Zhōng Fú, 中孚,
62, Xiǎo Guò, 小過,
63, Jì Jì, 既濟,
64, Wèi Jì, 未濟
]"
end