# CLAUDE.md This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. ## 模块概述 `frame/zero` 是一个零配置接入工具包,提供了项目的核心基础类型定义。它是整个框架的最基础模块,定义了统一的错误处理和结果包装机制。 ## 核心架构 ### RLT 状态管理模式 该模块实现了基于 `Rlt` (Result Like Type) 的状态管理模式: ```kotlin sealed class Rlt { data class Success(val data: T) : Rlt() data class Failed(val error: IError) : Rlt() } ``` **关键特性:** - 统一的成功/失败状态表示 - 类型安全的结果包装 - 强制错误处理机制 ### 错误体系 基于 `IError` 的统一错误处理体系,包含: **核心属性:** - `msg`: 用户提示信息(null表示不提示) - `serverCode`: 服务端错误码 - `exception`: 异常信息收集 - `data`: 附属数据 - `toastSecond`: 错误提示显示时长 **预定义错误类型:** - `NetworkHttpStatusNoSuccessError`: HTTP状态码异常 - `NetworkHttpExecuteError`: HTTP执行异常 - `NetworkHttpResBodyNullError`: HTTP响应体为空 - `CommonParamError`: 通用参数错误 - `CommonDataNullError`: 数据为空错误 - `PermissionNoGrantError`: 权限未授予错误 ## 开发规范 ### 错误类命名规范 ``` <模块><功能><具体错误> ``` 例如:`NetworkHttpExecuteError`, `CommonParamError` ### 使用模式 - 所有异步操作返回 `Rlt` 类型 - 通过 `when` 表达式处理成功/失败状态 - 自定义错误继承 `IError` 基类 ## 依赖关系 **当前依赖:** - Kotlin 标准库(compileOnly) **作为依赖:** - 被所有其他 frame 模块依赖的基础模块