1 dépôt
Code generators that synthesize cross-language validation logic based on shared message schemas.
Distinct from Polyglot Code Generation: Specifically focuses on generating validation logic for messages, rather than general functional code generation
Explore 1 awesome GitHub repository matching programming languages & runtimes · Message Validators. Refine with filters or upvote what's useful.
Ce projet est un plugin de validation de protocol buffers et un générateur de code qui crée une logique de validation cohérente à travers plusieurs langages de programmation. Il fonctionne comme une extension de compilateur pour la chaîne d'outils Protocol Buffer, permettant aux développeurs de définir des contraintes sémantiques directement dans les fichiers de schéma pour assurer la cohérence des données. L'outil utilise des options personnalisées pour intégrer des règles de validation dans les définitions de messages, mappant ces contraintes de schéma vers des modèles d'implémentation spécifiques au langage. Il emploie une vérification de contrainte basée sur des prédicats et un parcours récursif pour appliquer les règles à travers les hiérarchies de messages imbriquées. La surface de validation couvre les plages et valeurs numériques, les modèles et formats de chaînes, les contraintes de séquence d'octets et l'application des enums. Il gère également les tailles de collections et de champs répétés, la validation de types complexes pour les horodatages et les durées, et les exigences pour la sélection de champs d'union.
Generates consistent validation logic across multiple programming languages based on shared schema definitions.