177 Commits

Author SHA1 Message Date
GeWuYou
c16f89cb47 refactor(ioc): 将Services属性重命名为GetServicesUnsafe以提高安全性
- 将MicrosoftDiContainer中的Services属性重命名为GetServicesUnsafe
- 将IIocContainer接口中的Services属性重命名为GetServicesUnsafe
- 更新所有使用Services的地方为GetServicesUnsafe
- 保持原有的功能不变,仅修改属性名称以避免直接访问风险
2026-02-14 19:41:21 +08:00
GeWuYou
a420a41a55 refactor(ioc): 为依赖注入容器注册方法添加线程安全锁
- 在RegisterSingleton方法中添加读写锁保护
- 在RegisterFactory方法中添加读写锁保护
- 在ExecuteServicesHook方法中添加读写锁保护
- 确保在冻结状态下抛出异常
- 添加日志记录单例注册操作
- 统一异常处理和资源清理逻辑
2026-02-14 19:41:21 +08:00
GeWuYou
ae8ad29806 fix(architecture): 修复中介者行为注册方法
- 将 Container.RegisterPlurality<TBehavior>() 替换为 Container.RegisterMediatorBehavior<TBehavior>()
- 修正了中介者行为注册的 API 调用错误
2026-02-14 19:41:21 +08:00
GeWuYou
b2f2ab4fa5 perf(cqrs): 优化性能行为中的请求处理逻辑
- 将同步方法改为异步方法以正确处理异步操作
- 使用 Stopwatch.GetTimestamp() 替代 StartNew() 提高计时精度
- 通过 try-finally 确保即使在异常情况下也能正确计算执行时间
- 改进长时间运行请求的日志记录机制
- 使用 Elapsed.TotalMilliseconds 替代 ElapsedMilliseconds 并保留两位小数
- 保持 500 毫秒阈值不变,只对超时请求记录警告日志
2026-02-14 19:41:21 +08:00
GeWuYou
276f50a255 perf(cqrs): 优化LoggingBehavior性能并改进错误处理
- 添加Stopwatch用于精确测量请求处理时间
- 将Handle方法改为异步方法并正确await next调用
- 在成功和失败情况下都记录详细的耗时信息
- 添加对OperationCanceledException的特殊处理和日志记录
- 改进异常处理逻辑以包含执行时间信息
2026-02-14 19:41:21 +08:00
GeWuYou
e755c5c7f8 refactor(core): 替换Mediator集成实现为通用服务配置机制
- 移除专用的RegisterMediator方法,替换为ExecuteServicesHook通用服务配置方法
- 从架构配置中移除Mediator特定配置选项,改为通用服务配置委托
- 在架构基类中添加Configurator属性支持,允许子类提供自定义服务配置
- 更新测试代码适配新的服务配置方式,通过ExecuteServicesHook注册Mediator
- 移除过时的测试组件和相关验证逻辑
- 删除Mediator.SourceGenerator包引用,保留运行时依赖
- 添加WaitUntilReadyAsync方法的详细文档注释
2026-02-14 19:41:21 +08:00
GeWuYou
d3e1e04e89 feat(architecture): 添加Mediator模式支持并扩展架构上下文功能
- 在ArchitectureContext中新增Sender属性和SendCommand/SendQuery方法
- 实现异步命令和查询的发送功能,支持取消令牌
- 提供同步版本的命令和查询发送方法以保持向后兼容性
- 更新IArchitectureContext接口定义新增相关方法签名
- 添加完整的Mediator集成测试验证新功能
- 配置项目依赖移除旧的Mediator包并添加必要引用
- 修复测试中的类型引用和方法重载问题
2026-02-14 19:41:21 +08:00
GeWuYou
a082b770a9 feat(architecture): 集成 Mediator 模式支持
- 添加 Mediator 和 IPublisher 实例的延迟加载功能
- 实现 SendRequestAsync 方法用于发送 Command/Query 请求
- 添加 PublishAsync 方法用于发布通知事件
- 提供 CreateStream 方法支持流式数据处理
- 增加 SendAsync、QueryAsync、PublishEventAsync 等便捷扩展方法
- 更新 SendCommand 和 SendQuery 方法使用完整命名空间
- 在 IArchitectureContext 接口中添加 Mediator 相关方法定义
2026-02-14 19:41:21 +08:00
GeWuYou
9a783f3caa feat(cqrs): 添加流式命令、查询和请求处理器基类
- 新增 AbstractStreamCommandHandler 基类支持流式命令处理
- 新增 AbstractStreamQueryHandler 基类支持流式查询处理
- 新增 AbstractStreamRequestHandler 基类支持流式请求处理
- 所有基类继承 ContextAwareBase 并实现对应的流式处理器接口
- 提供统一的异步可枚举响应序列处理机制
- 支持取消令牌用于控制流式操作的执行过程
2026-02-14 19:41:21 +08:00
GeWuYou
a4c719773e feat(cqrs): 添加CQRS模式的抽象处理器基类
- 实现了抽象命令处理器基类,支持带返回值和无返回值两种类型
- 创建了抽象通知处理器基类,提供统一的通知处理功能
- 添加了抽象查询处理器基类,支持泛型查询和结果类型
- 实现了抽象请求处理器基类,处理有响应和无响应的请求场景
- 集成了ContextAwareBase基类以提供上下文感知功能
- 使用Mediator库接口实现标准化的CQRS处理模式
2026-02-14 19:41:21 +08:00
GeWuYou
91c9163312 feat(core): 集成Mediator框架并添加CQRS行为支持
- 移除直接的Mediator包依赖,改用Source Generator方式集成
- 添加RegisterMediator方法用于配置Mediator框架
- 添加RegisterMediatorBehavior方法用于注册管道行为
- 实现LoggingBehavior用于记录CQRS请求处理日志
- 实现PerformanceBehavior用于监控请求执行性能
- 更新架构配置以支持Mediator自定义配置
- 优化容器冻结检查的代码结构
2026-02-14 19:41:21 +08:00
GeWuYou
b7efe0cac4 feat(core): 集成 Mediator 框架并配置服务
- 添加 Mediator 框架依赖注入配置
- 设置 Mediator 命名空间为 GFramework.Core.Mediator
- 配置 Mediator 服务生命周期为单例模式
- 设置生成类型为内部访问权限
- 配置通知发布器类型为 ForeachAwaitPublisher
- 添加必要的 using 语句引入 Mediator 和常量模块
2026-02-14 19:41:21 +08:00
GeWuYou
ec07f6b2ef refactor(ioc): 重构MicrosoftDiContainer以支持未冻结状态下的服务获取
- 移除OnContextReady方法,将日志记录器初始化改为直接赋值
- 将日志记录器改为readonly字段并直接初始化
- 修改Get<T>()方法以支持未冻结状态下的实例获取逻辑
- 修改Get(Type)方法以支持未冻结状态下的类型实例获取
- 更新GetAll<T>()方法以支持未冻结状态下的批量服务获取
- 更新GetAll(Type)方法以支持未冻结状态下的批量类型服务获取
- 移除EnsureProvider私有方法,内联检查逻辑到各个获取方法中
2026-02-14 19:41:21 +08:00
GeWuYou
853bcf4315 feat(ioc): 添加类型注册工厂和多接口注册功能
- 为 Architecture 添加 RegisterSystem<T>、RegisterModel<T> 和 RegisterUtility<T> 泛型方法
- 支持通过 DI 容器自动创建实例并提供创建后回调钩子
- 在 MicrosoftDiContainer 中实现 RegisterPlurality<T> 方法
- 支持将单个实例注册到其实现的所有接口
- 更新 IIocContainer 接口定义以匹配新功能
- 为 RegisterFactory 方法添加 class 约束确保类型安全
2026-02-14 19:41:21 +08:00
GeWuYou
55ec42a670 feat(ioc): 替换自定义IoC容器为Microsoft.Extensions.DependencyInjection
- 移除原有的IocContainer实现
- 添加MicrosoftDiContainer作为Microsoft.Extensions.DependencyInjection的适配器
- 修改ArchitectureServices使用MicrosoftDiContainer替代IocContainer
- 更新所有相关测试类使用MicrosoftDiContainer
- 添加Mediator和Microsoft.Extensions.DependencyInjection包引用
- 扩展IIocContainer接口支持更多注册方法
- 在架构初始化中添加Mediator服务注册
2026-02-14 19:41:21 +08:00
GeWuYou
68d292dc64 feat(ioc): 添加基于Type的依赖注入方法
- 实现Get(Type type)方法以获取指定类型的单个实例
- 实现GetRequired(Type type)方法以获取指定类型的必需实例
- 实现GetAll(Type type)方法以获取指定类型的所有实例
- 在抽象层添加对应的接口定义
- 为新方法添加完整的XML文档注释
- 添加全局using System.Runtime指令
2026-02-14 19:41:21 +08:00
GeWuYou
9427cc9dbf docs(architecture): 更新架构服务接口文档注释
- 将异步查询总线实例注释更正为异步查询执行器实例
- 为命令执行器添加返回值类型说明
- 为查询执行器添加返回值类型说明
- 为异步查询执行器添加返回值类型说明
- 移除多余空行并优化代码格式
2026-02-14 19:41:21 +08:00
GeWuYou
d1cdac8082 docs: 更新文档链接和代码块格式
- 修复了文档中多个文件的链接指向,统一使用相对路径格式
- 移除了代码块中的语言标识符以保持一致性
- 更新了存储模块文档中的类名显示方式
- 修正了架构文档中的跨文档引用链接
- 调整了事件、命令、查询等核心模块的文档链接结构
- 规范化了所有代码示例的格式和引用方式
2026-02-11 14:44:46 +08:00
GeWuYou
6b48c92710 docs: 删除多个核心模块的文档文件
- 移除 architecture 模块的 README 文档
- 移除 command 模块的 README 文档
- 移除 environment 模块的 README 文档
- 移除 events 模块的 README 文档
- 清理框架核心组件的使用说明文档
2026-02-11 12:52:14 +08:00
GeWuYou
026d9964fe docs(game): 更新游戏模块文档并优化整体结构
- 重写了 GFramework.Game 模块的完整文档
- 添加了详细的目录结构和使用示例
- 扩展了架构模块系统的说明和代码示例
- 增加了资产管理、存储系统和序列化系统的详细文档
- 提供了模块配置和高级用法的指导
- 完善了存储系统的分层存储和缓存实现
- 添加了序列化系统的自定义转换器示例
- 更新了核心特性和设计理念的描述
- 优化了文档的整体组织结构和可读性
- 刷新了 VitePress 依赖缓存以同步文档变更
2026-02-11 12:52:14 +08:00
GeWuYou
42a1ab0f29 fix(coroutine): 修复 WaitForMultipleEvents 的事件处理逻辑
- 添加了完成状态检查,避免在已完成或释放后继续处理事件
- 立即注销事件监听器以防止内存泄漏
- 在事件触发后清理注册器引用
- 添加了完整的单元测试覆盖各种事件场景
2026-02-10 23:47:40 +08:00
GeWuYou
4748198696 feat(coroutine): 添加多种协程等待指令及对应单元测试
- 实现 WaitForConditionChange 指令,支持等待条件状态变化
- 实现 WaitForEndOfFrame 指令,支持等待当前帧渲染完成
- 实现 WaitForFixedUpdate 指令,支持等待物理固定更新周期
- 实现 WaitForMultipleEvents 指令,支持等待多个事件中的任意一个触发
- 实现 WaitForNextFrame 指令,支持等待下一帧开始
- 实现 WaitForPredicate 指令,支持通用谓词等待功能
- 实现 WaitForSecondsRealtime 指令,支持基于真实时间的等待
- 实现 WaitForSecondsScaled 指令,支持受时间缩放影响的等待
- 实现 WaitUntilOrTimeout 指令,支持带超时的条件等待
- 为所有新指令添加完整的单元测试覆盖
2026-02-10 23:47:40 +08:00
GeWuYou
6cc2bdfeb5 refactor(coroutine): 优化异步操作延续处理逻辑
- 使用while循环替代递归调用避免栈溢出风险
- 改进CAS操作的重试机制提高并发安全性
- 简化空值检查逻辑提升代码可读性
- 优化双重检查锁模式确保线程安全
2026-02-09 19:16:22 +08:00
GeWuYou
058c27ce26 docs(core): 完善核心框架文档注释
- 为 AbstractContextUtility 类添加日志记录器文档注释
- 为 Architecture 类的 IsReady 属性和待初始化组件集合添加详细说明
- 修改 GitHub Actions workflow 使用 autobuild 模式替代手动构建
- 为 CoroutineScheduler 的 IsCoroutineAlive 方法添加完整文档注释
- 为 EnvironmentBase 类的 Initialize 方法和 Register 方法完善参数说明
- 为 IocContainer 的 OnContextReady 方法添加初始化日志记录器说明
- 为 WaitForEvent 协程指令类添加全面的 XML 文档注释和异常说明
2026-02-09 11:37:44 +08:00
GeWuYou
c8be4b317d refactor(core): 将命令和查询总线重构为执行器模式
- 将 CommandBus 重命名为 CommandExecutor 并更新相关接口
- 将 QueryBus 重命名为 QueryExecutor 并更新相关接口
- 将 AsyncQueryBus 重命名为 AsyncQueryExecutor 并更新相关接口
- 更新 ArchitectureContext 中的服务引用和错误消息
- 修改 ArchitectureServices 中的私有字段和公共属性名称
- 更新所有测试文件中的实例变量和服务引用
- 修改测试类名称以匹配新的执行器命名
- 更新状态机系统测试中的容器注册项
2026-02-05 12:46:44 +08:00
GeWuYou
ed09ab7009 refactor(property): 优化可绑定属性和事件系统实现
- 为BindableProperty添加属性值变化事件回调委托的XML文档注释
- 为BindableProperty添加存储属性实际值的受保护字段的XML文档注释
- 统一Event类中泛型参数命名规范,将TK改为Tk以保持一致性
- 更新Event类中所有相关方法和字段的泛型参数类型引用
- 修正Event类中Trigger方法的参数类型声明
2026-02-04 09:06:43 +08:00
GeWuYou
8f388d4a9e docs(ci): 添加文档生成配置和自动化发布流程
- 新增 docfx.json 配置文件用于 API 文档生成
- 在所有项目文件中启用 GenerateDocumentationFile 选项
- 添加 GitHub Actions 工作流 publish-docs.yml 实现文档自动发布
- 配置工作流触发条件支持标签推送和特定提交信息
- 设置文档构建环境使用 .NET 10.0 和 DocFX 工具
- 实现文档站点部署到 GitHub Pages 的完整流程
- [release doc]
2026-02-03 08:15:59 +08:00
GeWuYou
3ad4913f9e refactor(architecture): 优化架构上下文的构造函数和服务获取逻辑
- 使用主构造函数简化 ArchitectureContext 的初始化
- 移除私有字段赋值的冗余代码
- 添加 GetOrCache 方法的详细注释说明
- 为关键业务逻辑添加中文注释
- 保持服务缓存和服务获取的核心功能不变
2026-02-02 21:59:31 +08:00
GeWuYou
7242f58029 refactor(coroutine): 重构 WaitForAllCoroutines 实现
- 修改 WaitForAllCoroutines 构造函数,添加 CoroutineScheduler 参数
- 移除 WaitForAllCoroutines 内部的待处理句柄集合和完成状态管理
- 修改 WaitForAllCoroutines 的 IsDone 属性实现,改为通过调度器检查协程状态
- 移除 WaitForAllCoroutines 的 NotifyCoroutineComplete 方法
- 更新 CoroutineScheduler 中对 WaitForAllCoroutines 的处理逻辑
- 移除调度器中的协程完成通知相关代码
- 更新所有相关测试用例以适应新的构造函数参数
- 添加对 scheduler 参数的空值验证测试
- [release ci]
2026-02-01 16:53:26 +08:00
GeWuYou
ae37b8c5f1 refactor(coroutine): 重构协程等待机制并移除Held状态
- 移除了CoroutineState中的Held状态
- WaitForAllCoroutines不再依赖CoroutineScheduler参数
- 使用HashSet替代IReadOnlyList存储待处理协程句柄
- 添加NotifyCoroutineComplete方法通知协程完成
- 修改HandleYieldInstruction方法使用switch表达式处理不同等待指令
- 移除WaitForCoroutine逻辑中对Held状态的设置
- 添加对WaitForAllCoroutines的完成通知支持
2026-02-01 15:27:49 +08:00
GeWuYou
b4360b01ca refactor(coroutine): 优化 WaitForAllCoroutines 实现逻辑
- 将字段初始化改为构造函数中赋值
- 添加 _isDone 字段缓存完成状态
- 在构造函数中预处理空列表情况
- 优化 Update 方法减少重复计算
- 简化 IsDone 属性实现
- 提升协程等待性能
2026-02-01 15:16:15 +08:00
GeWuYou
120fd14cd8 refactor(coroutine): 重构协程调度器以支持WaitForCoroutine指令
- 将WaitForCoroutine改为构造函数注入协程枚举器的方式
- 添加ProcessWaitingInstruction方法专门处理等待指令
- 添加IsWaiting方法判断协程等待状态
- 添加ProcessCoroutineStep方法处理协程步骤推进
- 添加HandleYieldInstruction方法处理yield指令逻辑
- 实现WaitForCoroutine指令的完整协程等待功能
- 在协程完成时通知WaitForCoroutine指令标记完成状态
- 优化协程调度器的执行流程和异常处理机制
2026-02-01 15:11:51 +08:00
GeWuYou
af583c101c refactor(core): 重构协程扩展和函数式编程相关代码
- 优化 CommandCoroutineExtensions 中的代码格式和异常处理逻辑
- 简化 WaitForEvent 和 WaitForEventWithTimeout 中的EventData属性实现
- 调整 EventListenerScope 中的EventData属性访问器
- 重构 ControlExtensions 中 TakeIf 和 TakeUnless 方法的实现
- 优化 FunctionExtensions 中 Repeat 和 Partial 方法的代码结构
- 调整 PipeExtensions 和其他扩展类的文档注释格式
- 修改测试代码中的协程迭代和事件注册相关实现
- 优化 DataRepository 中的异步操作实现方式
= [release ci]
2026-02-01 14:07:59 +08:00
GeWuYou
1d7fe998b9 feat(context): 添加服务获取扩展方法
- 实现了从上下文感知对象获取指定类型服务的功能
- 添加了泛型约束确保服务类型为引用类型
- 集成了空值检查以提高代码健壮性
- 提供了详细的XML文档注释说明
- 扩展了IContextAware接口的功能范围
2026-02-01 13:33:54 +08:00
GeWuYou
c50797dbe2 fix(coroutine): 修复协程扩展方法中的空引用和测试代码
- 为 RepeatEvery 方法的 action 参数添加可空引用支持
- 更新测试代码中集合断言的语法格式
- 移除测试方法中未使用的变量声明以简化代码
- 修复测试代码中 lambda 表达式的写法以避免不必要的变量赋值
2026-02-01 12:32:26 +08:00
GeWuYou
5a056fca84 feat(coroutine): 添加协程组合扩展功能并优化节点存活检查
- 为SendCommandCoroutineWithErrorHandler方法的onError参数添加默认值null
- 新增CoroutineComposeExtensions扩展类,提供Then方法实现协程顺序组合
- 优化CancelWith扩展方法,改进节点存活检查逻辑
- 使用LINQ All方法简化节点存活状态检查代码
- 添加完整的XML文档注释支持
2026-02-01 12:25:11 +08:00
GeWuYou
9ac4ac0534 feat(coroutine): 扩展命令协程支持超时等待事件
- 为SendCommandAndWaitEventCoroutine方法添加timeout参数支持
- 实现WaitForEventWithTimeout类用于带超时的事件等待
- 添加泛型约束确保命令类型实现IAsyncCommand接口
- 新增EventListenerScope类提供事件监听器作用域管理
- 支持超时异常处理并抛出相应的TimeoutException
- 优化事件回调处理逻辑,确保事件数据正确传递
2026-02-01 10:42:34 +08:00
GeWuYou
a47439f027 feat(coroutine): 添加带超时的事件等待协程指令
- 实现 WaitForEventWithTimeout 类用于带超时的事件等待
- 支持泛型事件类型参数化
- 提供超时检测和事件数据访问功能
- 实现 IYieldInstruction 接口支持协程执行
- 包含时间累加和状态更新逻辑
2026-02-01 10:37:29 +08:00
GeWuYou
32be23b01d feat(coroutine): 添加命令和查询的协程扩展功能
- 实现了 CommandCoroutineExtensions 类,提供命令异步执行的协程包装
- 添加了 SendCommandCoroutineWithErrorHandler 方法处理命令执行异常
- 实现了 SendCommandAndWaitEventCoroutine 方法支持发送命令并等待事件
- 创建了 QueryCoroutineExtensions 类,提供查询操作的协程扩展
- 添加了 WaitForEvent 协程指令用于等待特定事件触发
- 实现了完整的事件监听和资源清理机制
2026-02-01 10:35:11 +08:00
GeWuYou
b2e8ed9787 refactor(functional): 重构函数式编程扩展模块
- 移除 EnumerableExtensions 扩展类及其 Map、Filter、Reduce 方法
- 从 ControlExtensions 中删除 Match、MatchOrDefault、If、IfElse 等控制流方法
- 重命名 FunctionExtensions 中的 Memoize 为 MemoizeUnbounded 并更新文档注释
- 重命名 FunctionExtensions 中的 Partial 相关方法并调整参数命名
- 在 PipeExtensions 中移除 Pipe、Then、After、Let 等方法,保留 Also 方法
- 删除多个功能性类型扩展文件,包括 Option、Result、NullableExtensions 等
- 移除功能扩展的 README.md 文档文件
- 更新相关命名空间引用和依赖关系
- [release ci]
2026-01-31 22:31:50 +08:00
GeWuYou
3493d6a481 docs(functional): 添加函数式编程类型文档和单元测试
- 新增 Option 类型文档,包含核心类型及扩展方法说明
- 新增 Result 类型文档,包含核心类型及扩展方法说明
- 新增 Nullable Extensions 文档,提供可空类型转换功能说明
- 添加 Option 类型单元测试,覆盖基本功能和扩展方法
- 添加 Result 类型单元测试,验证成功失败结果处理
- 添加 Nullable Extensions 单元测试,确保类型转换正确性
- 添加 Option 和 Result 扩展方法的完整测试用例
- [release ci]
2026-01-31 21:52:04 +08:00
GeWuYou
1b442edadd refactor(functions): 重构函数式编程扩展方法
- 使用ConcurrentDictionary替换Dictionary实现线程安全的Memoize功能
- 将TryResult方法重命名为Try并简化返回类型为元组结构
- 为所有功能区域添加代码区域标记(柯里化、部分应用、重复执行、安全执行、缓存、映射)
- 更新Try方法的XML文档注释以匹配新的返回类型
- 移除GFramework.Core.functional.types命名空间引用并添加System.Collections.Concurrent引用
2026-01-31 21:44:45 +08:00
GeWuYou
20dcb87def refactor(control): 修改Match方法返回Option类型
- 将Match方法的返回类型从TResult改为Option<TResult>
- 匹配成功时返回Option<TResult>.Some(handler(value))
- 匹配失败时返回Option<TResult>.None()而不是抛出异常
- 移除InvalidOperationException异常抛出逻辑
2026-01-31 21:40:27 +08:00
GeWuYou
20bbf2297e refactor(pipe): 移除Apply和On扩展方法
- 删除了Apply扩展方法及其相关文档注释
- 删除了On扩展方法及其相关文档注释
- 移除了对应的单元测试方法
- 保留了Also、Pipe等其他管道操作方法
2026-01-31 21:34:02 +08:00
GeWuYou
c9dd969b05 feat(functional): 添加Result类型及其扩展方法支持
- 引入Result<TSuccess, TError>结构体用于表示可能成功或失败的计算结果
- 实现Result类型的Success和Failure静态工厂方法
- 添加SuccessValue和ErrorValue属性用于获取对应值
- 创建ResultExtensions扩展类提供Map、Bind、MapError和Match方法
- 在FunctionExtensions中添加TryResult方法将异常安全执行封装为Result类型
- 更新Try方法的文档注释以反映新的功能和返回类型
2026-01-31 21:31:33 +08:00
GeWuYou
fd3a9ae9e0 feat(functional): 添加函数式编程扩展和Option类型支持
- 在FunctionExtensions中新增Map扩展方法用于对象映射
- 在PipeExtensions中新增On扩展方法用于值到函数的应用
- 移除Tap方法及相关测试以优化管道操作
- 新增NullableExtensions实现可空类型到Option的转换
- 新增Option结构体提供安全的可选值处理
- 新增OptionExtensions提供Map、Bind、Filter、Match等函数式操作
- 新增OptionValueExtensions提供GetOrElse和OrElse值提取方法
- 调整全局引用添加Concurrent集合支持
- 扩展IResetApplyAbleSettings接口添加Data属性
- 更新Godot设置类实现Data属性返回设置数据模型
2026-01-31 21:25:27 +08:00
GeWuYou
43dcae0cf5 refactor(pipe): 重构函数式编程扩展方法为模块化结构
- 将原有的PipeExtensionsTests拆分为多个专门的测试类
- 创建ControlExtensionsTests用于控制流函数测试
- 创建EnumerableExtensionsTests用于集合操作函数测试
- 创建FunctionExtensionsTests用于高级函数操作测试
- 移除旧的综合测试文件中的多余测试方法
- 更新文档结构以反映新的模块化组织方式
- 重新整理README.md文档为模块化分类说明
2026-01-31 15:11:33 +08:00
GeWuYou
5318f5a38f refactor(functional): 重构函数式编程扩展方法组织结构
- 将原有的 PipeExtensions.cs 文件拆分为多个专门的功能模块
- 新增 ControlExtensions.cs 专门处理控制流扩展方法
- 新增 EnumerableExtensions.cs 专门处理集合相关扩展方法
- 新增 FunctionExtensions.cs 专门处理函数式编程核心功能
- 新增 TypeExtensions.cs 专门处理类型转换相关扩展方法
- 移除 PipeExtensions.cs 中的集合操作、函数式核心功能和控制流方法
- 保留 PipeExtensions.cs 中的管道操作相关核心方法
- 优化代码组织结构提升可维护性和可读性
2026-01-31 14:45:16 +08:00
GeWuYou
317bded2e1 docs(GFramework.Core): 添加Pipe扩展方法文档
- 新增函数式编程扩展方法的详细说明文档
- 包含管道操作、函数组合、柯里化等20种核心功能介绍
- 提供每种方法的具体用法示例和代码片段
- 添加链式操作和函数组合的实际应用场景
- 补充注意事项和适用场景说明
2026-01-31 09:11:55 +08:00
GeWuYou
b4c1096b10 feat(core): 添加函数式编程管道扩展方法
- 实现 Pipe 方法用于将值传递给函数
- 添加 Then 和 After 方法用于函数组合操作
- 提供 Tap 和 Also 方法用于执行副作用操作
- 添加 Map、Filter、Reduce 方法用于集合操作
- 实现 Curry、Uncurry、Partial 方法支持柯里化
- 添加 Match 和 MatchOrDefault 方法用于模式匹配
- 提供 If、IfElse 条件执行功能
- 添加类型转换相关方法 As、Cast
- 实现 Let、TakeIf、TakeUnless 等 方法
- 添加 Repeat 方法用于重复执行函数
- 提供 Try 方法用于安全执行函数
- 实现 Memoize 方法用于函数结果缓存
2026-01-31 09:06:10 +08:00