awesome-repositories.com
Blog
MCP
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetServeur MCPÀ proposNotre méthodologiePresse
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

16 dépôts

Awesome GitHub RepositoriesRecursive Type Resolution

The process of traversing nested object hierarchies to resolve and instantiate appropriate types.

Distinct from Generic Type Resolution: More specific than Generic Type Resolution; focuses on the recursive traversal of hierarchies to instantiate child types.

Explore 16 awesome GitHub repositories matching software engineering & architecture · Recursive Type Resolution. Refine with filters or upvote what's useful.

Awesome Recursive Type Resolution GitHub Repositories

Trouvez les meilleurs dépôts grâce à l'IA.Nous recherchons les dépôts les plus pertinents grâce à l'IA.
  • katex/katexAvatar de KaTeX

    KaTeX/KaTeX

    20,177Voir sur GitHub↗

    KaTeX is a typesetting library and web math renderer that transforms TeX and LaTeX mathematical notation into high-quality HTML and CSS for web browsers. It functions as a math notation parser and LaTeX to HTML converter, capable of operating as both a client-side library and a server-side math renderer to generate static HTML expressions. The project supports a wide range of specialized mathematical rendering, including chemical equation rendering, Bra-ket notation for quantum mechanics, and mathematical logic typesetting. It provides comprehensive controls for structural layouts such as mat

    Prevents infinite loops and resource exhaustion by capping the number of nested macro resolutions.

    TypeScriptjavascriptkatexlatex
    Voir sur GitHub↗20,177
  • doctrine/instantiatorAvatar de doctrine

    doctrine/instantiator

    10,999Voir sur GitHub↗

    Instantiator is a PHP library designed to create class instances without invoking their constructors. It uses the PHP Reflection API to allocate objects in memory and initialize them in a predefined state, bypassing standard constructor logic. The project functions as a data hydration tool and a testing helper. It enables the population of PHP objects from external data sources by mapping values directly to properties, regardless of whether those properties are public, protected, or private. This capability allows for the generation of objects in specific internal states for unit tests withou

    Traverses nested object hierarchies to resolve and instantiate appropriate types based on reflection data.

    PHP
    Voir sur GitHub↗10,999
  • automapper/automapperAvatar de AutoMapper

    AutoMapper/AutoMapper

    10,191Voir sur GitHub↗

    AutoMapper is a .NET object-to-object mapper designed to transfer data between different object types. It functions as an automated mapping library that reduces the need for manual property assignments by using naming conventions to match properties between classes. The library focuses on automating data projection and the conversion of internal domain models into data transfer objects. It supports layered architecture decoupling by mapping data between domain entities and view models. The system employs convention-based member matching, flattening-based property projection, and recursive ty

    Walks through nested object hierarchies to resolve and instantiate child types based on mapping configurations.

    C#
    Voir sur GitHub↗10,191
  • ljharb/qsAvatar de ljharb

    ljharb/qs

    8,940Voir sur GitHub↗

    qs est une bibliothèque de parsing et de sérialisation de chaînes de requête (query strings) utilisée pour convertir des chaînes d'URL en objets JavaScript et transformer des objets ou des tableaux en chaînes encodées URI. Elle fonctionne comme un parseur sécurisé et un utilitaire d'encodage URI, spécifiquement conçu pour gérer des structures de données imbriquées. La bibliothèque se distingue par ses styles d'imbrication configurables et ses formats de sérialisation de tableaux. Elle prend en charge une logique d'encodage de caractères personnalisée et utilise des sentinelles de charset pour gérer les conversions entre UTF-8 et ISO-8859-1. Pour prévenir l'épuisement des ressources et les vulnérabilités de sécurité, le projet implémente une limitation du nombre de paramètres et des restrictions strictes sur la profondeur de parsing. Il inclut également des capacités de gestion des valeurs nulles, de filtrage de clés basé sur des prédicats, et des fonctions d'encodage enfichables pour gérer la sérialisation des données.

    Enforces a maximum nesting level during object reconstruction to prevent resource exhaustion and DoS attacks.

    JavaScript
    Voir sur GitHub↗8,940
  • openapi-ts/openapi-typescriptAvatar de openapi-ts

    openapi-ts/openapi-typescript

    8,180Voir sur GitHub↗

    openapi-typescript is an OpenAPI TypeScript type generator and schema transformer. It converts JSON or YAML OpenAPI specification files into static TypeScript type definitions to provide end-to-end API type safety. The tool functions as a static type generator that transforms external API definitions into interfaces and types. It focuses on zero-runtime type enforcement, ensuring that data consistency is maintained via the TypeScript type system without adding overhead to production bundles. The project covers API type safety and schema conversion, facilitating the validation of request bodi

    Implements recursive traversal of schema hierarchies to resolve nested and circular type references.

    TypeScriptopenapiopenapi3openapi3-1
    Voir sur GitHub↗8,180
  • arktypeio/arktypeAvatar de arktypeio

    arktypeio/arktype

    7,780Voir sur GitHub↗

    Arktype is a TypeScript runtime validation library and schema orchestrator. It synchronizes TypeScript types with runtime data validation, allowing users to define type-safe schemas that ensure unknown data adheres to specific structures during application execution. The project distinguishes itself by using set-theory type analysis to determine intersections and subtype compatibility, alongside JIT-compiled validation functions for optimized performance. It supports advanced type modeling through branded type constraints, recursive alias resolution, and the ability to generate runtime valida

    Manages named type references and self-referential structures through a resolution space for complex schema definitions.

    TypeScriptjavascriptparsingruntime-typechecking
    Voir sur GitHub↗7,780
  • go-yaml/yamlAvatar de go-yaml

    go-yaml/yaml

    7,023Voir sur GitHub↗

    This library is a YAML encoder and decoder for native Go data structures. It provides the tools necessary to transform internal data into YAML formatted text and convert YAML input streams back into structured data. The parser includes built-in protections against resource exhaustion attacks by enforcing limits on document depth and alias resolution. It also ensures deterministic output by employing consistent key sorting for maps. The project covers serialization and deserialization workflows, including struct mapping and custom marshaling interfaces. It also handles input encoding detectio

    Provides security-driven limits on the nesting level of objects during deserialization to prevent resource exhaustion attacks.

    Go
    Voir sur GitHub↗7,023
  • sebastianbergmann/exporterAvatar de sebastianbergmann

    sebastianbergmann/exporter

    6,822Voir sur GitHub↗

    This project is a PHP variable export library designed to convert complex data structures and internal memory states into human-readable strings. It functions as a debugging tool that transforms variables and object hierarchies into formatted text for state inspection and troubleshooting. The system prevents output clutter by creating compact string representations of data types and circular references. It employs recursive traversal with depth limiting and circular reference detection to ensure that complex hierarchies are visualized without causing infinite loops. The library covers a broa

    Tracks the nesting level during variable traversal to prevent infinite loops when encountering circular object references.

    PHP
    Voir sur GitHub↗6,822
  • neuecc/messagepack-csharpAvatar de neuecc

    neuecc/MessagePack-CSharp

    6,710Voir sur GitHub↗

    MessagePack-CSharp is a high-performance binary serialization library for .NET applications that converts object graphs into the MessagePack format. It functions as a C# data serialization toolkit and a polymorphic binary encoder capable of handling abstract classes and interfaces using union keys to identify concrete derived types. The library provides a binary format transcoder to transform binary data into human-readable JSON for debugging. It supports ahead-of-time formatter generation to avoid runtime overhead and implements LZ4 binary compression to reduce the size of serialized data.

    Protects against resource exhaustion attacks by limiting the maximum nesting depth of object graphs during decoding.

    C#
    Voir sur GitHub↗6,710
  • sebastianbergmann/recursion-contextAvatar de sebastianbergmann

    sebastianbergmann/recursion-context

    6,574Voir sur GitHub↗

    recursion-context is a set of PHP utilities for traversing and modifying deep data hierarchies. It provides a recursive variable processor designed to apply transformations across nested arrays and objects while maintaining stability. The project distinguishes itself through a recursion depth controller and reference tracking to prevent infinite loops and memory exhaustion when processing circular data structures. It monitors the level of nesting during traversal to avoid stack overflows. These tools cover hierarchical data transformation and nested data processing, allowing for stateful vis

    Monitors recursion depth during nested variable operations to prevent memory exhaustion and stack overflows.

    PHP
    Voir sur GitHub↗6,574
  • netflix/fast_jsonapiAvatar de Netflix

    Netflix/fast_jsonapi

    5,036Voir sur GitHub↗

    fast_jsonapi est un sérialiseur d'objets Ruby conçu pour transformer des objets de données backend complexes en représentations JSON structurées. Il implémente spécifiquement le format JSON:API pour assurer un échange de données cohérent entre serveurs et clients. La bibliothèque fonctionne comme un générateur de document composé, permettant aux ressources liées d'être intégrées au sein d'une seule réponse pour minimiser les requêtes réseau. Elle utilise une définition de schéma basée sur les classes pour découpler les modèles de base de données internes de la représentation API publique. Le projet inclut un outil en ligne de commande pour générer du boilerplate de sérialiseur en scannant les schémas de base de données. La performance est gérée par la mise en cache de sortie basée sur les clés et des outils d'instrumentation qui suivent la latence d'exécution des processus de sérialisation et d'encodage.

    Recursively traverses object associations to resolve and embed related resources into a single compound document.

    Rubynot-maintained
    Voir sur GitHub↗5,036
  • dubzzz/fast-checkAvatar de dubzzz

    dubzzz/fast-check

    4,778Voir sur GitHub↗

    fast-check is a property-based testing framework and random data generator designed to verify software invariants by producing a wide range of randomized input data. It functions as a test data fuzzer that executes predicates against high volumes of random inputs to uncover edge cases and critical bugs. The project is distinguished by its ability to perform input-shrinking searches, which reduce complex failing inputs to their simplest form to isolate the exact cause of failure. It provides deterministic seed replay to exactly reproduce specific test failures and includes a concurrency testin

    Enables the definition of complex data structures where types refer to each other recursively.

    TypeScriptfakerfuzzinggenerative-testing
    Voir sur GitHub↗4,778
  • apache/foryAvatar de apache

    apache/fory

    4,234Voir sur GitHub↗

    Fory is a cross-language serialization framework and binary data serializer designed to convert complex object graphs into a compact binary format for high-performance data exchange. It includes an IDL-based schema compiler to transform interface definition language files into type-safe native data models and a schema evolution manager to maintain forward and backward compatibility. The project features a zero-copy data access layer that allows reading specific fields from binary rows without deserializing the entire object. It supports dual-mode serialization, enabling a toggle between a por

    Protects against recursive object attacks using depth limiting and type whitelists.

    Javacompressioncppcross-language
    Voir sur GitHub↗4,234
  • square/kotlinpoetAvatar de square

    square/kotlinpoet

    4,141Voir sur GitHub↗

    KotlinPoet est une API basée sur Java permettant de créer et de formater par programmation des fichiers source Kotlin. Il sert de générateur de code source et de mappeur de système de types, offrant un framework pour construire des structures de code Kotlin via un modèle typé des éléments du langage afin d'automatiser la production de code répétitif (boilerplate). Le projet utilise un pattern de type fluent-builder pour construire progressivement les éléments du langage et maintient une représentation interne sous forme d'objet qui sépare la structure logique du formatage final du texte. Il gère la complexité de l'émission du code source grâce à un formatage basé sur l'indentation et à l'échappement des noms sensibles aux mots-clés pour garantir une sortie valide. La bibliothèque couvre la génération d'un large éventail de déclarations, notamment les classes, interfaces, fonctions, propriétés et companion objects. Elle inclut des utilitaires pour gérer des types paramétrés complexes, des classes enum et des alias de type, ainsi que des outils pour intégrer des littéraux et construire des blocs de contrôle de flux. La gestion automatique des imports et le référencement des déclarations sont intégrés pour résoudre les membres par leurs noms qualifiés. KotlinPoet offre des capacités pour transformer les données de réflexion et les symboles en représentations source et prend en charge l'exportation de spécifications de fichiers pour une utilisation dans les outils de traitement d'annotations.

    Maps type parameters across multiple levels of nesting to ensure correct type resolution in generated code.

    Kotlincode-generationjavapoetkotlin
    Voir sur GitHub↗4,141
  • ts-essentials/ts-essentialsAvatar de ts-essentials

    ts-essentials/ts-essentials

    4,068Voir sur GitHub↗

    ts-essentials is a comprehensive toolkit of utility types and libraries for TypeScript, providing advanced primitives for recursive structural transformations, runtime assertions, and type guards. It serves as a utility library for performing complex type-level programming to ensure stronger type safety and reduce boilerplate. The project distinguishes itself through a specialized set of tools for deep object manipulation, such as recursively applying read-only or optional modifiers across nested hierarchies. It also provides a dedicated set of strict type constraints to ensure data structure

    Generates union types of string paths to resolve value types at specific nested locations within objects.

    TypeScriptessentialstoolboxtype-level-programming
    Voir sur GitHub↗4,068
  • juhaku/utoipaAvatar de juhaku

    juhaku/utoipa

    3,682Voir sur GitHub↗

    utoipa is a Rust API documentation tool used to generate machine-readable OpenAPI specifications. It functions as a specification generator and schema mapper that converts Rust structs and enums into compliant OpenAPI schemas. The project distinguishes itself by using procedural macros and traits to automate metadata extraction from code. It supports complex data modeling, including generics, polymorphism, and recursive type resolution, while synchronizing field renaming and tagging from serialization attributes. It also enables the composition of modular specifications, allowing multiple sma

    Prevents infinite loops during schema generation by tracking type references and marking termination points for cyclic structures.

    Rustauto-generatedcompile-timedocumentation
    Voir sur GitHub↗3,682
  1. Home
  2. Software Engineering & Architecture
  3. Generic Type Definitions
  4. Generic Type Resolution
  5. Recursive Type Resolution

Explorer les sous-tags

  • Object Path Type ResolutionsUtilities that resolve the value type at a specific nested string path within an object. **Distinct from Recursive Type Resolution:** Focuses on resolving types via string paths rather than general recursive instantiation of generics
  • Recursive Data Generators1 sous-tagGenerators capable of producing mutually recursive data structures using builder patterns. **Distinct from Recursive Type Resolution:** Focuses on the generation of recursive data rather than the resolution or processing of types.
  • Recursive Object UnmarshallingInstantiating complex, nested data types from binary buffers using recursive traversal. **Distinct from Recursive Type Resolution:** Specifically addresses the unmarshalling of bytecode-encoded objects rather than general type resolution.