gtl | Greg 's Template Library of useful classes

 by   greg7mdp C++ Version: v1.1.8 License: Apache-2.0

kandi X-RAY | gtl Summary

kandi X-RAY | gtl Summary

gtl is a C++ library. gtl has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. You can download it from GitHub.

This repository aims to provide many classes that are commonly needed in substantial C++ projects, but that are either not available in the C++ standard library, or have a specification which makes them slower than they could be. In some cases, the C++ standard requirements prevents from providing faster alternatives (for example the pointer stability requirement for unordered maps or sets prevents providing implementations using open addressing). Among the many classes offered by gtl, we have a set of excellent hash map implementations, as well as a btree alternative to std::map and std::set. These are drop-in replacements for the standard C++ classes and provide the same API, but are significantly faster and use less memory. We also have a fast bit_vector implementation, which is an alternative to std::vector or std::bitset, providing both dynamic resizing and a good assortment of bit manipulation primitives, as well as a novel bit_view class allowing to operate on subsets of the bit_vector. We have lru_cache and memoize classes, both with very fast multi-thread versions relying of the mutex sharding of the parallel hashmap classes. We also offer an intrusive_ptr class, which uses less memory than std::shared_ptr, and is simpler to construct. We are happy to integrate new classes into gtl, provided the license is compatible with ours, and we feel they will be useful to most users. Often, when integrating classes from other sources, we are able to improve their performance both in time and space by using other classes already available in gtl (such as hash maps, btree, bit_vector, etc...) instead of the spandard ones. gtl requires a C++20 compiler. We currently support: Visual Studio 2019 +, gcc 8 +, and clang 10 + (or Xcode 12 + on MacOS). Because gtl is a header only library, installation is trivial, just copy the include/gtl directory to your project somewhere in your include path and you are good to go. We also support common package managers such as Conan (package name greg7mdp-gtl) and vcpkg.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              gtl has a low active ecosystem.
              It has 60 star(s) with 3 fork(s). There are 7 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 1 open issues and 8 have been closed. On average issues are closed in 17 days. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of gtl is v1.1.8

            kandi-Quality Quality

              gtl has no bugs reported.

            kandi-Security Security

              gtl has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.

            kandi-License License

              gtl is licensed under the Apache-2.0 License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              gtl releases are available to install and integrate.
              Installation instructions, examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of gtl
            Get all kandi verified functions for this library.

            gtl Key Features

            No Key Features are available at this moment for gtl.

            gtl Examples and Code Snippets

            No Code Snippets are available at this moment for gtl.

            Community Discussions

            No Community Discussions are available at this moment for gtl.Refer to stack overflow page for discussions.

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install gtl

            Copy the gtl directory to your project. Update your include path. That's all.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/greg7mdp/gtl.git

          • CLI

            gh repo clone greg7mdp/gtl

          • sshUrl

            git@github.com:greg7mdp/gtl.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link