Chiba Logo CHIBA v0.6.13
CHIBA blog RSS feed
CHIBA / DOCS / LEVEL-1 SPEC

Indexing

这里集中展示 CHIBA level-1 specification,覆盖 core language、control flow、memory、patterns、IR lowering 与 package system 等实现边界。

The docs surface keeps CHIBA level-1 specification pages browsable inside the site, with direct paths into language, control flow, memory, pattern, and lowering rules.

Indexing

语法

indexing 使用方括号语法访问元素。

语义

indexing 作用于支持索引的容器或视图类型。

多行 indexing 可以在未闭合的 [ ] 内部跨行继续;行结束不会在未闭合索引内部终止当前表达式。

level-1 为 array / slice / vector / map / string family 统一提供 indexing surface。

但“统一 surface”不等于“统一返回语义”。

对字符串:

  • 主 indexing 不做 codepoint 级随机访问承诺
  • 主 slicing 按字节区间工作,并要求区间端点位于 UTF-8 边界
  • codepoint 访问通过显式 API 提供,而不是由 text[i] 承担

因此,字符串的 O(1) 承诺属于 byte/boundary 级视图操作,而不是 codepoint 级随机访问。

Usage

let xs = arr[0]
let part = text[0..4]
let cp = text.codepoint_at(0)

注释:arr[0]text[0..4] 共享 indexing surface;但字符串的文本级访问通过 codepoint_at 暴露,而不是把 text[i] 解释成 codepoint 索引。

边界

indexing 仍可参与 operator overloading;多维 indexing 只是该 surface 的重复应用,而不是单独语法类别。