4 repositorios
Mechanisms for creating new types that simultaneously enforce multiple existing type constraints.
Distinct from Generic Type Constraints: Distinct from Generic Type Constraints: focuses on combining multiple discrete types into one rather than constraining a generic parameter.
Explore 4 awesome GitHub repositories matching programming languages & runtimes · Type Constraint Combinations. Refine with filters or upvote what's useful.
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
Creates new types that enforce the constraints of two or more existing types simultaneously.
CUE is a constraint-based configuration language designed for data validation, schema definition, and code generation. At its core, it unifies types and values into a single concept, enabling compile-time validation that catches structural and value errors before runtime. The language treats data and constraints as the same thing, allowing a single definition to serve as both a schema and concrete configuration data. CUE distinguishes itself through its constraint-based unification engine, which combines multiple configuration sources into a single coherent result by merging their constraints
Implements the & operator to unify list elements into a single constraint, returning top for empty lists.
TypeSpec is a language for defining cloud API shapes and generating OpenAPI, JSON Schema, and client/server code from a single source of truth. It functions as a protocol-agnostic API designer that models REST, gRPC, and other API protocols using a unified, extensible syntax, with a decorator-based metadata system for attaching metadata, validation rules, and lifecycle visibility to API models and operations. The compiler produces OpenAPI 3.0 specifications and other artifacts, and the tool supports declaring API versions and tracking changes to models, properties, and operations across releas
Combines two or more type definitions into a single type that must satisfy all constituent types simultaneously.
Cats es una biblioteca de programación funcional y type classes para Scala, diseñada para implementar patrones algebraicos y abstracciones funcionales. Proporciona un conjunto estandarizado de interfaces y un kit de herramientas modular de wrappers y contenedores funcionales para permitir el polimorfismo ad-hoc y la programación genérica entre tipos dispares. El proyecto sirve como estándar de abstracción funcional, ofreciendo una suite de transformadores de mónadas para componer contextos con efectos anidados y manejar múltiples efectos secundarios computacionales dentro de un solo pipeline. Además, permite la construcción de lenguajes específicos de dominio (DSL) embebidos al representar la lógica del programa como estructuras de datos que se interpretan por separado de sus definiciones. La biblioteca cubre amplias áreas de capacidad, incluyendo la manipulación algebraica de datos para combinar y reducir valores, gestión de estado con seguridad de tipos y manejo funcional de errores para formalizar la acumulación y recuperación de errores. También proporciona herramientas para la gestión de computación con efectos y la extensión de tipos de colección estándar con capacidades funcionales. La biblioteca incluye mecanismos para la validación de leyes algebraicas, asegurando que las instancias de type classes cumplan con las propiedades matemáticas.
Provides the ability to combine values of a type constructor based on the constructor's structure.