{"id":13730558,"url":"https://github.com/sgorsten/any_function","last_synced_at":"2025-05-08T03:30:50.305Z","repository":{"id":74314860,"uuid":"58329826","full_name":"sgorsten/any_function","owner":"sgorsten","description":"any_function is a functional counterpart to std::any","archived":true,"fork":false,"pushed_at":"2016-05-09T05:34:57.000Z","size":123,"stargazers_count":14,"open_issues_count":0,"forks_count":1,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-11-14T21:38:07.060Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sgorsten.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2016-05-08T20:23:48.000Z","updated_at":"2023-01-28T05:42:06.000Z","dependencies_parsed_at":null,"dependency_job_id":"36c00460-c613-4a1b-b3c5-35dfb0fc4e84","html_url":"https://github.com/sgorsten/any_function","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sgorsten%2Fany_function","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sgorsten%2Fany_function/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sgorsten%2Fany_function/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sgorsten%2Fany_function/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sgorsten","download_url":"https://codeload.github.com/sgorsten/any_function/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252992892,"owners_count":21837188,"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:16.570Z","updated_at":"2025-05-08T03:30:50.295Z","avatar_url":"https://github.com/sgorsten.png","language":"C++","readme":"# any_function.h\n\n[![Release is 0.8](http://img.shields.io/badge/release-0.8-blue.svg?style=flat)](/any_function.h)\n[![License is Unlicense](http://img.shields.io/badge/license-Unlicense-blue.svg?style=flat)](http://unlicense.org/)\n\nPlatform | Build Status |\n-------- | ------------ |\nVisual Studio 2013 | [AppVeyor](http://ci.appveyor.com/): [![Build status](https://ci.appveyor.com/api/projects/status/t9hynmje3af3t0eg?svg=true)](https://ci.appveyor.com/project/sgorsten/any-function) |\nGCC 4.9 | [Travis CI](http://travis-ci.org): [![Build status](http://travis-ci.org/sgorsten/any_function.svg?branch=master)](https://travis-ci.org/sgorsten/any_function) |\n\n[any_function.h](/any_function.h) is a [single header](http://github.com/nothings/stb/blob/master/docs/other_libs.md) [public domain](http://unlicense.org/) utility library for [C++11](http://en.cppreference.com/w/). \n\nIt is intended to serve as a functional counterpart to the [`std::any`](http://en.cppreference.com/w/cpp/utility/any), by providing a single, concrete class `any_function` which can receive almost any callable object, from function pointers to lambdas to instantiations of [`std::function`](http://en.cppreference.com/w/cpp/utility/functional/function).\n\nThis library is still under development and its API and implementation details are subject to change.\n\n# TODO\n\n- [X] Retain reference/const/volatile qualification in parameter and return type metadata\n- [X] L-value reference parameters (should work, but needs testing)\n- [X] R-value reference parameters\n- [X] L-value reference return types\n- [X] R-value reference return types\n- [X] Const/volatile qualified parameters\n- [X] Const/volatile qualified return type\n- [X] Mutable lambdas / stateful function objects\n\n","funding_links":[],"categories":["C++"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsgorsten%2Fany_function","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsgorsten%2Fany_function","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsgorsten%2Fany_function/lists"}