6 个仓库
Techniques for modifying tree structures by reusing unchanged nodes to ensure thread-safe and efficient updates.
Distinct from Trees: Focuses on immutable tree manipulation for code structures, distinct from general tree data structures.
Explore 6 awesome GitHub repositories matching software engineering & architecture · Immutable Transformations. Refine with filters or upvote what's useful.
The .NET Compiler Platform is a collection of open-source APIs for C# and Visual Basic that provides deep code analysis, refactoring, and automated source code generation. It serves as the core infrastructure for building development tools, offering a platform to inspect, modify, and understand source code through immutable syntax trees and semantic models. The platform distinguishes itself by providing full-fidelity syntax trees that preserve every character of source code, including whitespace and comments, alongside an incremental compilation pipeline that enables near-instant feedback dur
Enables efficient, thread-safe code modifications by reusing unchanged nodes in immutable syntax trees.
go-datastructures is a collection of thread-safe and lock-free data structures designed for high-performance concurrent applications in Go. It provides a modular library of specialized algorithmic toolsets, including a lock-free collection library and an immutable data structure library. The project distinguishes itself through a suite of persistent AVL trees and hash array mapped tries that use branch-copying to preserve previous versions. It also implements non-blocking hash maps, queues, and tries that enable linearizable snapshots and concurrent updates without the use of mutual exclusion
Implements thread-safe AVL trees using branch-copying techniques to preserve previous versions of the data structure.
This is a configuration library for JVM applications that parses HOCON, JSON, and Java properties files into an immutable tree structure. It resolves ${...} placeholders by traversing the configuration tree and falling back to environment variables and system properties, and validates loaded configurations against a reference schema. The library loads configuration from classpath resources, files, URLs, system properties, and environment variables, merging them with priority-based override semantics. It provides typed value access with automatic type coercion, supports dot-path navigation,
Represents parsed configuration as an immutable tree that produces new instances on modification.
phpDocumentor 是一个 PHP API 文档生成器和源代码分析器,将 PHP 文件和 DocBlocks 转换为结构化的 HTML API 参考。它作为一个静态站点生成器和自动化文档工具,旨在使技术文档与代码变更保持同步。 该项目的独特之处在于它充当 UML 图生成器,基于源代码分析通过 PlantUML 生成类图和架构图。它还支持技术手册编写,在自动生成的 API 参考旁边渲染手写的 Markdown 和 ReStructuredText 指南。 该工具提供了广泛的源代码分析能力,包括抽象语法树的生成、元数据标记以及文档继承的管理。它包括用于代码架构、元素可见性控制和版本化文档管理的可视化工具。 构建可以通过 XML 配置文件进行管理,以在持续集成管道中实现自动化生成。
Merges XML settings and command-line options into a versioned configuration schema using a builder.
该项目是一个 PHP 配置管理库,用于定义、加载和验证应用设置。它作为一个配置合并引擎和模式验证器,确保软件在不同安装环境下表现一致。 该库充当多格式配置加载器,将 YAML 和 XML 等各种文件类型的设置转换为标准化的内部格式。它允许建立带有验证规则和默认值的正式配置模式,以防止因无效输入导致的运行时错误。 该系统支持分层配置合并,将来自多个优先级排序源的设置组合成一个统一的集合。此过程包括递归数组合并和基于树的归一化,以解决冲突值并应用环境特定的覆盖。
Normalizes raw input data from various sources into a consistent final configuration state.
swift-syntax is a library for parsing, manipulating, and generating Swift source code. It provides a source-accurate abstract syntax tree representation of Swift code, acting as a parser, transformer, and code generator. The project serves as the infrastructure for Swift macro development, enabling the expansion and transformation of source code during compilation. It is used to build compiler tooling for static analysis, formatting, and automated refactoring. The system covers a broad range of source analysis capabilities, including the ability to convert source code into structured trees f
Uses an immutable node hierarchy to ensure thread safety and stable transformations during syntax tree manipulation.