-
Go reflect 中,IsValid 判断 Value 是否有效,IsZero 判断有效值是否为其类型的零值。本文用字段查找、nil 接口和指针示例说明两者的调用顺序与 panic 边界。
-
Go text/template 可通过 FuncMap 注册返回值与 error 的函数。本文结合状态报告示例说明注册顺序、Execute 错误链、缓冲输出和兼容处理,避免把半成品报告交付给调用方。
-
Go http.Request.Write 会把 Request 的请求行、请求头和请求体写成 HTTP/1.1 报文。本文用缓冲区示例说明 URL、Host、Content-Length、分块传输、Body 关闭,以及普通写出和代理写出的区别。
-
Go encoding/hex NewEncoder 返回一个 io.Writer,适合把网络、文件或协议分片连续编码成小写十六进制文本。本文说明 Writer 链、Write 返回值、下游错误和一次性编码 API 的选择边界。
-
Go bytes.FieldsFuncSeq 接收自定义 rune 判断函数,返回按规则切出的非空字节子切片迭代器。本文说明自定义分隔规则、与 FieldsFunc 的关系、提前停止消费以及输入切片别名边界。
-
Go strconv.AppendQuoteToASCII 会把字符串追加成带双引号的 Go 字符串字面量,并把非 ASCII 字符转成 ASCII 转义。本文用最小示例说明已有 []byte 的追加方式、控制字符处理、返回切片边界,以及它与 Quote、AppendQuote 的取舍。
-
Go archive/tar.Writer.Flush 不是刷新任意缓冲,而是为已经完整写入的当前文件条目补齐 tar 块填充。本文用两个条目的示例说明 Header.Size、Write、Flush、WriteHeader 与 Close 的关系,以及遗漏字节和底层写入错误的处理边界。
-
Go unique.Handle[T].Value() 会返回创建句柄的 T 值浅拷贝。本文从 Go 1.23 引入的 unique 包出发,说明如何取回已驻留值、比较等值句柄,以及迁移时需要注意的可比较约束和生命周期边界。
-
Go sync.Pool 适合缓存短生命周期、可安全丢弃的临时对象。本文用 bytes.Buffer 示例说明 Get 后覆盖、使用中独占、Put 前 Reset,以及切片引用和异步访问的生命周期边界。
-
Go math/big 的 big.Int.SetString 能按 base=0 自动识别常见前缀,也能按 2 到 62 的显式进制解析大整数文本。本文说明前缀、下划线、大小写和失败返回值的边界,并给出可复用的选择流程。
-
Go math/rand/v2 ChaCha8 同时提供 Read 和 Uint64,但两者交错调用时返回位顺序未定义。本文说明可复现测试、拆分随机源和状态快照的稳定写法。
-
Go 中按指定时区生成日期边界时,应让 time.Date 和 AddDate 共享同一个 time.Location,并用当天零点到下一天零点的半开区间做查询。本文说明时区加载、夏令时边界和固定 24 小时截断的区别。
-
Go 的 time.Timer.Stop 返回值表示定时器是否被成功停止,不等于 t.C 是否发生过接收。本文用取消、超时和并发收尾示例区分这两个事实,并说明 Go 1.23 之后的通道语义。
-
通过 Go net.Resolver 隔离 DNS 策略,区分 PreferGo、Dial 与 StrictErrors,并将解析器绑定到 HTTP 客户端。结合代码解释超时、代理、连接复用及配置切换的适用边界。
-
Go strings.CutSuffix 适合处理明确位于字符串末尾的后缀。本文用文件名清理场景说明 before 与 found 的含义,并区分未匹配、空后缀、大小写和路径解析边界。