2 dépôts
Transfers data between Go types by matching fields, methods, and tags at runtime without manual assignment.
Distinct from Reflection-Based Data Binding: Distinct from Reflection-Based Data Binding: focuses on data transfer between types rather than request payload binding.
Explore 2 awesome GitHub repositories matching web development · Reflection-Based Data Mappers. Refine with filters or upvote what's useful.
Copier is a Go library that deep copies data between structs, maps, and slices using reflection-based field mapping and struct tag controls. At its core, it automatically transfers values by matching source and destination fields by name, type, and methods, creating fully independent copies of nested data structures to prevent shared references and unintended mutations. The library distinguishes itself through tag-driven copy rules that give developers fine-grained control over the copying process. Struct tags can enforce mandatory field copying, exclude specific fields from transfer, or map
Transfers data between Go types by matching fields, methods, and tags at runtime.
YYModel est une bibliothèque de mapping de modèles JSON et un mapper de données bidirectionnel conçu pour transformer des données JSON brutes en objets de modèle structurés et vice versa. Il fonctionne comme un parseur JSON typé qui utilise la coercition de type automatique pour éviter les plantages d'application causés par des types de données incompatibles lors du processus de parsing. Le framework utilise l'introspection au runtime pour mapper les clés JSON aux propriétés du modèle en fonction de règles de nommage et de configurations explicites. Il prend en charge l'instanciation d'objets de modèle imbriqués via un parcours récursif de la hiérarchie des données et fournit une couche de traduction cohérente pour la sérialisation et la désérialisation. Sa surface de capacités couvre la logique de mapping de données pour lier des clés discordantes aux propriétés et un flux de sérialisation qui standardise les objets de date en utilisant le format ISO8601. L'outil transforme des dictionnaires bruts en objets structurés en utilisant une approche basée sur le schéma pour garantir la sécurité des types pour la transmission réseau ou le stockage local.
Uses runtime introspection and reflection to instantiate nested models and map data based on predefined naming rules.