渲染zh-Hans

目标兼容性

Faber 是一门语言,但有多个编译契约。本页是经过测量的可下沉能力矩阵: 对于 corpus 中的每个术语,列出哪些目标可以下沉它,以及支持程度。

策略动词(支持 / 擦除 / 警告 / 拒绝 / 推迟)和管线路由位于 Codegen targets。本页是下面表格中的大型可扫描 行列表 — HIR 应用通道目标与 MIR 系统通道目标并列显示。

实时 CLI 摘要:faber targets。

渲染时间:unknown,由 faber/scripta/render-matrices.py 基于 radix 测量 JSON 渲染 — 请勿编辑。 测量:emit_hir_target_matrix + emit_mir_target_matrix(进程内完成,不使用外部 toolchain)。 连接:corpus/index.toml 中的 terms → exempla。

这是官方生成的 grammar×target 支持矩阵。它报告 exempla corpus 中每个 term 的可下沉能力 — target X 是否能够下沉 grammar production Y。运行时 语义(擦除/警告/推迟策略动词)、各目标契约和管线路由位于 Codegen targets;该文档链接回本页以查看这些行。

图例#

符号含义
✓完全支持 — 该术语的所有可分析 exempla 都能下沉
◐部分支持 — 部分 exempla 能下沉,部分存在已测量的缺口
○计划中 — 尚未下沉;使用整理后的覆盖文件 (scripta/ebnf-matrix-overrides.toml)
✕不支持 — 没有 exempla 能下沉;按默认事实,已测量的缺口确实存在
—未测量 — 此 lane 上没有该术语的可分析 exempla

✓ 表示使用该术语的 corpus exempla 能够下沉到目标。它不保证运行时语义 完全相同。某些目标会对特定构造进行擦除或警告(例如 Go 会擦除借用 模式 借自/传入/取自)— 这些构造仍在此显示为 ✓,因为它们能够下沉。具体 差异请参阅策略文档。

Corpus 总览(所有已注册术语)#

应用通道(HIR → 输出的源语言)

目标可支持可分析%
rust37337899%
go34737892%
ts378378100%
faber378378100%

系统通道(MIR → 设备/IR 产物)

目标可支持可分析%
llvm-text33437390%
wasm-text26337371%
wasm26337371%
sexp-struct30037380%
sexp29937380%
runner31737385%

关键字 — 应用通道#

关键字#

术语rustgotsfaber
范围✓✓✓✓
调用✓✕✓✓
断言✓✓✓✓
迄✓✓✓✓
原子✕✓✓✓
参数✓✓✓✓
布尔✓✓✓✓
捕获✓✓✓✓
情况✓✓✓✓
让出✓✓✓✓
其余✓✓✓✓
默认✓✓✓✓
闭包✓✓✓✓
命令行✓✓✓✓
集合✓✓✓✓
迭代器✓✓✓✓
守护✓✓✓✓
借自✓✓✓✓
描述✓✓✓✓
匹配✓✓✓✓
判别✓✓✓✓
当✓✓✓✓
自身✓✓✓✓
选择✓✓✓✓
勘误✓✓✓✓
是✓✓✓✓
取自✓✓✓✓
退出✓✓✓✓
执行✓✓✓✓
假✓✓✓✓
异流✓✓✓✓
异步✓✓✓✓
等定✓✓✓✓
构造✓✓✓✓
流✓✓✓✓
常量✓✓✓✓
易碎✓✓✓✓
小数✓✓✓✓
函数✓✓✓✓
未来✓✓✓✓
预期✓✓✓✓
静态✓✓✓✓
类✓✓✓✓
抛错✓✓✓✓
可抛✓✓✓✓
未知✓✓✓✓
不变✓✓✓✓
实现✓✓✓✓
导入✓✓✓✓
传入————
嵌入✓✓✓✓
异步入口✓✓✓✓
入口✓✓✓✓
时刻✓✓✓✓
遍历✓◐✓✓
读取✓✓✓✓
行✓✓✓✓
列表✓✓✓✓
矩阵✓✕✓✓
警告✓✓✓✓
崩溃✓✓✓✓
空类型✓✓✓✓
永不✓✓✓✓
整数✓◐✓✓
非✓✓✓✓
跳过✓✓✓✓
全部✓✓✓✓
操作数✓✓✓✓
选项✓✓✓✓
可选项✓✓✓✓
枚举✓✓✓✓
字节✓✓✓✓
契约✓✓✓✓
步✓✓✓✓
继续✓✓✓✓
收尾✓✓✓✓
异步收尾✓✓✓✓
prae✓✓✓✓
前缀✓✓✓✓
备置✓✓✓✓
异步备置✓✓✓✓
期约✓✓✓✓
私有✓✓✓✓
测试✓✓✓✓
验题✓✓✓✓
保护————
公开✓✓✓✓
ratio✓✓✓✓
返回✓✓✓✓
等返✓✓✓✓
重复✓✓✓✓
需求✓✓✓✓
拒绝✓✓✓✓
中断✓✓✓✓
写入✓✓✓✓
格式化✓✓✓✓
否则✓✓✓✓
如果✓✓✓✓
否则如果✓✓✓✓
设✓✓✓✓
仅于✓✓✓✓
仅✓✓✓✓
展开✓✓✓✓
可选✓✓✓✓
selective_import✓✓✓✓
静默✓✓✓✓
等弃✓✓✓✓
映射✓✓✓✓
标签✓✓✓✓
时限✓✓✓✓
张量✓✓✓✓
文本✓✓✓✓
类型✓✓✓✓
全局✓✓✓✓
到✓✓✓✓
作为✓✓✓✓
变量✓✓✓✓
等变✓✓✓✓
向量✓◐✓✓
无值✓✓✓✓
真✓✓✓✓
查看✓✓✓✓

