35 repositorios
Resolving generic type arguments at runtime to instantiate correct types for nested collections.
Distinct from Generic Type Definitions: Focuses on runtime resolution of generics for deserialization, unlike Generic Type Definitions which focus on static analysis.
Explore 35 awesome GitHub repositories matching software engineering & architecture · Generic Type Resolution. Refine with filters or upvote what's useful.
Fastjson is a Java data binding framework and serialization library designed to convert objects to JSON strings and parse JSON data into typed objects. It functions as a JSON parser and stream processor capable of transforming JSON strings into data structures. The project emphasizes high performance JSON processing and memory management, specifically through the use of a pipeline to stream oversized JSON objects and texts to prevent memory exhaustion. It provides capabilities for JSON data serialization and deserialization workflows, including custom JSON data mapping and the ability to def
Ensures correct object instantiation for nested collections by resolving complex generic type arguments during deserialization.
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.
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.
MagicalRecord is a data persistence library and wrapper for Core Data that implements the Active Record pattern. It maps database rows directly to object instances, allowing for the creation, update, and retrieval of records without writing manual query logic. The project functions as a mapping layer that synchronizes object properties with a managed object context. It utilizes generic-based type resolution and model-class querying to enable data fetching directly on model classes, which removes the need for a separate external manager and reduces repetitive fetch request boilerplate. The li
Uses Swift generics to automatically resolve and instantiate the correct entity types during data retrieval.
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.
RestSharp is a .NET HTTP client library designed for interacting with RESTful web services. It provides a high-level request wrapper and a dedicated REST API client to manage endpoints, headers, and query parameters. The library includes a serialization mechanism that automatically converts objects to and from JSON or XML formats for API payloads. It also features a system for managing API credentials and security tokens to ensure authorized access to protected remote resources. The toolkit covers broad capabilities for external web service integration, including generic type-based deseriali
Automatically maps HTTP response bodies to specified C# types using generic type parameters and reflection.
Refit is a type-safe REST client for .NET that transforms API definitions into live interfaces. It functions as an automatic API proxy generator, allowing developers to define endpoints as interfaces to eliminate manual HTTP request boilerplate. The library is designed for compatibility with ahead-of-time compilation and trimmed binaries, utilizing build-time source generation to ensure support for native AoT deployments. The project covers a broad range of API integration capabilities, including attribute-driven request composition, automatic JSON deserialization, and request header managem
Converts raw HTTP response bodies into strongly typed objects using pluggable serialization engines.
ObjectMapper is a JSON serialization framework for Swift that maps JSON strings and dictionaries into strongly typed classes and structs. It functions as a data mapper and converter, facilitating the bidirectional transformation of data between raw JSON and Swift model objects. The library uses protocol-based mapping to associate specific JSON keys with object properties. It supports nested key extraction via dot-notation pathing and employs custom transformation classes to bridge the gap between JSON and Swift types. The framework provides capabilities for model validation during initializa
Handles classes with generic type parameters by ensuring generic types conform to the mapping protocol.
qs es una librería de análisis y serialización de cadenas de consulta utilizada para convertir cadenas de consulta de URL en objetos de JavaScript y transformar objetos o matrices de nuevo en cadenas codificadas por URI. Funciona como un analizador seguro y una utilidad de codificación URI, diseñada específicamente para manejar estructuras de datos anidadas. La librería se distingue por estilos de anidamiento configurables y formatos de serialización de matrices. Proporciona soporte para lógica de codificación de caracteres personalizada y utiliza centinelas de conjunto de caracteres para gestionar conversiones entre UTF-8 e ISO-8859-1. Para evitar el agotamiento de recursos y vulnerabilidades de seguridad, el proyecto implementa limitación de recuento de parámetros y restricciones estrictas de profundidad de análisis. También incluye capacidades para el manejo de valores nulos, filtrado de claves basado en predicados y funciones de codificación conectables para gestionar cómo se serializan los datos.
Enforces a maximum nesting level during object reconstruction to prevent resource exhaustion and DoS attacks.
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.
HybridCLR is a hybrid C# execution engine and assembly loader designed for Unity. It provides a system for hot-updating C# logic across all platforms at runtime without requiring the application to be rebuilt or reinstalled. The project is distinguished by its mixed-mode execution, which runs unmodified code at native speed while using a high-performance interpreter for updated functions. It includes a generic type resolver that allows hot-updated code to use generic classes and functions regardless of whether they were pre-instantiated in the main binary. To protect proprietary source code,
Provides runtime generic type resolution to allow hot-updated code to use any generic class regardless of pre-instantiation.
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.
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.
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.
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.
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.
CsvHelper es una librería para leer y escribir archivos de valores separados por comas mapeando datos a objetos de clase personalizados. Funciona como una librería de análisis y mapeador de datos que convierte texto de archivo plano en objetos de datos estructurados y serializa conjuntos de datos internos de vuelta a archivos CSV estándar. El proyecto enfatiza la eficiencia de la memoria a través de un analizador que optimiza el consumo de recursos. Utiliza caché de valores de campo y una caché de cadenas internadas para almacenar valores repetitivos, lo que reduce la sobrecarga de memoria al procesar grandes conjuntos de datos. La librería proporciona un motor de análisis basado en configuración que soporta varios delimitadores y caracteres de escape. Gestiona la relación entre columnas CSV y propiedades de clase utilizando mapeo basado en atributos e instanciación de objetos basada en reflexión. El procesamiento se maneja mediante análisis secuencial basado en flujo para gestionar archivos de gran volumen sin cargar todo el conjunto de datos en la memoria.
Uses generic type parameters to ensure raw CSV string values are projected into strongly typed class objects.
c3c is the compiler for the C3 programming language, transforming source code into executable binaries, static libraries, or dynamic libraries using an LLVM backend. It implements a system based on result-based error handling, scoped memory pooling, and a semantic macro system. The compiler provides first-class support for hardware-backed SIMD vectors that map directly to processor instructions and enables runtime polymorphism through interface-based dynamic dispatch. The project covers a broad set of low-level capabilities, including manual and pooled memory management, inline assembly inte
Allows the creation of usable types from strings or type identifiers during compilation.
fast_jsonapi es un serializador de objetos de Ruby diseñado para transformar objetos de datos de backend complejos en representaciones JSON estructuradas. Implementa específicamente el formato JSON:API para garantizar un intercambio de datos coherente entre servidores y clientes. La biblioteca funciona como un generador de documentos compuestos, permitiendo que los recursos relacionados se incrusten dentro de una única respuesta para minimizar las solicitudes de red. Utiliza una definición de esquema basada en clases para desacoplar los modelos de base de datos internos de la representación de la API pública. El proyecto incluye una herramienta de línea de comandos para generar boilerplate de serializador escaneando esquemas de base de datos. El rendimiento se gestiona mediante caché de salida basada en claves y herramientas de instrumentación que rastrean la latencia de ejecución de los procesos de serialización y codificación.
Recursively traverses object associations to resolve and embed related resources into a single compound document.
Esta biblioteca es un analizador de línea de comandos para .NET en C# y F# que implementa las convenciones POSIX getopt para mapear argumentos de shell en objetos fuertemente tipados. Proporciona un framework para construir aplicaciones de consola que procesan flags y opciones al estilo Unix. El proyecto cuenta con un sistema de enrutamiento que dirige la ejecución del programa basándose en verbos orientados a la acción, admitiendo subcomandos y acciones predeterminadas. Incluye un generador automático de ayuda que produce instrucciones de uso localizadas y pantallas de ayuda formateadas basadas en las opciones de comando definidas. El conjunto de herramientas cubre el análisis de argumentos con mapeo fuertemente tipado, validación de entrada para opciones mutuamente excluyentes o requeridas, y la capacidad de serializar objetos de opciones poblados de nuevo en cadenas de línea de comandos.
Implements strongly typed mapping of raw terminal strings into structured C# or F# objects.