1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
「:古曰:遍览官书,核其名实,而录其类。今释:遍历标准库全部模块,导出类型检查后的公开签名,包括别名与推导类型。:」
寻观「标准库」之书。
寻观「构建基础」之「包定位」之书。
寻观「构建基础」之「包上下文」之书。
寻观「包配置」之「包依赖」之书。
寻观「标准库」之「操作系统」之「命令行参数」之书。
寻观「标准库」之「操作系统」之「文件系统」之书。
寻观「标准库」之「操作系统」之「路径」之书。
寻观「拓展库」之「网页客户端」之「核心」之书。
寻观「编译器核心」之「编译数据」之「抽象绑定树结构」之「抽象语法树」之「总集」之书。
寻观「编译器核心」之「编译数据」之「抽象绑定树结构」之「模块操作」之书。
寻观「编译器核心」之「编译数据」之「抽象绑定树结构」之「检查后定义处理」之书。
寻观「编译器核心」之「编译数据」之「编译配置」之「全局配置」之书。
寻观「编译器核心」之「编译数据」之「语言服务信息」之书。
寻观「编译器核心」之「编译步骤」之「语法分析」之「词法解析」之书。
寻观「编译器核心」之「编译步骤」之「语法分析」之「抽象语法分析」之书。
寻观「编译器核心」之「编译步骤」之「语法分析」之「注释操作」之书。
寻观「编译器核心」之「编译步骤」之「总体过程」之「编译过程」之书。
寻观「编译器核心」之「编译步骤」之「总体过程」之「编译文件缓存工具」之书。
寻观「拓展库」之「癸象工具」之「总集」之书。
「文档类型表示」乃化「表达式」而「字符串」也。
「文档类型表示」者会「类型」而
递归虑「表示」其化(「列」于「字符串」)而化「表达式」而「字符串」者会「绑定名们」而会「当前类型」而
鉴「当前类型」而
有(「自由变量」于「名称」)则『「』附「名称」附『」』
或有(「绑定变量」于「序数」)则『「』附(「第N个」于(「减」于「序数」于「一」)于「绑定名们」)附『」』
或有(「绑定」于「可有名称」于「体」)则(
鉴「可有名称」而
有(「可有」于「名称」)则『承「』附「名称」附『」而』附
(「表示」于(「缀」于「名称」于「绑定名们」)于「体」)
或有「可无」则『承一类型而』附(「表示」于(「缀」于『所承类型』于「绑定名们」)于「体」))
或有(「式节点」于(「内建节点」于「常量」)于「罄」)则
『「』附(「内建常量悬停表示」于「常量」)附『」』
或有(「式节点」于「箭头类型节点」于「类型们」)则(
递归虑「表示箭头」其化(「列」于「表达式」)而「字符串」者会「余下类型」而
鉴「余下类型」而
有(「缀」于「值域」于「罄」)则「表示」于「绑定名们」于「值域」
或有(「缀」于「定义域」于「后类型」)则
『化(』附(「表示」于「绑定名们」于「定义域」)附『)而』附(「表示箭头」于「后类型」)
或有「罄」则『「未知类型」』
而「表示箭头」于「类型们」)
或有(「式节点」于「元组类型节点」于「类型们」)则
『(』附(「间合」于『合』于((「态射」授以「表达式」授以「字符串」)于「类型们」于
(会「子类型」而「表示」于「绑定名们」于「子类型」)))附『)』
或有(「式节点」于「函数调用」于「子式们」)则
『(』附(「间合」于『于』于((「态射」授以「表达式」授以「字符串」)于「子式们」于
(会「子式」而
鉴「子式」而
有(「式节点」于(「参数节点」于「忽略形式」)于(「缀」于「参数」于「罄」))则
「表示」于「绑定名们」于「参数」
或有「其他」则「表示」于「绑定名们」于「子式」)))附『)』
或有(「式节点」于(「隐式派类型节点」于「忽略个数」)于(「缀」于「体」于「罄」))则
「表示」于「绑定名们」于「体」
或有(「式节点」于(「文件定义引用节点」于「忽略文件」于「定义名」于「忽略序数」)于「罄」)则
『「』附「定义名」附『」』
或有(「式节点」于(「唯一构造器节点」于「忽略序数」于「忽略文件」于「构造器名」)于「忽略子式」)则
『「』附「构造器名」附『」』
或有(「式节点」于(「文件引用节点」于「忽略路径」)于「罄」)则『「模块」』
或有(「式节点」于(「源码范围标注节点」于「忽略范围」)于(「缀」于「原式」于「罄」))则
「表示」于「绑定名们」于「原式」
或有(「式节点」于(「源码绑定范围标注节点」于「忽略范围」)于(「缀」于「原式」于「罄」))则
「表示」于「绑定名们」于「原式」
或有「其他」则『「未知类型」』
而「表示」于「罄」于「类型」
也。
「收签名」乃化「字符串」而化「整数」而化「文件定义列」而「列」于「癸象」也。
「收签名」者会「文件路径」而会「序」而会「定义们」而
鉴「定义们」而
有「罄」则「罄」
或有(「缀」于(「名」与「公开」与「项」)于「余」)则
虑「后」者「收签名」于「文件路径」于(「加」于「序」于「一」)于「余」而
若「且」于「公开」于(「非」于(「串开头是它吗」于『《《内部匿名顶层表达式_』于「名」))
则虑「类物」者「检查后定义项类及物」于「文件路径」于「名」于「序」于「项」而
(「缀」授以「癸象」)于(「癸象对象」于(「列」【
『名称』与(「癸象字符串」于「名」),
『签名』与(「癸象字符串」于(「文档类型表示」于(「类物」中「零」)))
】))于「后」
否则「后」
也。
「遍书」乃化「字符串」而「列」于「字符串」也。
「遍书」者会「目录」而
递归虑「续」其化(「列」于「字符串」)而(「列」于「字符串」)者会「名们」而
鉴「名们」而
有「罄」则「罄」
或有(「缀」于「名」于「余」)则
虑「文件路径」者「路径合并」于「目录」于「名」而
若「串相等」于「名」于『.』则「续」于「余」
否则若「串相等」于「名」于『..』则「续」于「余」
否则若「串结尾是它吗」于『_v0』于「名」则「续」于「余」
否则若「路径是文件夹」于「文件路径」则(「附加」授以「字符串」)于(「遍书」于「文件路径」)于(「续」于「余」)
否则若「串结尾是它吗」于『。测试。豫』于「名」则「续」于「余」
否则若「串结尾是它吗」于『。包。豫』于「名」则「续」于「余」
否则若「串结尾是它吗」于『。豫』于「名」则(「缀」授以「字符串」)于「文件路径」于(「续」于「余」)
否则「续」于「余」
而「续」于(「读文件夹」于「目录」)
也。
「已检」者(「新引用」授以(「列」于「字符串」))于(「罄」授以「字符串」)也。
「检诸书」乃化(「列」于「字符串」)而「有」也。
「检诸书」者会「书们」而
鉴「书们」而
有「罄」则「元」
或有(「缀」于「文件路径」于「余」)则(
虑「无」者(若(「存在吗」授以「字符串」)于(会「已」而「串相等」于「已」于「文件路径」)于((「读引用」授以(「列」于「字符串」))于「已检」)则「元」
否则(「进行编译」于「文件路径」;「列引用前衔」于「已检」于「文件路径」))而
「检诸书」于「余」)
也。
「取一书」乃化「字符串」而化「字符串」而「癸象」也。
「取一书」者会「根」而会「文件路径」而
虑「无」者「标准错误打印行」于(『导出:』附「文件路径」)而
虑「无」者「所有依赖分析」于「文件路径」而
虑「无」者「检诸书」于(「结尾多」授以「字符串」于((「读引用」授以(「列」于「字符串」))于「文件编译顺序」)于「文件路径」)而
「癸象对象」于(「列」【
『路径』与(「癸象字符串」于(「去除串开头」于(「根」附『/库/』)于「文件路径」)),
『声明』与(「癸象数组」于(「收签名」于「文件路径」于「零」于(「读检查后定义」于「文件路径」)))
】)
也。
虑「根」者「获取当前路径」于「元」而
鉴「获取参数」于「元」而
有(「缀」于「输出路径」于「罄」)则(
虑「图」者「解析包图」于(「发现包」于「根」于『』)于(『』与『标准库』)而
虑「无」者「启用包上下文」于(「存放上下文」于(「编码包上下文」于(「图」中「零」)))而
(「写引用」授以「爻」)于「仅执行类型检查」于「阳」;
(「写引用」授以「爻」)于「打印非常粗略调试信息」于「阴」;
虑「包根」者「包目录」于(「查包」于(「图」中「零」)于(「选择包身份」于(「图」中「零」)于(『』与『标准库』)))而
虑「总集」者「路径合并」于「包根」于『总集。豫』而
虑「书们」者「缀」授以「字符串」于「总集」于(「滤」授以「字符串」于(会「书」而「非」于(「串相等」于「书」于「总集」))于(「遍书」于「包根」))而
虑「模块们」者(「态射」授以「字符串」授以「癸象」)于「书们」于(会「书路径」而「取一书」于「根」于「书路径」)而
「写文件」于「输出路径」于(「癸象表示」于(「癸象对象」于(「列」【
『版本』与(「癸象整数」于「一」),『模块』与(「癸象数组」于「模块们」)
】)))
)
或有「其他」则「发生事故」于『用法:yy标准库签名导出 输出文件』
。