豫言源码浏览器 / Source Browser

浏览项目文件与源码

yuyan · 246 行 · 11981 字节 · UTF-8
§
寻观「标准库」之书。
寻观「标准库」之「数据结构」之「字节串」之书。
寻观「癸象工具」之「总集」之书。
寻观「癸象工具」之「癸象访问」之书。
寻观「云工宿主」之「核心」之书。

「:
文言:诸限皆本公约;名、号之长至多一百二十八字节。
汉语:接口规范里的限额:请求 JSON 至多 2097152 字节;编译器名与运行号 1 至 128 字节且不含控制字符;等待毫秒 1 至 60000。
:」
「编译内请求上限」乃「整数」也。
「编译内请求上限」者「二零九七一五二」也。

「编译内名上限」乃「整数」也。
「编译内名上限」者「一二八」也。

「编译内等待上限」乃「整数」也。
「编译内等待上限」者「六零零零零」也。

「编译内失败消息上限」乃「整数」也。
「编译内失败消息上限」者「三零零」也。

「编译内编译器种类」乃「字符串」也。
「编译内编译器种类」者『COMPILE』也。

「:
文言:名中不得有控制之字(零至三十一及一百二十七)。
汉语:按字节检查字符串里没有控制字符(0 至 31 与 127);用于编译器名与运行号。
:」
「编译内无控制字符」乃化「字符串」而化「整数」而「爻」也。
「编译内无控制字符」者会「文」而会「位」而
  若「非」于(「小于」于「位」于(「字节长度」于「文」))则
    「阳」
  否则
    虑「字节」者「字符转整数」于「文」于「位」
    而
    若「或者」于(「小于」于「字节」于「三二」)于(「等于」于「字节」于「一二七」)则
      「阴」
    否则
      「编译内无控制字符」于「文」于(「加」于「位」于「一」)
也。

「编译内名合法吗」乃化「字符串」而「爻」也。
「编译内名合法吗」者会「文」而
  「且」
    于(「且」
      于(「大于」于(「字节长度」于「文」)于「零」)
      于(「非」于(「大于」于(「字节长度」于「文」)于「编译内名上限」)))
      于(「编译内无控制字符」于「文」于「零」)
也。

「:
文言:宿主之败,其辞截而中文之,免巨辞。
汉语:把宿主返回的错误 JSON(含名称、消息)转成失败说明:取消息字段,截到 300 个字符以内,前加“编译运行:”。
:」
「编译内宿主失败文」乃化「字符串」而「字符串」也。
「编译内宿主失败文」者会「错」而
  虑「消息」者
    「癸象字段字符串」于(「癸象解析」于「错」)于『消息』于『宿主调用失败』
  而
  『编译运行:』附(
    若「大于」于(「串长度」于「消息」)于「编译内失败消息上限」则
      「获取子字符串」于「零」于「编译内失败消息上限」于「消息」
    否则
      「消息」
  )
也。

「:
文言:取宿主所设之编译运行器;用毕即释其柄。
汉语:经许可的 COMPILE 绑定名取得宿主注入的编译运行器对象句柄(未授权或绑定不存在使本事失败);调用者用毕必须释放。
:」
「编译内取运行器」乃化「字符串」而「字符串」也。
「编译内取运行器」者会「名」而
  若「编译内名合法吗」于「名」则
    「云工绑定句柄」于「编译内编译器种类」于「名」
  否则
    「发生事故」授以「字符串」于『编译器名无效』
也。

「编译内验运行号」乃化「字符串」而「有」也。
「编译内验运行号」者会「号」而
  若「编译内名合法吗」于「号」则
    「元」
  否则
    「发生事故」授以「有」于『运行号无效』
也。

「:
文言:运行号惟启之之事有效;号冠事标,异事之号,纵字同,亦拒之。
汉语:应用看到的运行号是“事件标记:宿主运行号”。事件标记取自随机 UUID 的前 13 个字符,每个 Wasm 实例(即每个事件)生成一次;别的事件里拿到的运行号(哪怕宿主运行号相同)一律使调用抛出可捕获的豫言异常,不会误操作别的事件的运行。宿主里的运行号本身是不可猜测的随机 UUID。
:」
「编译内实例标记」乃(「引用类」于「字符串」)也。
「编译内实例标记」者「新引用」授以「字符串」于『』也。

「编译内取标记」乃化「有」而「字符串」也。
「编译内取标记」者会「无」而
  虑「旧」者「读引用」授以「字符串」于「编译内实例标记」而
  若「串相等」于「旧」于『』则(
    虑「新」者
      「获取子字符串」于「零」于「一三」于(「云工密码随机识别」于「元」)而
      虑「无」者「写引用」授以「字符串」于「编译内实例标记」于「新」而
      「新」
  )
  否则
    「旧」
也。

「编译内封号」乃化「字符串」而「字符串」也。
「编译内封号」者会「宿主号」而
  (「编译内取标记」于「元」)附『:』附「宿主号」
也。

「编译内拆号」乃化「字符串」而「字符串」也。
「编译内拆号」者会「号」而
  虑「前缀」者(「编译内取标记」于「元」)附『:』而
  若「串开头是它吗」于「前缀」于「号」则
    「获取子字符串」于(「字节长度」于「前缀」)于(「字节长度」于「号」)于「号」
  否则
    「发生事故」授以「字符串」于『运行号不属于当前事件』
也。

