{"id":20915578,"url":"https://github.com/daleksla/stl","last_synced_at":"2025-07-11T07:04:24.632Z","repository":{"id":49108168,"uuid":"343276835","full_name":"daleksla/STL","owner":"daleksla","description":"Common algorithms \u0026 structural implementations of the C++'s standard library, rewritten to be small, portable, and fast (UNDER SERIOUS REVISION)","archived":false,"fork":false,"pushed_at":"2023-05-09T13:56:29.000Z","size":43047,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-12T23:15:22.076Z","etag":null,"topics":["common-algorithms","compilation","cpp","cpp11","cpp14","data-structures","header-only","template-metaprogramming"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/daleksla.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-03-01T03:18:33.000Z","updated_at":"2023-07-28T15:31:16.000Z","dependencies_parsed_at":"2024-11-19T05:02:20.048Z","dependency_job_id":null,"html_url":"https://github.com/daleksla/STL","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/daleksla/STL","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daleksla%2FSTL","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daleksla%2FSTL/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daleksla%2FSTL/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daleksla%2FSTL/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/daleksla","download_url":"https://codeload.github.com/daleksla/STL/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daleksla%2FSTL/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264752598,"owners_count":23658666,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["common-algorithms","compilation","cpp","cpp11","cpp14","data-structures","header-only","template-metaprogramming"],"created_at":"2024-11-18T16:16:07.968Z","updated_at":"2025-07-11T07:04:24.599Z","avatar_url":"https://github.com/daleksla.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# STL\nCommon algorithms \u0026 structural implementations of the C++'s standard library, rewritten to be small, portable, and fast\n\n## Summarising\n\nThis library is a reimplementation of C++'s more common algorithms \u0026 structural implementations (e.g. std::vector -\u003e stl::vector, etc.), with a key focus on:\n1. Rewriting code to take up little space in memory\n2. Writing *all* code to be compiled \u0026 ran for a C++11 compiler (even if the features were inspired from a later standard)\n3. Speed\n\nNotes:\n- This project is **not** concerned with replacing the general-use, feature-rich tried-and-tested C++ STL. If you want something fast \u0026 small, have very specific compiler requirements, and don't require lucrative features of C++ (e.g. filesystem libraries) then this is for you\n- The threading / concurrency library is **not** included due to the scoping issues it would present to this project (e,g. aspects such as atomics are hardware dependant)\n- This is **not** focussed on reimplementing the C standard libraries which C++ happens to wrap (e.g. malloc -\u003e ~~stl::malloc~~)\n- This library also will **not** deal with exception handling\n  - Note: I use exception handling in my other works and I prefer much more to error-codes (in fact [this wrapper around POSIX standard functions](https://github.com/daleksla/posicxx) creates wrappers around all the system calls which utilise C++ exceptions. But that library was written for convinient error-checking with minimal overhead, a different purpose to this library's).\n\n## Building\n\nSince virtually the entire library uses (static) polymorphism and template meta-programming, attempting to provide a library file is pointless. It is therefore *header-only* and the library *does not* require explicit compilation\n\n[![Clang](https://github.com/daleksla/STL/actions/workflows/clang.yml/badge.svg)](https://github.com/daleksla/STL/actions/workflows/clang.yml) [![GCC](https://github.com/daleksla/STL/actions/workflows/gcc.yml/badge.svg)](https://github.com/daleksla/STL/actions/workflows/gcc.yml) [![Testing](https://github.com/daleksla/STL/actions/workflows/testing.yml/badge.svg)](https://github.com/daleksla/STL/actions/workflows/testing.yml)\n\n## Using\n\nYou will need to include the relevant headers as you would for C++'s STL alternatives\n\nFor example:\n\n`#include \u003cvector\u003e`\n\n...is now...\n\n`#include \u003cvector.hpp\u003e`\n\nRefer to documentation for usage of each function / class.\n\n*** \n\n(c) Salih Mahmoud Sayed Ahmed, 2021. All rights reserved. See LICENSE for terms on code usage\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaleksla%2Fstl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdaleksla%2Fstl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaleksla%2Fstl/lists"}