22 repositorios
Functions that verify value identity and enforce consistency.
Explore 22 awesome GitHub repositories matching software engineering & architecture · Equality Validators. Refine with filters or upvote what's useful.
Typst is a programmable, markup-based typesetting engine designed for professional document creation. It functions as a scriptable publishing toolchain that transforms plain text and code into complex, paginated outputs. By utilizing a high-performance compiler, the system automates document assembly, mathematical rendering, and dynamic content generation, providing a unified workflow for academic and technical authoring. The engine distinguishes itself through a declarative layout framework that uses cascading rules to manage document structure and visual styling. Unlike traditional systems,
Checks that two values are identical and raises an error if they differ to ensure state consistency.
The Rust Programming Language Book is the official technical guide and educational resource for the Rust language. It provides a comprehensive walkthrough of the language's design, focusing on its core identity as a systems programming language that enforces memory safety and high-performance execution without the need for a garbage collector. The project is distinguished by its focus on ownership, borrowing, and lifetime tracking, which allow the compiler to verify memory safety and thread safety at compile time. It covers the language's unique approach to zero-cost abstractions, including t
Provides operators to check if two instances are equivalent.
This project is a technical interview study guide and a markdown-driven static site designed to help developers prepare for coding screenings. It serves as a curated collection of common technical questions and expert answers, functioning as a comprehensive educational resource. The platform provides a structured curriculum and reference materials across several key domains. This includes a JavaScript language reference covering programming fundamentals, a frontend engineering curriculum focused on UI patterns and responsive design, and a web security knowledge base detailing attack vectors a
Explains loose equality comparisons that allow for type coercion between operands.
This project is a technical interview preparation resource focused on JavaScript. It provides a collection of common technical questions, detailed answers, and conceptual quizzes designed to help users master core language fundamentals and browser APIs. The resource utilizes an interactive infrastructure that includes a coding workspace with in-browser runtime execution and an automated test suite to validate code correctness. It organizes content through curated learning paths and modular concept mapping to decompose complex language fundamentals into searchable study modules. The curriculu
Explains the difference between abstract and strict equality operators to avoid type coercion bugs.
Checkstyle is a Java static analysis tool and linter designed to identify and enforce coding standards and best practices. It functions as a code quality auditor and Javadoc validation tool, checking source code against configurable rulesets to ensure structural and stylistic consistency. The project allows for the creation of custom linting rules by extending a core API to inspect the abstract syntax tree. It further enables specialized validation through the use of XPath expressions to query the syntax tree for specific code patterns and violations. Capability areas include the enforcement
Ensures that classes overriding equals also override hashCode to maintain collection compatibility.
Epoxy is an Android library for building complex RecyclerView screens using a model-driven approach. It generates RecyclerView adapter models at compile time from annotated custom views, data binding layouts, or view holders, eliminating the manual boilerplate typically associated with view holders and adapters. The library provides a diffing engine that automatically compares model lists and applies minimal updates with animations for insertions, removals, and moves. The library distinguishes itself through its controller-based model building, where a controller class with a buildModels meth
Checks at compile time that every annotated attribute field implements equals and hashCode for correct diffing.
Hardhat is a smart contract development framework and EVM tooling suite designed for the full lifecycle of Ethereum and EVM-compatible applications. It serves as a development environment for compiling, testing, and deploying smart contracts, providing a local blockchain simulation and a programmable task runner. The framework is distinguished by its extensive simulation capabilities, including the ability to fork remote network state and manipulate block time or account balances. It features a hook-based plugin system that allows for the extension of core functionality and the creation of cu
Provides utilities to verify mathematical equality between numbers and big integers of different types during testing.
This library is a data assertion tool and equality logic framework for PHP. It provides utilities to verify that two values, nested objects, or complex data types match based on their internal contents. The project distinguishes itself through the use of custom matching rules and configurable precision. It allows for the comparison of floating point numbers and dates using a defined margin of error to account for numeric precision loss. The framework covers deep value equality verification across scalars, arrays, and nested objects. It implements strict type enforcement to prevent implicit c
Prevents implicit type conversion during comparison to ensure that only identical data types are considered equal.
Rockstar is an esoteric programming language whose syntax is inspired by 1980s hard rock and heavy metal lyrics, making programs read like song lyrics. It uses poetic number literals, where the length of each word in a phrase is parsed as a decimal digit to initialize numeric variables, and pronoun-based variable references, where words like "it" and "they" resolve to the most recently assigned or compared variable at runtime. The language can be compiled to WebAssembly and run inside a web page for in-browser code execution. The language distinguishes itself through a lyric-driven parsing sy
Checks strict equality using the lyrical 'is really' operator, verifying both value and type identity.
collect.js is a dependency-free JavaScript library that provides a fluent, chainable interface for manipulating arrays and objects. It mirrors the Laravel Collection API, offering a consistent set of methods for data transformation across JavaScript and Laravel backend environments. The library stores collection data as plain arrays internally and supports fluent method chaining, where each method returns a new collection instance. The library distinguishes itself by closely replicating the Laravel Collection API in JavaScript, mapping each PHP method to an equivalent JavaScript implementatio
Uses strict equality by default for collection comparisons, eliminating the need for separate strict methods.
Generate Java types from JSON or JSON Schema and annotate those types for data-binding with Jackson, Gson, etc
Omits specified fields from generated equals and hashCode methods using a property-level flag or object-level list.
Scala 3 is an open-source, statically typed programming language that compiles to JVM bytecode, combining object-oriented and functional programming paradigms. Its core identity is defined by a sophisticated type system that includes traits, generics, union types, and a dependent object type system where types can depend on runtime values through path-dependent and singleton types. The language distinguishes itself through several advanced type-level and metaprogramming capabilities. It features a contextual abstraction mechanism using given instances and using clauses for compile-time implic
Enforces type-safe equality comparisons through a canEqual method preventing unintended type comparisons at compile time.
is-thirteen es una biblioteca de validación de números y comprobador de igualdad numérica diseñada para verificar si una entrada dada es igual al valor trece. Funciona como una herramienta de clasificación de datos que identifica este valor específico a través de flujos de entrada numéricos, textuales y visuales. El proyecto incluye un clasificador de números basado en imágenes que utiliza aprendizaje profundo y análisis de redes neuronales para identificar representaciones visuales del número trece dentro de imágenes cargadas. La biblioteca cubre una variedad de métodos de validación, incluyendo igualdad aritmética exacta, coincidencia de valores aproximados dentro de rangos de tolerancia definidos, análisis de notación científica y coincidencia de patrones lingüísticos para formas escritas del número.
Implements functions that verify if an input is exactly equal to thirteen.
Flags use of strict equalities that can be easily manipulated by an attacker.
Tape is a TAP-producing test framework for Node.js that provides assertions, spies, subtests, and isolated test harnesses. It functions as both a test runner and an assertion library, outputting results in the Test Anything Protocol format for machine or human consumption. The framework manages test execution through callback-based async control, plan-based auto termination, and subtest stack isolation. It includes a spy wrapper system that replaces object methods with call-recording wrappers that restore originals during teardown, along with a teardown callback registry that collects and exe
Verifies strict equality between values using Object.is comparison.
Verifies that two values are strictly equal and reports the result as a TAP assertion.
Este proyecto es una base de conocimientos integral de programación Java y un repositorio de referencia técnica. Proporciona una colección curada de respuestas destiladas, documentación de API y guías de solución de problemas diseñadas para ayudar a los desarrolladores a resolver desafíos de codificación comunes y trampas del lenguaje. El repositorio se distingue por un enfoque arquitectónico estructurado del conocimiento, utilizando un análisis centrado en la comparación para resaltar las compensaciones (trade-offs) entre diferentes implementaciones de bibliotecas y características del lenguaje. Agrega discusiones de la comunidad de alto impacto en un formato estandarizado, organizando soluciones técnicas por patrones arquitectónicos, de concurrencia y de seguridad. El contenido cubre una amplia gama de dominios técnicos, incluyendo especificaciones del lenguaje central, gestión de concurrencia, gestión de memoria y patrones de diseño de software. También incluye orientación sobre solución de problemas en tiempo de ejecución, implementación de estructuras de datos, reflexión y metadatos, y patrones de integración de API. La documentación sirve como referencia técnica para implementar patrones de arquitectura de software estándar y resolver problemas de configuración del entorno.
Explains how to maintain consistency between equality and hashing contracts to prevent errors in hash-based collections.
flutterrustbridge is a code generation tool that automatically creates type‑safe Dart bindings for Rust functions, enabling direct cross‑language calls between Flutter and a Rust backend. It provides an async FFI adapter that transforms synchronous Rust functions into Dart async methods with background thread management, a cross‑language object manager that wraps persistent Rust structs as Dart objects preserving state across calls, and trait object interop that converts Rust traits into Dart abstract classes for seamless bidirectional use. The project handles the full lifecycle of integrat
Derives equality and hash code methods on Dart wrappers from Rust struct implementations for consistent value semantics.
Returns es una biblioteca de programación funcional para Python que proporciona contenedores con tipos seguros para gestionar el estado, el manejo de errores y la opcionalidad. Sirve como una biblioteca de contenedores monádicos y un framework de manejo de errores con tipos seguros, reemplazando los bloques try-catch tradicionales y las comprobaciones de nulos con contenedores Result y Optional para tratar las excepciones como datos. El proyecto se distingue por su uso de un plugin de análisis estático Mypy especializado para validar pipelines funcionales y emular tipos de orden superior. Proporciona mecanismos para aislar efectos secundarios a través de contenedores IO y ofrece un framework para la inyección de dependencias con tipos seguros que difiere la provisión de dependencias hasta la ejecución final de un cálculo. La biblioteca cubre una amplia gama de primitivas funcionales, incluyendo currificación, aplicación parcial y la composición de pipelines de datos declarativos. Admite la gestión de flujos de trabajo asíncronos envolviendo corrutinas en contenedores para encadenar operaciones no bloqueantes e incluye utilidades para la gestión del ciclo de vida de recursos y verificación de leyes algebraicas para contenedores personalizados.
Provides compile-time enforcement of type-safe equality comparisons to prevent unintended comparisons between unrelated types.
Apache AGE is a graph database extension for PostgreSQL that adds openCypher graph query capabilities directly within the relational database environment. It functions as a loadable extension that translates Cypher graph traversal queries into SQL expressions, enabling users to run pattern matching and path analysis alongside standard SQL operations within a single database instance. The extension stores labeled, directed property graphs as isolated schemas with internal relational tables for vertices, edges, and labels, preventing cross-graph interference. It supports hybrid query execution
Distinguishes between strict equality and equivalence semantics in Cypher queries, a key language feature.