awesome-repositories.com
Blog
MCP
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
microsoft avatar

microsoft/GSL

0
View on GitHub↗
6,693 stars·766 forks·C++·5 vues

GSL

GSL is a Guidelines Support Library for C++ that provides a set of types and functions designed to implement the C++ Core Guidelines. It functions as a framework for improving code safety and portability across different platforms.

The library provides a contract-based programming model to verify program invariants through precondition and postcondition assertions. It includes specialized wrappers for null-pointer safety and bounds-checked memory views to prevent buffer overflows and invalid memory access.

The project also covers safe integer conversion to prevent data truncation and provides utilities for managing zero-terminated strings with various character encodings. Additionally, it includes mechanisms for resource management to ensure cleanup functions execute during object destruction.

Features

  • C++ Guidelines Support Libraries - Provides a set of types and functions for implementing the C++ Core Guidelines to improve code safety and portability.
  • Contract-Based Libraries - Provides a framework for verifying program invariants using precondition and postcondition assertions.
  • Null-Safety Pointer Types - Provides a specialized pointer type that ensures memory addresses are valid and non-null.
  • Memory Safety Protections - Prevents buffer overflows and invalid memory access using bounds-checked views and pointer constraints.
  • Non-Null Pointer Wrappers - Provides specialized pointer types that ensure a pointer always holds a valid value and never refers to null.
  • Portable C++ Subsets - Provides standardized types and functions to maintain consistent behavior and safety across different platforms.
  • Runtime Bounds Checking - Implements a specialized memory access wrapper that prevents buffer overflow errors through strict runtime bounds checking.
  • Memory Spans - Provides bounds-checked memory views to prevent buffer overflows and invalid memory access.
  • Coding Style Guidelines - Implements a set of uniform types and functions to apply C++ Core Guidelines for improved safety and portability.
  • Runtime Invariant Verifications - Implements a contract-based programming model using precondition and postcondition assertions to verify program invariants.
  • Logic Verification Frameworks - Uses preconditions and postconditions to verify program invariants and stop execution upon logic failure.
  • C++ Resource Management - Ensures proper cleanup of system resources and executes final actions during object destruction.
  • Resource Cleanup Utilities - Provides mechanisms to execute specific cleanup functions during object destruction to ensure system resources are released properly.
  • Checked Narrowing Conversions - Implements safe integer narrowing that triggers exceptions if the original value is truncated during conversion.
  • Type Safety - Handles narrow value conversions and character encodings to prevent data truncation and encoding errors.
  • Safe Integer Narrowing Utilities - Provides a utility for converting values to smaller types with exception triggers upon truncation.
  • Extensions de la bibliothèque standard - Guidelines Support Library implementation.

Historique des stars

Graphique de l'historique des stars pour microsoft/gslGraphique de l'historique des stars pour microsoft/gsl

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Questions fréquentes

Que fait microsoft/gsl ?

GSL is a Guidelines Support Library for C++ that provides a set of types and functions designed to implement the C++ Core Guidelines. It functions as a framework for improving code safety and portability across different platforms.

Quelles sont les fonctionnalités principales de microsoft/gsl ?

Les fonctionnalités principales de microsoft/gsl sont : C++ Guidelines Support Libraries, Contract-Based Libraries, Null-Safety Pointer Types, Memory Safety Protections, Non-Null Pointer Wrappers, Portable C++ Subsets, Runtime Bounds Checking, Memory Spans.

Quelles sont les alternatives open-source à microsoft/gsl ?

Les alternatives open-source à microsoft/gsl incluent : mgechev/angular2-style-guide — The repository contains a curated collection of coding conventions, architectural patterns, and best practices… federico-busato/modern-cpp-programming — This project is a comprehensive educational resource and programming course covering C++ language semantics and… microsoft/wil — wil is a C++ wrapper library for the Windows API designed to simplify system development through RAII and exception… cpp-best-practices/cppbestpractices — This project is a curated collection of guidelines and technical resources designed to improve C++ code safety,… communitytoolkit/dotnet — This project is a general purpose library for the .NET ecosystem, providing a collection of reusable helper methods… armour/vue-typescript-admin-template — Vue-typescript-admin-template is a TypeScript-based admin panel starter built with Vue CLI 3, providing a complete…

Alternatives open source à GSL

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec GSL.
  • mgechev/angular2-style-guideAvatar de mgechev

    mgechev/angular2-style-guide

    1,195Voir sur GitHub↗

    The repository contains a curated collection of coding conventions, architectural patterns, and best practices designed for developing component-based web applications using Angular and TypeScript. It functions as an architecture manual establishing consistent patterns across development teams, covering application structure, component design, and code quality enforcement. The guidelines define domain-driven file organization and module encapsulation strategies that group project assets into bounded contexts with dedicated root facades to keep large codebases manageable and shorten import pat

    angularbest-practicesdeprecated
    Voir sur GitHub↗1,195
  • federico-busato/modern-cpp-programmingAvatar de federico-busato

    federico-busato/Modern-CPP-Programming

    15,808Voir sur GitHub↗

    This project is a comprehensive educational resource and programming course covering C++ language semantics and features from C++03 through C++26. It provides structured tutorials and technical guides focused on modern C++ development. The material offers specialized instruction on template metaprogramming, including the use of type traits and compile-time computations. It features detailed guides on concurrency and parallelism for multi-core execution, as well as a reference for software design applying SOLID principles and RAII. Additionally, it covers build performance optimization to redu

    HTMLc-plus-pluscode-qualitycompilers
    Voir sur GitHub↗15,808
  • microsoft/wilAvatar de microsoft

    microsoft/wil

    2,884Voir sur GitHub↗

    wil is a C++ wrapper library for the Windows API designed to simplify system development through RAII and exception handling. It provides a set of resource management tools, a framework for Windows error handling, and type-safe interfaces for registry access and networking. The library distinguishes itself by automating the conversion between system error codes and C++ exceptions, while providing utilities for contextual error message attachment and early return patterns. It also features specialized networking wrappers for socket initialization and hostname resolution, and a registry interfa

    C++
    Voir sur GitHub↗2,884
  • communitytoolkit/dotnetAvatar de CommunityToolkit

    CommunityToolkit/dotnet

    3,696Voir sur GitHub↗

    This project is a general purpose library for the .NET ecosystem, providing a collection of reusable helper methods and APIs for common programming tasks. It encompasses a UI component library for cross-platform development, a toolkit for MVVM architecture, and specialized utilities for memory management and native interoperability. The library distinguishes itself through high-performance memory abstractions, such as pooled buffers and contiguous two-dimensional memory spans, designed to reduce garbage collection pressure. It also provides native interop wrappers and bindings to facilitate d

    C#csharpdotnetmaui
    Voir sur GitHub↗3,696
Voir les 30 alternatives à GSL→