寻观「标准库」之书。
寻观「标准库」之「操作系统」之「文件系统」之书。
寻观「标准库」之「操作系统」之「路径」之书。
寻观「标准库」之「操作系统」之「命令行参数」之书。
寻观「标准库」之「操作系统」之「异步子进程」之书。
寻观「构建基础」之「包定位」之书。
寻观「包配置」之「包依赖」之书。
寻观「包配置」之「语言服务」之书。
寻观「构建基础」之「包上下文」之书。
寻观「构建基础」之「原生构建」之书。
寻观「包配置」之「配置数据」之书。
寻观「包配置」之「配置解析」之书。
寻观「豫构」之「自举包」之书。

「：文言：先索包名，后解所需，终授编译器。汉语：独立工具负责发现与包图，编译器负责实际编译和阶段调度。：」
「外部目录」者「新引用」授以「字符串」于『』也。
「目标所有者」者「新引用」授以「字符串」于『』也。
「编译器选项」者「新引用」授以「字符串」于『』也。
「输出选项」者「新引用」授以「字符串」于『』也。
「显式文件入口」者「新引用」授以「字符串」于『』也。
「并发选项」者「新引用」授以「整数」于（「在线处理器数量」于「元」）也。
「编译器附加参数」者「新引用」授以（「列」于「字符串」）于「罄」也。
「请求帮助」者「新引用」授以「爻」于「阴」也。

「帮助文本」者『豫构：包构建工具
用法：yy豫构 命令 [包名] [入口路径段…] [豫构选项] [-- 编译器参数…]
命令：发现 | 检查 包名 | 定位 包名 包名 模块… | 构建 包名 | 类型检查 包名
      文件 路径（按所属包构建） | 自举包 --输出 新目录（导出双种子）
选项：
  -h, --help          显示帮助，不扫描包或调用编译器
  --所有者 所有者名       指定目标包所有者
  --外部包目录 路径   指定外部包目录
  --编译器 路径       默认使用豫构旁的 yy4_bs
  --输出 路径         默认使用包中声明的程序名
  -j 数量             并发数（正整数）
编译器参数：用于构建、类型检查和文件命令，-- 之后按原顺序、原参数边界传递。
示例：yy豫构 构建 豫言编译器 -j 8 -- --do-not-load-cache
      yy豫构 类型检查 豫言编译器 -- --no-debug-print
-- 后的 -h / --help 属于编译器；输出和并发数建议使用豫构选项。
编译器的缓存选项不影响豫构的原生 C 缓存。』也。

「提取命令参数」乃化（「列」于「字符串」）而（「列」于「字符串」）也。
「提取命令参数」者会「参数」而鉴「参数」而
  有「罄」则「罄」
  「：文言：双短线后皆授编译器，不复拆之。汉语：保留带值选项、空格及后续分隔符，不再将它们当作包内入口。：」
  或有（「缀」于『--』于「余」）则（「写引用」于「编译器附加参数」于「余」；「罄」）
  或有（「缀」于『-h』于「余」）则（「写引用」于「请求帮助」于「阳」；「提取命令参数」于「余」）
  或有（「缀」于『--help』于「余」）则（「写引用」于「请求帮助」于「阳」；「提取命令参数」于「余」）
  或有（「缀」于『--所有者』于（「缀」于「值」于「余」））则（「确认短包名」于「值」；「写引用」于「目标所有者」于「值」；「提取命令参数」于「余」）
  或有（「缀」于『--外部包目录』于（「缀」于「值」于「余」））则（「写引用」于「外部目录」于「值」；「提取命令参数」于「余」）
  或有（「缀」于『--编译器』于（「缀」于「值」于「余」））则（「写引用」于「编译器选项」于「值」；「提取命令参数」于「余」）
  或有（「缀」于『--输出』于（「缀」于「值」于「余」））则（「写引用」于「输出选项」于「值」；「提取命令参数」于「余」）
  或有（「缀」于『-j』于（「缀」于「值」于「余」））则（
    虑「数」者「理解整数」于「值」而
    若「且」于（「大于」于「数」于「零」）于（「串相等」于（「整数表示」于「数」）于「值」）
    则（「写引用」于「并发选项」于「数」；「提取命令参数」于「余」）否则「发生事故」授以（「列」于「字符串」）于『并发数应为正整数』）
  或有（「缀」于「首」于「余」）则
    若「串开头是它吗」于『-』于「首」则「发生事故」授以（「列」于「字符串」）于（『未知选项或缺少选项值：』附「首」附『；编译器参数请放在 -- 之后；帮助见 -h』）
    否则「缀」于「首」于（「提取命令参数」于「余」）也。

