{"id":13731080,"url":"https://github.com/ErikMcClure/buntils","last_synced_at":"2025-05-08T03:32:56.122Z","repository":{"id":28594309,"uuid":"32112552","full_name":"ErikMcClure/buntils","owner":"ErikMcClure","description":"C/C++ Utility Library","archived":false,"fork":false,"pushed_at":"2024-09-20T23:10:07.000Z","size":3138,"stargazers_count":36,"open_issues_count":0,"forks_count":3,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-11-08T13:03:15.511Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ErikMcClure.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-03-13T01:01:10.000Z","updated_at":"2024-10-22T23:13:51.000Z","dependencies_parsed_at":"2022-07-26T07:17:05.952Z","dependency_job_id":null,"html_url":"https://github.com/ErikMcClure/buntils","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ErikMcClure%2Fbuntils","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ErikMcClure%2Fbuntils/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ErikMcClure%2Fbuntils/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ErikMcClure%2Fbuntils/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ErikMcClure","download_url":"https://codeload.github.com/ErikMcClure/buntils/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224587023,"owners_count":17335952,"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":[],"created_at":"2024-08-03T02:01:23.631Z","updated_at":"2024-11-14T21:32:08.266Z","avatar_url":"https://github.com/ErikMcClure.png","language":"C++","funding_links":[],"categories":["Libraries"],"sub_categories":[],"readme":"# Bunny Utility Library\n \nThis is a collection of miscellaneous utility code used to simplify common tasks in C/C++ programs.\n\n* Type safe variant object for algebriac types.\n* Allocators with a state\n* Logging\n* Reference counting\n* Generalized linked list manipulation\n* Array-based linked list\n* Threaded red-black tree implementation\n* AVL tree implementation\n* DLL-friendly simplified dynamic array implementation\n* Array-based stack implementation\n* Array-based queue implementation\n* cStr, an extension of the standard std::string object that supports UTF8 conversions and other operations.\n* A single-producer, single-consumer lockless queue\n* A multi-producer, multi-consumer microlock queue\n* Templatized implementations of cmpxchg,xchg,xadd, and other lockless primitives.\n* A template-based hash implementation based on khash\n* Command line parsing\n* Block, ring, and greedy allocation schemes\n* Fixed-size bit-based flag manipulation\n* High precision timer\n* Binary heap implementation\n* Priority queue based on binary heap\n* Priority heap based on Priority Queue that tracks entries to allow implementing Dijkstra's Algorithm\n* #defines to help deal with stupid windows.h conflicts and VC++ deprecated functions\n* Sorted array using a bisection algorithm\n* Map based on sorted array\n* Frighteningly efficient delegate implementation\n* Automatic differentiation with dual numbers\n* Fixed-point arithmetic.\n* Template-based SSE2 objects for automatic SSE optimizations.\n* Alias table for random number generation\n* Generic animation system\n* Circular array implementation\n* Disjoint Set Data Structure that implements Kruskal's minimum spanning tree algorithm.\n* Cross-platform extension to std::thread that allows signaling threads.\n* Stream splitting object using standard buffer implementation.\n* Integral rational data structure for precise fractions.\n* String table for localization.\n* High performance profiler with multiple output options.\n* Multi-consumer multi-producer lockless block allocator.\n* Generalized KD-tree implementation for querying how many rectangles are inside a given rectangle.\n* Implementation of Robert Bridson's Fast Poisson Disk Sampling algorithm.\n* An in-place compressed Trie data structure implementation.\n* Arbitrary scheduler class for delaying actions.\n* Thread pool implementation\n* Implementation of a graph representation that implements the push-relabel algorithm, along with reductions from circulation and lower-bound circulation graph problems.\n* Implements efficient breadth-first traversal of a tree or graph\n* Includes an ID hash system that can be rebased at any time, including a reversal extension.\n* Implements mathematically correct integer and float modulo\n* Includes an n-dimensional vector and matrix math library, with optimized 4x4, 3x3 and 2x2 operations.\n* Implementes the xorshift random number generation algorithm as a standards-compliant engine.\n* AA tree implementation\n* Universal object serializer\n* XML parser and serializer\n* JSON parser and serializer\n* UBJSON parser and serializer\n* INI parser and serializer\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FErikMcClure%2Fbuntils","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FErikMcClure%2Fbuntils","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FErikMcClure%2Fbuntils/lists"}