「:
文言:调宿主之器,先释其柄,败则以异告;成则返 JSON 文。
汉语:在运行器上调用方法(参数是 JSON 数组文字),无论成败都先释放运行器句柄;宿主方法失败(含 Promise 拒绝)转成可捕获的豫言异常;成功返回结果 JSON 文字。
:」
「编译内调运行器」乃化「字符串」而化「字符串」而化「字符串」而「字符串」也。
「编译内调运行器」者会「名」而会「方法」而会「参数」而
  虑「器」者「编译内取运行器」于「名」而
  虑「果」者「云工调用方法安全」于「器」于「方法」于「参数」而
  虑「无」者「云工释放句柄」于「器」而
  若「非」于(「果」中「零」)则
    「发生事故」授以「字符串」于(「编译内宿主失败文」于(「果」中「一」))
  否则
    (「果」中「一」)
也。

「编译内字符串结果」乃化「字符串」而「字符串」也。
「编译内字符串结果」者会「文」而
  鉴(「癸象解析」于「文」)而
    有(「癸象字符串」于「串」)则「串」
    或有「其他」则
      「发生事故」授以「字符串」于『编译运行:宿主结果不是字符串』
也。

「:
文言:启运;名、请求先验,成则返宿主所予之运行号。
汉语:先验编译器名与请求大小,再调宿主的 启动 方法(请求 JSON 文字原样传入,宿主再次校验路径、文件数与内容大小);返回宿主生成的运行号。
:」
「启动编译运行」乃化「字符串」而化「字符串」而「字符串」也。
「启动编译运行」者会「名」而会「请求」而
  若「非」于(「编译内名合法吗」于「名」)则
    「发生事故」授以「字符串」于『编译器名无效』
  否则
    若「大于」于(「字节长度」于「请求」)于「编译内请求上限」则
      「发生事故」授以「字符串」于『编译请求超过 2 MiB』
    否则
      「编译内封号」于(「编译内字符串结果」
        于(「编译内调运行器」于「名」于『启动』于(『[』附(「癸象表示」于(「癸象字符串」于「请求」))附『]』)))
也。

「:
文言:候下一事;宿主返对象,取其状态与事文。
汉语:调宿主的 读事件 方法(参数:运行号与等待毫秒),宿主返回 {状态,事件} 对象;本函数转成(状态,事件文字)。等待毫秒越界、运行号无效由本函数先抛异常。
:」
「读取编译运行事件」乃
  化「字符串」而
  化「字符串」而
  化「整数」而
  (「整数」合「字符串」)
也。
「读取编译运行事件」者会「名」而会「号」而会「毫秒」而
  虑「无」者
    若「编译内名合法吗」于「名」则「元」否则「发生事故」授以「有」
    于『编译器名无效』
  而
  虑「无」者「编译内验运行号」于「号」而
  若「或者」于(「小于」于「毫秒」于「一」)于(「大于」于「毫秒」于「编译内等待上限」)则
    「发生事故」授以(「整数」合「字符串」)于『等待毫秒须在 1 至 60000』
  否则
    虑「结果」者
      「癸象解析」于(「编译内调运行器」
        于「名」
        于『读事件』
        于(『[』附(「癸象表示」于(「癸象字符串」于(「编译内拆号」于「号」)))附『,』附(「整数表示」于「毫秒」)
        附『]』))
    而
    虑「状态」者
      「癸象字段整数」于「结果」于『状态』于(「减」于「零」于「一」)
    而
    虑「事件」者「癸象字段字符串」于「结果」于『事件』于『』而
    「状态」与「事件」
也。

「:
文言:取产物之原字节;宿主返其对象之柄,取字节后即释。
汉语:调宿主的 取产物 方法,宿主返回 Uint8Array 的句柄;读出字节后释放句柄。
:」
「读取编译产物」乃化「字符串」而化「字符串」而「字节串」也。
「读取编译产物」者会「名」而会「号」而
  虑「无」者
    若「编译内名合法吗」于「名」则「元」否则「发生事故」授以「有」
    于『编译器名无效』
  而
  虑「无」者「编译内验运行号」于「号」而
  虑「柄」者
    「取云工句柄」于(「编译内调运行器」
      于「名」于『取产物』
      于(『[』附(「癸象表示」于(「癸象字符串」于(「编译内拆号」于「号」)))附『]』))
  而
  虑「字节」者「云工句柄取字节」于「柄」而
  虑「无」者「云工释放句柄」于「柄」而
  「字节」
也。

「读取编译产物Base64」乃化「字符串」而化「字符串」而「字符串」也。
「读取编译产物Base64」者会「名」而会「号」而
  虑「无」者
    若「编译内名合法吗」于「名」则「元」否则「发生事故」授以「有」
    于『编译器名无效』
  而
  虑「无」者「编译内验运行号」于「号」而
  「编译内字符串结果」于(「编译内调运行器」
    于「名」
    于『取产物Base64』
    于(『[』附(「癸象表示」于(「癸象字符串」于(「编译内拆号」于「号」)))附『]』))
也。

「:
文言:终运;幂等,释宿主之资。
汉语:调宿主的 结束 方法;运行号未知时宿主也返回成功(幂等)。
:」
「结束编译运行」乃化「字符串」而化「字符串」而「有」也。
「结束编译运行」者会「名」而会「号」而
  虑「无」者
    若「编译内名合法吗」于「名」则「元」否则「发生事故」授以「有」
    于『编译器名无效』
  而
  虑「无」者「编译内验运行号」于「号」而
  虑「无」者
    「编译内调运行器」
      于「名」于『结束』
      于(『[』附(「癸象表示」于(「癸象字符串」于(「编译内拆号」于「号」)))附『]』)
  而
  「元」
也。