「转绝对路径」乃化「字符串」而化「字符串」而「字符串」也。
「转绝对路径」者会「根」而会「路径」而
  若「路径名是绝对路径」于「路径」则「路径」否则「路径合并」于「根」于「路径」也。

「构建原生链接清单」乃化「已解析包图」而化「字符串」而「字符串」也。
「构建原生链接清单」者会「图」而会「工具链目录」而
  虑「编译工具」者「取得原生工具」于『clang』而
  虑「归档工具」者「取得原生工具」于『llvm-ar』而
  虑「头目录」者「路径合并」于「工具链目录」于『运行时支持库/原生』而
  虑「归档们」者「从左折叠」授以「包标识」授以（「列」于「字符串」）于（会「标识」而会「已有」而
    虑「包值」者「查包」于（「图」中「零」）于「标识」而
    虑「配置」者「包原生」于（「解析包文件」于（「包值」中「二」））而
    虑「包含」者「态射」授以「字符串」授以「字符串」于（「配置」中「一」）于
      （会「目录」而「确认原生包路径」于（「图」中「零」）于「包值」于「阳」于「目录」）而
    虑「对象们」者「态射」授以「字符串」授以「字符串」于（「配置」中「零」）于（会「源」而
      「编译原生文件」于「编译工具」于（「缀」授以「字符串」于「头目录」于「包含」）于
        （「确认原生包路径」于（「图」中「零」）于「包值」于「阴」于「源」））而
    若「等于」于（「长度」授以「字符串」于「对象们」）于「零」则「已有」否则
      「缀」授以「字符串」于（「归档原生包」于「归档工具」于「包值」于「对象们」）于「已有」）于「罄」于（「图」中「一」）而
  虑「系统库们」者「串联」授以「字符串」于（「态射」授以「包标识」授以（「列」于「字符串」）于（「图」中「一」）于（会「标识」而
    「包系统库」于（「解析包文件」于（（「查包」于（「图」中「零」）于「标识」）中「二」））））而
  「存放上下文」于（（若「等于」于（「长度」授以「字符串」于「系统库们」）于「零」则『豫构原生链接一』否则『豫构原生链接二』）附『「：换行：」』附
    （「间合」于『「：换行：」』于（「附加」授以「字符串」于「归档们」于
      （「态射」授以「字符串」授以「字符串」于「系统库们」于（会「名」而『-l』附「名」）））））也。

「构建单元」乃化「已解析包图」而化「包标识」而化「爻」而化「爻」而「整数」也。
「构建单元」者会「图」而会「包名」而会「仅检查」而会「不链接」而
  虑「无」者若「包内含名」于（「读引用」授以（「列」于「字符串」）于「编译器附加参数」）于『--emit-bootstrap-bundle』则
    （若「或者」于（「串相等」于（「包名」中「一」）于『豫言编译器』）于（「串相等」于（「包名」中「一」）于『豫构』）
      则「确认种子原生范围」于「图」否则「发生事故」授以「有」于『目前只导出编译器与豫构两个稳定种子，不支持任意原生包导出』）否则「元」而
  虑「索引」者「图」中「零」而
  虑「包值」者「查包」于「索引」于「包名」而
  虑「入口」者若「串相等」于（「读引用」授以「字符串」于「显式文件入口」）于『』
    则「定位包内文件」于「索引」于「包值」于（「图」中「二」）否则「读引用」授以「字符串」于「显式文件入口」而
  虑「原目录」者「获取当前路径」于「元」而
  虑「指定编译器」者「读引用」授以「字符串」于「编译器选项」而
  虑「编译器」者「真实路径」于（若「串相等」于「指定编译器」于『』
    则「路径合并」于（「获取文件夹名」于（「真实路径」于（「获取程序名」于「元」）））于『yy4_bs』
    否则「转绝对路径」于「原目录」于「指定编译器」）而
  虑「指定输出」者「读引用」授以「字符串」于「输出选项」而
  虑「声明程序」者「包程序」于（「解析包文件」于（「包值」中「二」））而
  虑「输出」者「转绝对路径」于「原目录」于（若「串相等」于「指定输出」于『』则
    （若「串相等」于「声明程序」于『』则『yy』附（「包值」中「一」）否则「声明程序」）否则「指定输出」）而
  虑「内容」者「编码包上下文」于「索引」而
  虑「切换结果」者「切换当前路径」于（「获取文件夹名」于「编译器」）而
  若「不等于」于（「切换结果」中「零」）于「零」则「发生事故」授以「整数」于（「切换结果」中「一」）
  否则虑「上下文文件」者「存放上下文」于「内容」而
    虑「原生清单」者若「仅检查」则『』否则「构建原生链接清单」于「图」于（「获取文件夹名」于「编译器」）而
    虑「参数」者「附加」授以「字符串」于
      （「列」【「入口」，『--package-context』，「上下文文件」，『--parallel』，『-j』，（「整数表示」于（「读引用」授以「整数」于「并发选项」））】）于
      （若「仅检查」则「列」【『--type-check-only』】否则若「不链接」则「列」【『--no-link』，『--native-link-inputs』，「原生清单」】否则「列」【『-o』，「输出」，『--native-link-inputs』，「原生清单」】）而
    虑「状态」者「操作系统」之「子进程」之「运行并传递输出」于「编译器」于
      （「附加」授以「字符串」于「参数」于（「读引用」授以（「列」于「字符串」）于「编译器附加参数」））而
    虑「恢复」者「切换当前路径」于「原目录」而
    若「等于」于（「恢复」中「零」）于「零」则「状态」否则「发生事故」授以「整数」于（「恢复」中「一」）也。