运算符 — 应用通道#

运算符组#

术语rustgotsfaber
⊜✓✓✓✓
∧✓✓✓✓
·◐◐✓✓
×✓○✓✓
⊗✓○✓✓
⊙✓◐✓✓
→✓✓✓✓
⇥✓✓✓✓
←✓✓✓✓
↤✓✓✓✓
⊥✓✓✓✓
或✓✓✓✓
![✓✓✓✓
!.✓✓✓✓
≠✓✓✓✓
!(✓✓✓✓
⊻✓✓✓✓
↦◐✓✓✓
⇒✓✓✓✓
‥✓✓✓✓
…✓✓✓✓
≡✓✓✓✓
=✓✓✓✓
且✓✓✓✓
≥✓✓✓✓
∈✓✓✓✓
≤✓✓✓✓
↓✓✓✓✓
模数<u16>✓✕✓✓
模数<u32>✓✕✓✓
模数<u64>✓✕✓✓
模数<u8>✓✕✓✓
is not✓✓✓✓
⊚✓✓✓✓
∨✓✓✓✓
∪✓✓✓✓
↑✓✓✓✓
?[✓✓✓✓
?.✓✓✓✓
?(✓✓✓✓
§✓✓✓✓
✓✓✓✓✓
⇐✓✓✓✓
⊘✓✓✓✓
⊛✓✓✓✓
¬✓✓✓✓
兜底✓✓✓✓
∷✓✓✓✓
∴✓✓✓✓
则✓✓✓✓

关键字 — 系统通道#

关键字#

术语llvm-textwasm-textwasmsexp-structsexprunner
范围✓✓✓✓✓✓
调用✓✕✕✕✕✓
断言✓✓✓✓✓✓
迄✓✓✓✓✓✓
原子✕✕✕✕✕✕
参数✓✓✓✓✓✓
布尔✓✓✓✓✓✓
捕获✓✓✓◐◐✓
情况✓✓✓✓✓✓
让出✓✓✓✕✕✓
其余✓✓✓✓✓✓
默认✓✓✓✓✓✓
闭包◐◐◐◐◐✓
命令行✓✓✓✓✓✓
集合✓✓✓✕✕✓
迭代器✓✓✓✕✕✓
守护✓✓✓✓✓✓
借自——————
描述✓✓✓✓✓✓
匹配✓✓✓✓✓✓
判别✓✓✓✓✓✓
当✓✓✓✓✓✓
自身✓✓✓✓✓✓
选择✓✓✓✓✓✓
勘误✓✓✓✓✓✕
是✓✕✕✓✓✓
取自◐◐◐◐◐✓
退出✓✓✓✓✓✓
执行✓✓✓✓✓✓
假✓✓✓✓✓✓
异流✓✓✓✕✕✓
异步✓✓✓✓✓✓
等定✓✓✓✓✓✓
构造✓✓✓✓✓✓
流✓✓✓✕✕✓
常量✓✓✓✓✓✓
易碎✓✓✓✓✓✕
小数✓✓✓✓✓✓
函数✓◐◐✓✓◐
未来✓✓✓✓✓✓
预期✓✓✓✓✓✕
静态✓✓✓✓✓✓
类◐◐◐◐◐✓
抛错✓◐◐✓✓✓
可抛✓✓✓✓✓✓
未知✓✓✓✓✓✓
不变✓✓✓✓✓✕
实现✓◐◐◐◐✓
导入✓◐◐◐◐◐
传入——————
嵌入✓✓✓✓✓✓
异步入口✓✓✓✓✓✓
入口✓✓✓✓✓✓
时刻✓✕✕✕✕◐
遍历◐◐◐◐◐✓
读取✓✓✓✕✕✓
行✓✓✓✓✓✓
列表◐◐◐◐◐✓
矩阵✕✕✕✓✓✕
警告✓✓✓✓✓✓
崩溃✓✓✓✓✓✓
空类型✓✓✓✓✓✓
永不✓✓✓✓✓✕
整数◐◐◐✓✓◐
非✓✓✓✓✓✓
跳过✓✓✓✓✓✕
全部✓✓✓✓✓✓
操作数✓✓✓✓✓✓
选项✓✓✓✓✓✓
可选项✓✓✓✓✓✕
枚举✓✓✓✓✓✓
字节✓◐◐◐◐◐
契约✓✓✓✓✓✓
步✓✓✓✓✓✓
继续✓✓✓✓✓✓
收尾✓✓✓✓✓✕
异步收尾✓✓✓✓✓✕
prae✓✓✓✓✓✕
前缀✓✓✓✓✓✓
备置✓✓✓✓✓✕
异步备置✓✓✓✓✓✕
期约✓✓✓✓✓✓
私有✓✓✓✓✓✓
测试✓✓✓✓✓✕
验题✓✓✓✓✓✕
保护——————
公开✓✓✓✓✓✓
ratio——————
返回✓✓✓✓✓◐
等返✓✓✓✓✓✓
重复✓✓✓✓✓✕
需求✓✕✕✓✓✓
拒绝✓✕✕✓✓✓
中断✓✓✓✓✓✓
写入✓✓✓✓✓✓
格式化✓✓✓✓✓✓
否则✓✓✓✓✓✓
如果✓✓✓✓✓✓
否则如果✓✓✓✓✓✓
设✓✓✓✓✓✓
仅于✓✓✓✓✓✕
仅✓✓✓✓✓✕
展开✓✓✓✓✓✓
可选✓✓✓✓✓✕
selective_import✓✓✓✓✓✓
静默✓✓✓✓✓✓
等弃✓✓✓✓✓✓
映射✓◐◐◐◐✓
标签✓✓✓✓✓✕
时限✓✓✓✓✓✕
张量◐◐◐◐◐◐
文本✓✓✓✕✕✓
类型✓✓✓✓✓✓
全局✓✓✓✓✓✓
到✓✓✓✓✓✓
作为✓✓✓✓✓✓
变量✓✓✓✓✓✓
等变✓✓✓✓✓✓
向量◐◐◐◐◐◐
无值✓✓✓✓✓✓
真✓✓✓✓✓✓
查看✓✓✓✓✓✓

运算符 — 系统通道#

运算符组#

术语llvm-textwasm-textwasmsexp-structsexprunner
⊜✓✓✓✓✓✓
∧✓✓✓✓✓✓
·◐◐◐✓✓◐
×✓○○✓✓✓
⊗○○○✓✓✓
⊙◐◐◐✓✓◐
→✓✕✕✓✓✓
⇥✓✕✕✓✓✓
←✓✓✓✓✓✓
↤✓✓✓✕✕✓
⊥✓✓✓✕✕✓
或✓✓✓✓✓✓
![✕✕✕✓✓✓
!.◐◐◐✓✓✓
≠✓✓✓✓✓✓
!(✕✕✕✓✓✓
⊻✓✓✓✓✓✓
↦◐◐◐◐◐◐
⇒✓✓✓✓✓✓
‥✓✓✓✓✓✓
…✓✓✓✓✓✓
≡✓✓✓✓✓✓
=✓✓✓✓✓✓
且✓✓✓✓✓✓
≥✓✓✓✓✓✓
∈✓◐◐✓✓✓
≤✓✓✓✓✓✓
↓✓✓✓✓✓✓
模数<u16>✓✓✓✓✓✓
模数<u32>✓✓✓✓✓✓
模数<u64>✓✓✓✓✓✓
模数<u8>✓✓✓✓✓✓
is not✓✓✓✓✓✓
⊚✓✓✓✓✓✓
∨✓✓✓✓✓✓
∪✓✓✓◐◐✓
↑✓✓✓✓✓✓
?[✕✕✕✓✓✓
?.✕✕✕✓✓✓
?(✕✕✕✓✓✓
§✓✓✓✓✓✓
✓✓✓✓✓✓✓
⇐✓✓✓✓✓✓
⊘✓◐◐✓✓✓
⊛✓✓✓✓✓✓
¬✓✓✓✓✓✓
兜底✓✓✓✓✓✓
∷✓✓✓◐◐✓
∴✓✓✓✓✓✓
则✓✓✓✓✓✓

其他术语(existing-home / 未指定)#

existing-home#

术语rustgotsfaber
alias✓✓✓✓
@✓✓✓✓
f16✕✓✓✓
forma✓✓✓✓
imperia✓✓✓✓
命令✓✓✓✓
元组✓✓✓✓
manifest✓✓✓✓
计量✓✓✓✓
named-holes✓✓✓✓
不稳定✓✓✓✓
对象✓✓✓✓
prima✓✓✓✓
string✓✓✓✓
block-string✓✓✓✓
targets✓✓✓✓
ultima✓✓✓✓
versio✓✓✓✓