豫言源码浏览器 / Source Browser

浏览项目文件与源码

yuyan · 103 行 · 6552 字节 · UTF-8
§
寻观「标准库」之书。
寻观「标准库」之「数据结构」之「字符串术」之书。
寻观「标准库」之「数据结构」之「字节串」之书。
寻观「云工宿主」之「核心」之书。

「:文言:单条之记至多八 KiB(八千一百九十二字节),逾则截而附标,总长仍不逾此数。汉语:单条日志的 UTF-8 字节上限;截断后的总长(含省略标记)也不超过它。:」
「日志上限字节」乃「整数」也。
「日志上限字节」者「八一九二」也。

「:文言:截断之标,书于所留诸字之后。汉语:截断时附在保留部分之后的省略标记。:」
「截断标记」乃「字符串」也。
「截断标记」者『…(已截断)』也。

「:文言:整块交宿主取前缀之界:宿主桥单次交换至多一六 MiB,取一六零零零零零零留有余地;逾此则改逐字节拼前缀。汉语:整串交给宿主截取前缀时的字节数上限(宿主桥单次交换上限是 16 MiB,取 16000000 留有余地);更长的文字改用逐字节拼接前缀的路径。:」
「整块截取上限」乃「整数」也。
「整块截取上限」者「一六零零零零零零」也。

「是续字节」乃化「整数」而「爻」也。
「是续字节」者会「码」而
  「且」于(「非」于(「小于」于「码」于「一二八」))于(「小于」于「码」于「一九二」)
也。

「:文言:自余量处退至字界:留下的前缀不得裂 UTF-8 之一字。汉语:在字节串里从位置 位 向前退,直到该位置的字节不是 UTF-8 后续字节,返回退到的位置,即保留字节数(不超过起点)。:」
「退到字界」乃化「字节串」而化「整数」而「整数」也。
「退到字界」者会「字节」而会「位」而
  若「等于」于「位」于「零」则
    「零」
  否则
    若「是续字节」于(「字节串取字节」于「字节」于「位」)则
      「退到字界」于「字节」于(「减」于「位」于「一」)
    否则
      「位」
也。

「:文言:交宿主取字节串之前缀而还为文,成本近乎常数。汉语:把字节串交给宿主,用 Uint8Array.prototype.slice 取前 长 个字节,再用 TextDecoder(ignoreBOM: true)还原成字符串;比逐字节拼接快一个数量级,适用于不超过宿主桥交换上限的文字。:」
「取字节前缀文」乃化「字节串」而化「整数」而「字符串」也。
「取字节前缀文」者会「字节」而会「长」而
  虑「整块号」者「云工字节成句柄」于「字节」而
  虑「前缀号」者
    「取云工句柄」于(「云工调用方法」于「整块号」于『slice』于(『[0,』附(「整数表示」于「长」)附『]』))而
    虑「前缀字节」者「云工句柄取字节」于「前缀号」而
    虑「无」者「云工释放句柄」于「整块号」而
    虑「无」者「云工释放句柄」于「前缀号」而
    「云工解码文字」于『utf-8』于「阴」于「阳」于「前缀字节」
也。

「:文言:逐字节拼前缀,成本只与所取之长有关,与整串之大小无关,惟慢于交宿主截取,故仅用于逾一六零零零零零零字节之巨串。汉语:不把整串交给宿主,也不把整串拆成字符列表:从位置 0 起逐字节拼接前 长 个字节;成本与 长 成正比,与整串大小无关,所以哪怕文字有几十 MiB 也只花与 8 KiB 相当的时间,但每次约 9 ms,比交宿主截取慢一个数量级,故只用于超过宿主桥交换上限的巨串。:」
「逐字节前缀」乃化「字节串」而化「整数」而「字节串」也。
「逐字节前缀」者会「字节」而
  会「长」而
    递归虑「拼」其化「整数」而化「字节串」而「字节串」者会「位」而会「积」而
      若「等于」于「位」于「长」则
        「积」
      否则
        「拼」
          于(「加」于「位」于「一」)
          于(「拼接字节串」于「积」于(「单字节串」于(「字节串取字节」于「字节」于「位」)))
    而
    「拼」于「零」于(「空字节串」于「元」)
也。

「:文言:字节前缀还为文。汉语:把字节串按 UTF-8 还原成字符串(TextDecoder,ignoreBOM: true)。:」
「字节前缀转文」乃化「字节串」而「字符串」也。
「字节前缀转文」者会「前缀」而
  「云工解码文字」于『utf-8』于「阴」于「阳」于「前缀」
也。

「:文言:未逾上限者原文而行,逾者截而附标。汉语:字节数不超过上限的文字原样写出;超过时先留出标记所需字节,再截断并附上标记。:」
「截断日志文字」乃化「字符串」而「字符串」也。
「截断日志文字」者会「文」而
  虑「总长」者「字节长度」于「文」而
  若「非」于(「大于」于「总长」于「日志上限字节」)则
    「文」
  否则
    虑「余量」者
      「减」于「日志上限字节」于(「字节长度」于「截断标记」)
    而
    虑「字节」者「字符串转字节串」于「文」而
    虑「切点」者「退到字界」于「字节」于「余量」而
    若「大于」于「总长」于「整块截取上限」
    则
      ((「字节前缀转文」于(「逐字节前缀」于「字节」于「切点」))附「截断标记」)
    否则
      ((「取字节前缀文」于「字节」于「切点」)附「截断标记」)
也。

「:文言:错误级之记,即 console.error。汉语:写入错误级别日志。:」
「记录错误日志」乃化「字符串」而「有」也。
「记录错误日志」者会「文」而
  「云工错误日志」于(「截断日志文字」于「文」)
也。

「:文言:警告级之记,即 console.warn。汉语:写入警告级别日志。:」
「记录警告日志」乃化「字符串」而「有」也。
「记录警告日志」者会「文」而
  「云工警告」于(「截断日志文字」于「文」)
也。

「:文言:信息级之记,即 console.info。汉语:写入信息级别日志。:」
「记录信息日志」乃化「字符串」而「有」也。
「记录信息日志」者会「文」而
  「云工信息」于(「截断日志文字」于「文」)
也。