「：文言：库无入口，逐书成物而不链器。汉语：默认库构建覆盖包内普通模块，排除测试及子包；显式文件命令仍可用于测试程序。：」
「构建包」乃化「已解析包图」而化「包标识」而化「爻」而「整数」也。
「构建包」者会「图」而会「标识」而会「仅检查」而
  虑「包值」者「查包」于（「图」中「零」）于「标识」而
  若「且」于（「等于」于（「长度」授以「字符串」于（「图」中「二」））于「零」）于（「包为库」于（「解析包文件」于（「包值」中「二」）））
  则（
    虑「无」者若「串相等」于（「读引用」于「输出选项」）于『』则「元」否则「发生事故」授以「有」于『库没有可执行输出，不能指定 --输出』而
    虑「无」者若「包内含名」于（「读引用」于「编译器附加参数」）于『--emit-bootstrap-bundle』则「发生事故」授以「有」于『库不能导出可执行自举种子』否则「元」而
    虑「文件们」者「滤」授以「字符串」于（会「文件」而「非」于（「串结尾是它吗」于『。测试。豫』于「文件」））于（「收集包源码」于（「包目录」于「包值」）于「阳」）而
    虑「无」者若「且」于（「等于」于（「长度」授以「字符串」于「文件们」）于「零」）于（「非」于「仅检查」）则（
      虑「原目录」者「获取当前路径」于「元」而
      虑「指定」者「读引用」于「编译器选项」而
      虑「工具链」者「获取文件夹名」于（「真实路径」于（若「串相等」于「指定」于『』则
        「路径合并」于（「获取文件夹名」于（「真实路径」于（「获取程序名」于「元」）））于『yy4_bs』否则「转绝对路径」于「原目录」于「指定」））而
      虑「切换」者「切换当前路径」于「工具链」而
      虑「无」者若「等于」于（「切换」中「零」）于「零」则「元」否则「发生事故」授以「有」于（「切换」中「一」）而
      虑「清单」者「构建原生链接清单」于「图」于「工具链」而
      虑「恢复」者「切换当前路径」于「原目录」而
      若「等于」于（「恢复」中「零」）于「零」则「元」否则「发生事故」授以「有」于（「恢复」中「一」））否则「元」而
    虑「无」者「态射」授以「字符串」授以「有」于「文件们」于（会「文件」而
      虑「无」者「写引用」于「显式文件入口」于「文件」而
      虑「状态」者「构建单元」于「图」于「标识」于「仅检查」于「阳」而
      若「等于」于「状态」于「零」则「元」否则「进程」之「退出」于「状态」）而
    虑「无」者「写引用」于「显式文件入口」于『』而「零」）
  否则「构建单元」于「图」于「标识」于「仅检查」于「阴」也。

