3 个仓库
Functions that apply a transformation to a value within an immutable structure to produce a new version.
Distinct from Map Value Updaters: Specifically focuses on producing new immutable versions via functions, unlike general map value updaters.
Explore 3 awesome GitHub repositories matching devops & infrastructure · Immutable Value Transformers. Refine with filters or upvote what's useful.
这是一个 JavaScript 不可变数据库,用于创建防止直接修改的对象和数组。它作为一个不可变状态管理器和对象包装器,通过阻止修改来确保数据一致性,同时保持与标准 JavaScript 语法的兼容性。 该库的功能类似于转换器,可将标准可变数据转换为冻结结构,并在需要本地修改时将其转回。这种工作流允许在不可变和可变版本之间切换数据,以便在再次锁定状态前进行批量编辑。 该项目提供了嵌套数据转换功能,包括基于路径的更新、对象深度合并以及在深层结构中查询值。它还支持数组到对象的转换、通过谓词移除属性,以及检测结构是否为不可变的能力。
Allows applying transformer functions to properties to calculate new values while maintaining immutability.
immutability-helper 是一个不可变数据操作库和对象实用工具,用于创建对象和数组的修改副本。它作为一个基于命令的状态管理器和函数式数据转换器,确保原始源数据在更新过程中保持不变。 该库通过使用一组声明式的变异命令和描述符来指定更改,从而脱颖而出。如果在变异过程中没有发生实际更改,它会返回原始对象引用,从而保持引用相等性。 它提供了对嵌套结构进行深度克隆以及对对象、数组、Map 和 Set 执行复杂状态变异的功能。该系统支持通过可插拔的变异引擎合并不可变对象并应用自定义转换逻辑。
Executes user-defined functions on specific values to produce new immutable versions of the data structure.
Returns 是一个 Python 函数式编程库,提供用于管理状态、错误处理和可选性的类型安全容器。它作为一个单子 (monadic) 容器库和类型安全错误处理框架,用 Result 和 Optional 容器替换传统的 try-catch 块和空值检查,从而将异常视为数据。 该项目的特色在于使用专门的 Mypy 静态分析插件来验证函数式流水线并模拟高阶类型。它提供了通过 IO 容器隔离副作用的机制,并提供了一个类型安全依赖注入框架,将依赖项的提供推迟到计算的最终执行阶段。 该库涵盖了广泛的函数式原语,包括柯里化、部分应用和声明式数据流水线的组合。它通过将协程包装在容器中来链式处理非阻塞操作,从而支持异步工作流管理,并包括用于资源生命周期管理和自定义容器代数定律验证的实用程序。
Applies pure functions to values inside containers via mapping and binding to produce updated containers.