API 参考
env 库的完整 API 参考文档。
核心 API
- 包函数 - 包级便捷函数完整列表
- Loader API - 加载器类型与方法
- Config API - 配置选项与预设
- SecureValue API - 安全值处理
类型与接口
符号索引
按功能分组汇总各 API 页面的主要符号,从符号直达对应文档。同名的方法与包级函数(如 GetString)分别在「包级便捷函数」与「Loader 方法」两组各占一行;标注(未导出)的符号为库内部名称,无法通过 env 包直接引用。
包级便捷函数
| 符号 | 说明 | 页面 |
|---|---|---|
Load | 初始化默认加载器 | 包函数 |
LoadWithConfig | 按配置初始化 | 包函数 |
ResetDefaultLoader | 重置默认加载器 | 包函数 |
GetString | 读字符串值 | 包函数 |
GetInt | 读 int64 | 包函数 |
GetBool | 读布尔值 | 包函数 |
GetUint64 | 读 uint64 | 包函数 |
GetFloat64 | 读 float64 | 包函数 |
GetDuration | 读时间间隔 | 包函数 |
GetSlice | 泛型读切片 | 包函数 |
GetSliceFrom | 从实例读切片 | 包函数 |
GetSecure | 读敏感值 | 包函数 |
Lookup | 查键是否存在 | 包函数 |
Keys | 所有键名 | 包函数 |
All | 全部键值对 | 包函数 |
Len | 变量数量 | 包函数 |
Set | 设置变量 | 包函数 |
Delete | 删除变量 | 包函数 |
Validate | 校验必需键 | 包函数 |
ParseInto | 映射到结构体 | 包函数 |
Marshal | 序列化为字符串 | 包函数 |
UnmarshalMap | 解析为 map | 包函数 |
UnmarshalStruct | 解析到结构体 | 包函数 |
UnmarshalInto | map 填入结构体 | 包函数 |
MarshalStruct | 结构体转 map | 包函数 |
IsMarshalError | 判断序列化错误 | 包函数 |
Loader 方法
| 符号 | 说明 | 页面 |
|---|---|---|
New | 创建加载器实例 | Loader |
LoadFiles | 加载多格式文件 | Loader |
GetString | 读字符串值 | Loader |
GetInt | 读 int64 | Loader |
GetBool | 读布尔值 | Loader |
GetUint64 | 读 uint64 | Loader |
GetFloat64 | 读 float64 | Loader |
GetDuration | 读时间间隔 | Loader |
GetSecure | 读敏感值副本 | Loader |
Lookup | 查键是否存在 | Loader |
Set | 设置变量 | Loader |
Delete | 删除变量 | Loader |
Keys | 所有键名 | Loader |
All | 全部键值对 | Loader |
Len | 变量数量 | Loader |
Apply | 应用到系统环境 | Loader |
IsApplied | 是否已应用 | Loader |
LoadTime | 最后加载时间 | Loader |
Config | 配置只读副本 | Loader |
Validate | 校验必需键 | Loader |
ParseInto | 映射到结构体 | Loader |
Close | 关闭并清零 | Loader |
IsClosed | 是否已关闭 | Loader |
Config 配置
| 符号 | 说明 | 页面 |
|---|---|---|
Config | 配置结构体 | Config |
FileConfig、ValidationConfig、LimitsConfig、JSONConfig、YAMLConfig、ParsingConfig、ComponentConfig | 七个嵌套配置段 | Config |
Filenames、OverwriteExisting、MaxFileSize、KeyPattern、AuditEnabled 等 | 全部配置字段 | Config |
Validate | 校验配置合法性 | Config |
IsZero | 是否零值配置 | Config |
ExpansionScope | 展开作用域枚举 | Config |
ExpansionFileThenProcess、ExpansionFileOnly | 作用域常量 | Config |
预设、工厂与格式
| 符号 | 说明 | 页面 |
|---|---|---|
DefaultConfig | 默认安全配置 | Config |
DevelopmentConfig | 开发宽松预设 | Config |
TestingConfig | 测试隔离预设 | Config |
ProductionConfig | 生产严格预设 | Config |
ComponentFactory | 组件工厂类型 | 组件工厂 |
Validator | 取验证器组件 | 组件工厂 |
Auditor | 取审计器组件 | 组件工厂 |
Expander | 取展开器组件 | 组件工厂 |
Close | 关闭工厂资源 | 组件工厂 |
IsClosed | 工厂是否已关闭 | 组件工厂 |
RegisterParser | 注册自定义解析器 | 组件工厂 |
ForceRegisterParser | 强制覆盖注册 | 组件工厂 |
ParserFactory | 解析器工厂签名 | 组件工厂 |
DetectFormat | 检测文件格式 | 组件工厂 |
FileFormat | 文件格式枚举 | 组件工厂 |
FormatAuto、FormatEnv、FormatJSON、FormatYAML | 内置格式常量 | 组件工厂 |
String(FileFormat 方法) | 返回格式名 | 组件工厂 |
OSFileSystem | 操作系统实现 | 组件工厂 |
DefaultFileSystem | 默认实例变量 | 组件工厂 |
SecureValue 与内存锁定
| 符号 | 说明 | 页面 |
|---|---|---|
SecureValue | 安全值类型 | SecureValue |
NewSecureValue | 创建安全值 | SecureValue |
NewSecureValueStrict | 锁定失败报错 | SecureValue |
String | 掩码字符串化 | SecureValue |
Reveal | 读取明文 | SecureValue |
Bytes | 字节副本 | SecureValue |
Length | 值长度 | SecureValue |
Masked | 掩码表示 | SecureValue |
MarshalJSON | JSON 掩码输出 | SecureValue |
MarshalText | 文本掩码输出 | SecureValue |
Close | 清零不归池 | SecureValue |
Release | 清零并归池 | SecureValue |
IsClosed | 是否已关闭 | SecureValue |
IsMemoryLocked | 内存是否锁定 | SecureValue |
MemoryLockError | 锁定失败错误 | SecureValue |
SetMemoryLockEnabled | 全局启用内存锁 | SecureValue |
IsMemoryLockEnabled | 查询全局开关 | SecureValue |
SetMemoryLockStrict | 严格模式告警 | SecureValue |
IsMemoryLockStrict | 查询严格模式 | SecureValue |
IsMemoryLockSupported | 平台是否支持 | SecureValue |
安全工具函数
| 符号 | 说明 | 页面 |
|---|---|---|
ClearBytes | 清零字节切片 | SecureValue |
IsSensitiveKey | 键名是否敏感 | SecureValue |
MaskValue | 按键掩码值 | SecureValue |
MaskKey | 掩码键名 | SecureValue |
SanitizeForLog | 日志脱敏 | SecureValue |
MaskSensitiveInString | 截断长字符串 | SecureValue |
审计
| 符号 | 说明 | 页面 |
|---|---|---|
AuditLogger | 最小审计接口 | 接口定义 |
FullAuditLogger | 完整审计接口 | 接口定义 |
AuditHandler | 处理器接口 | 接口定义 |
AuditEvent | 审计事件结构 | 接口定义 |
AuditAction | 动作类型 | 接口定义 |
ActionLoad、ActionParse、ActionGet、ActionSet、ActionDelete、ActionValidate、ActionExpand、ActionSecurity、ActionError、ActionFileAccess | 十个动作常量 | 接口定义 |
NewJSONAuditHandler | JSON 处理器 | 组件工厂 |
NewLogAuditHandler | 标准日志处理器 | 组件工厂 |
NewChannelAuditHandler | 通道处理器 | 组件工厂 |
NewNopAuditHandler | 空操作处理器 | 组件工厂 |
NewCloseableChannelHandler、CloseableChannelHandler | 自管通道处理器 | 组件工厂 |
JSONAuditHandler、LogAuditHandler、ChannelAuditHandler、NopAuditHandler | 处理器实现类型 | 接口定义 |
错误与哨兵
| 符号 | 说明 | 页面 |
|---|---|---|
ErrFileNotFound、ErrFileTooLarge | 文件哨兵 | 常量与错误 |
ErrLineTooLong、ErrInvalidKey、ErrDuplicateKey | 解析哨兵 | 常量与错误 |
ErrForbiddenKey、ErrSecurityViolation、ErrInvalidValue | 安全哨兵 | 常量与错误 |
ErrExpansionDepth | 展开哨兵 | 常量与错误 |
ErrMaxVariables | 限制哨兵 | 常量与错误 |
ErrClosed、ErrInvalidConfig、ErrAlreadyInitialized、ErrNotInitialized、ErrMissingRequired | 状态哨兵 | 常量与错误 |
ErrValidateRequiredUnsupported | 适配器哨兵 | 常量与错误 |
ParseError | 解析错误类型 | 常量与错误 |
ValidationError | 验证错误类型 | 常量与错误 |
SecurityError | 安全错误类型 | 常量与错误 |
FileError | 文件错误类型 | 常量与错误 |
ExpansionError | 展开错误类型 | 常量与错误 |
ExpansionErrorKind、ExpansionDepthKind、ExpansionRequiredKind | 错误分类常量 | 常量与错误 |
JSONError | JSON 解析错误 | 常量与错误 |
YAMLError | YAML 解析错误 | 常量与错误 |
MarshalError | 序列化错误类型 | 常量与错误 |
常量与限制
| 符号 | 说明 | 页面 |
|---|---|---|
DefaultMaxFileSize、DefaultMaxLineLength、DefaultMaxKeyLength、DefaultMaxValueLength、DefaultMaxVariables、DefaultMaxExpansionDepth | 默认限制常量 | 常量与错误 |
DefaultKeyPattern | 默认键名模式 | 常量与错误 |
defaultForbiddenKeys(未导出) | 内置禁止键 | 常量与错误 |
internal.Patterns(未导出) | 敏感键模式 | 常量与错误 |
| 硬性上限(未导出) | 100MB、64KB 等 | 常量与错误 |
接口
| 符号 | 说明 | 页面 |
|---|---|---|
EnvLoader | 组合加载器接口 | 接口定义 |
EnvFileLoader | 文件加载接口 | 接口定义 |
EnvGetter | 只读访问接口 | 接口定义 |
EnvSetter | 写入访问接口 | 接口定义 |
EnvApplicator | 应用到系统 | 接口定义 |
EnvCloser | 资源释放接口 | 接口定义 |
Validator | 组合验证接口 | 接口定义 |
KeyValidator | 键验证接口 | 接口定义 |
ValueValidator | 值验证接口 | 接口定义 |
RequiredValidator | 必需键验证接口 | 接口定义 |
VariableExpander | 变量展开接口 | 接口定义 |
EnvParser | 解析器接口 | 接口定义 |
EnvStorage | 存储后端接口 | 接口定义 |
Marshaler | 自定义序列化 | 接口定义 |
Unmarshaler | 自定义反序列化 | 接口定义 |
FileSystem | 文件系统抽象 | 接口定义 |
File | 文件操作接口 | 接口定义 |