بنقرة واحدة
cangjie-appendix
仓颉语言附录参考。当需要查阅仓颉语言的关键字列表、运算符优先级与结合性、运算符重载函数签名、运行时环境变量配置、包兼容性规则、TokenKind枚举类型时,应使用此 Skill。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
仓颉语言附录参考。当需要查阅仓颉语言的关键字列表、运算符优先级与结合性、运算符重载函数签名、运行时环境变量配置、包兼容性规则、TokenKind枚举类型时,应使用此 Skill。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
当需要构建鸿蒙应用项目时,使用此 Skill 执行构建流程。此 Skill 包含完整的构建命令、构建流程说明、构建失败处理流程。构建脚本会自动执行依赖安装、仓颉预编译、资源生成、编译、打包等步骤。
在鸿蒙应用(Cangjie)开发中,当需要使用 stdx 拓展库(如 crypto、encoding、net、log、actors 等),或在构建/链接阶段出现 stdx 相关错误时,使用此 Skill 获取/解压 stdx 包,并指导在 entry/cjpm.toml 中正确配置 bin-dependencies.path-option。
在进行仓颉工程或鸿蒙应用开发时的第一步,应该优先读取该SKILL,用来确定后续的开发步骤。
仓颉语言内置注解。当需要了解仓颉 SDK 提供的内置注解(@sourcePackage/@sourceFile/@sourceLine/@When/@FastNative/@Frozen/@Attribute/@Deprecated)的用途、语法和最优实践时,应使用此 Skill。
仓颉标准库 Array 类型详细指南。当需要了解 Array 的构造、元素访问、切片、拼接、查找、排序、拷贝、反转、映射、扁平化等操作的完整 API 和用法时,应使用此 Skill。
仓颉标准库 ArrayList 类型详细指南。当需要了解 ArrayList 的构造、增删改查、容量管理、切片、排序、迭代、与 Array 互转等操作的完整 API 和用法时,应使用此 Skill。
| name | cangjie-appendix |
| description | 仓颉语言附录参考。当需要查阅仓颉语言的关键字列表、运算符优先级与结合性、运算符重载函数签名、运行时环境变量配置、包兼容性规则、TokenKind枚举类型时,应使用此 Skill。 |
as、abstract、break、Bool、case、catch、class、const、continue、Rune、do、else、enum、extend、for、func、false、finally、foreign、Float16、Float32、Float64、if、in、is、init、import、interface、Int8、Int16、Int32、Int64、IntNative、let、mut、main、macro、match、Nothing、open、operator、override、prop、public、package、private、protected、quote、redef、return、spawn、super、static、struct、synchronized、try、this、true、type、throw、This、unsafe、Unit、UInt8、UInt16、UInt32、UInt64、UIntNative、var、VArray、where、while
共 19 个优先级级别(0 = 最高)
| 优先级 | 运算符 | 说明 | 结合性 |
|---|---|---|---|
| 0 | @ | 宏调用 | 右 |
| 1 | .、[]、() | 成员访问、索引、函数调用 | 左 |
| 2 | ++、--、? | 自增、自减、可选链 | 无 |
| 3 | !、-(一元) | 取反、取负 | 右 |
| 4 | ** | 幂运算 | 右 |
| 5 | *、/、% | 乘、除、取模 | 左 |
| 6 | +、- | 加、减 | 左 |
| 7 | <<、>> | 位移 | 左 |
| 8 | ..、..= | 半开区间、闭区间 | 无 |
| 9 | <、<=、>、>=、is、as | 比较、类型检查、类型转换 | 无 |
| 10 | ==、!= | 相等、不等 | 无 |
| 11 | & | 按位与 | 左 |
| 12 | ^ | 按位异或 | 左 |
| 13 | | | 按位或 | 左 |
| 14 | && | 逻辑与 | 左 |
| 15 | || | 逻辑或 | 左 |
| 16 | ?? | 空合并 | 右 |
| 17 | |>、~> | 管道、组合 | 左 |
| 18 | = 及所有复合赋值 | 赋值 | 无 |
| 运算符 | 签名 | 用法 |
|---|---|---|
[](取值) | operator func [](index: T): R | this[index] |
[](赋值) | operator func [](index: T, value!: V): Unit | this[index] = value |
() | operator func ()(params): R | this(params) |
! | operator func !(): R | !this |
-(一元) | operator func -(): R | -this |
** | operator func **(other: T): R | this ** other |
*、/、% | operator func *(other: T): R 等 | 二元算术 |
+、- | operator func +(other: T): R 等 | 加减 |
<<、>> | operator func <<(other: T): R 等 | 位移 |
<、<=、>、>= | operator func <(other: T): R 等 | 比较 |
==、!= | operator func ==(other: T): R 等 | 相等 |
&、^、| | operator func &(other: T): R 等 | 位运算 |
| 变量 | 说明 | 默认值 |
|---|---|---|
cjHeapSize | 最大堆大小 | 256MB |
cjRegionSize | 区域分配器线程本地缓冲区 | 64KB |
cjHeapUtilization | 堆利用率 | 0.8 |
cjGCInterval | GC 最小间隔 | 150ms |
cjBackupGCInterval | 备份 GC 触发间隔 | 240s |
| 变量 | 说明 | 默认值 |
|---|---|---|
cjProcessorNum | 最大仓颉线程并发数 | CPU 核数 |
cjStackSize | 线程栈大小 | 128KB |
| 变量 | 说明 | 默认值 |
|---|---|---|
MRT_LOG_LEVEL | 最低日志级别 | e(ERROR) |
MRT_LOG_PATH | 日志输出路径 | stdout/stderr |
cjHeapDumpOnOOM | OOM 时堆转储 | off |
a.b.c 与包版本 x.y.z:
a 和 x 均为 0 时:三个分量须完全匹配IncompatiblePackageExceptionTokenKind 枚举定义了仓颉语言的所有词法 token 类型,包括:
DOT、COMMA、LPAREN、RPAREN、LSQUARE、RSQUARE、LCURL、RCURL、COLON、SEMI 等ADD、SUB、MUL、DIV、MOD、EXP、INCR、DECRAND、OR、NOTBITAND、BITOR、BITXOR、LSHIFT、RSHIFTLT、GT、LE、GE、EQUAL、NOTEQ、IS、ASASSIGN 及所有复合赋值COALESCING、PIPELINE、COMPOSITION、QUEST、RANGEOP、CLOSEDRANGEOP、ARROW、DOUBLE_ARROW 等INT8INT64、UINT8UINT64、FLOAT16~FLOAT64、BOOLEAN、RUNE、NOTHING、UNIT 等IDENTIFIER、INTEGER_LITERAL、FLOAT_LITERAL、STRING_LITERAL、BOOL_LITERAL 等