「执行豫构」乃化（「列」于「字符串」）而「整数」也。
「执行豫构」者会「参数」而
  若「读引用」授以「爻」于「请求帮助」则（「打印行」于「帮助文本」；「零」）否则
  虑「无」者若「等于」于（「长度」授以「字符串」于（「读引用」授以（「列」于「字符串」）于「编译器附加参数」））于「零」则「元」否则
    （鉴「参数」而有（「缀」于『构建』于「余」）则「元」
      或有（「缀」于『类型检查』于「余」）则「元」
      或有（「缀」于『文件』于「余」）则「元」
      或有「其他」则「发生事故」授以「有」于『只有构建和类型检查命令支持 -- 编译器参数』）而
  鉴「参数」而
  有「罄」则（「打印行」于「帮助文本」；「零」）
  或有（「列」【『自举包』】）则「导出双种子包」于（「读引用」授以「字符串」于「编译器选项」）于
    （「转绝对路径」于（「获取当前路径」于「元」）于（若「串相等」于（「读引用」授以「字符串」于「输出选项」）于『』则『dist/yy-bootstrap』否则「读引用」授以「字符串」于「输出选项」））
  或有「非空参数」则（
    虑「索引」者「发现具名包」于（「获取当前路径」于「元」）于（「读引用」授以「字符串」于「外部目录」）而
    鉴「参数」而
    有（「列」【『文件』，「文件路径」】）则（
      虑「文件」者「真实路径」于（「转绝对路径」于（「获取当前路径」于「元」）于「文件路径」）而
      虑「包值」者「所属包」于「索引」于「文件」而
      虑「图」者「解析包图」于「索引」于（「包身份」于「包值」）而
      虑「无」者「写包图语言服务」于（「获取当前路径」于「元」）于「图」而
      虑「相对」者「去除串开头」于（（「包目录」于「包值」）附『/』）于「文件」而
      虑「无扩展」者若「串结尾是它吗」于『。豫』于「相对」则「去除串结尾」于『。豫』于「相对」
        否则若「串结尾是它吗」于『.yuyan』于「相对」则「去除串结尾」于『.yuyan』于「相对」
        否则「发生事故」授以「字符串」于『文件命令只接受 。豫 或 .yuyan 源文件』而
      虑「入口段」者「按字符分段」于『/』于「无扩展」而
      虑「无」者「写引用」于「显式文件入口」于「文件」而
      「构建包」于（（「图」中「零」）与（「图」中「一」）与「入口段」）于（「包身份」于「包值」）于
        （「包内含名」于（「读引用」授以（「列」于「字符串」）于「编译器附加参数」）于『--type-check-only』））
    或有（（「列」【『发现』】））则（
      虑「无」者「态射」授以「包记录」授以「有」于「索引」于（会「包值」而
        虑「配置」者「解析包文件」于（「包值」中「二」）而
        「打印行」于（（「包全名」于「包值」）附『「：制表：」』附（「包版本」于「配置」）附『「：制表：」』附（「包简介」于「配置」）附『「：制表：」』附（「包值」中「二」）））而「零」）
    或有（「缀」于「命令」于（「缀」于「名」于「余」））则（
      虑「无」者「确认短包名」于「名」而
      虑「全名」者「选择包身份」于「索引」于（（「读引用」授以「字符串」于「目标所有者」）与「名」）而
      虑「图」者「解析包图」于「索引」于「全名」而
      虑「无」者「写包图语言服务」于（「获取当前路径」于「元」）于「图」而
      鉴「命令」与「余」而
      有『检查』与「罄」则（
        虑「无」者「态射」授以「包标识」授以「有」于（「图」中「一」）于（会「标识」而
          虑「包值」者「查包」于（「图」中「零」）于「标识」而
          虑「配置」者「解析包文件」于（「包值」中「二」）而
          虑「无」者「打印行」于（（「包标识表示」于「标识」）附『 版本：』附（「包版本」于「配置」）附
            『；类型：』附（若「包为库」于「配置」则『库』否则『可执行文件；文件名：』附（「包程序」于「配置」））附『；说明：』附（「间合」于『、』于（「包说明」于「配置」）））而
          「打印行」于（（「包标识表示」于「标识」）附『 → 』附（「间合」于『，』于（「态射」授以「包标识」授以「字符串」于（「包值」中「三」）于「包标识表示」））附『；源码数：』附
            （「整数表示」于（「长度」授以「字符串」于（「收集包源码」于（「包目录」于「包值」）于「阳」）））））而「零」）
      或有『定位』与「模块段」则（「打印行」于（「定位包导入」于（「图」中「零」）于（「查包」于（「图」中「零」）于「全名」）于「模块段」）；「零」）
      「：文言：可明指包内入口，不改其籍。汉语：尾部名称段覆盖本次入口，测试与多工具共用包边界及依赖。：」
      或有『构建』与「入口段」则「构建包」于（（「图」中「零」）与（「图」中「一」）与
        （若「等于」于（「长度」授以「字符串」于「入口段」）于「零」则「图」中「二」否则「入口段」））于「全名」于「阴」
      或有『类型检查』与「检查入口段」则「构建包」于（（「图」中「零」）与（「图」中「一」）与
        （若「等于」于（「长度」授以「字符串」于「检查入口段」）于「零」则「图」中「二」否则「检查入口段」））于「全名」于「阳」
      或有「非法命令」则「发生事故」授以「整数」于『命令或参数数量错误』）
    或有「非法参数」则「发生事故」授以「整数」于『命令缺少包名或含多余参数』）也。

「进程」之「退出」于（「尝试运行」授以「整数」于
  （会「无」而「执行豫构」于（「提取命令参数」于（「获取参数」于「元」）））
  于（会「错误」而「标准错误打印行」于「错误」；「一」））。
