{"id":24494656,"url":"https://github.com/pkg-dot-zip/radovancommonextensions","last_synced_at":"2026-02-09T18:32:11.445Z","repository":{"id":273344378,"uuid":"918642505","full_name":"pkg-dot-zip/RadovanCommonExtensions","owner":"pkg-dot-zip","description":"Set of extension methods widely used accross the C# eco-system. From collections to reflection!","archived":false,"fork":false,"pushed_at":"2025-01-20T11:16:49.000Z","size":16,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-09T01:46:55.453Z","etag":null,"topics":["collections","csharp","csharp-library","extension-methods","extensions","net-standard","net-standard-2","nuget-package","reflection"],"latest_commit_sha":null,"homepage":"https://www.nuget.org/packages/RadovanCommonExtensions","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pkg-dot-zip.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":"2025-01-18T13:32:36.000Z","updated_at":"2025-03-06T15:53:03.000Z","dependencies_parsed_at":"2025-01-20T11:09:02.654Z","dependency_job_id":"551fef14-cc1b-46ac-8191-d1f8ad9ea575","html_url":"https://github.com/pkg-dot-zip/RadovanCommonExtensions","commit_stats":null,"previous_names":["pkg-dot-zip/radovancommonextensions"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pkg-dot-zip%2FRadovanCommonExtensions","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pkg-dot-zip%2FRadovanCommonExtensions/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pkg-dot-zip%2FRadovanCommonExtensions/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pkg-dot-zip%2FRadovanCommonExtensions/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pkg-dot-zip","download_url":"https://codeload.github.com/pkg-dot-zip/RadovanCommonExtensions/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253176443,"owners_count":21866142,"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":["collections","csharp","csharp-library","extension-methods","extensions","net-standard","net-standard-2","nuget-package","reflection"],"created_at":"2025-01-21T20:16:37.378Z","updated_at":"2026-02-09T18:32:11.381Z","avatar_url":"https://github.com/pkg-dot-zip.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RadovanCommonExtensions\nSimple class library created to avoid duplicate code in projects. \nI noticed that I kept writing the same extension methods in each project. This library was created to avoid that.\n\n## Features\n- Added methods for [`ICollection`](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.icollection-1), such as `IsEmpty()` \u0026 `AddAll(params)` !\n- Utility methods for [reflection](https://learn.microsoft.com/en-us/dotnet/fundamentals/reflection/reflection-and-generic-types) operations. See Examples for details.\n\nAnd WAY more to come!\n\n## Examples\nSome basic [`ICollection`](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.icollection-1) methods.\n```cs\npublic void Example(IList\u003cint\u003e list)\n{\n    if (list.IsEmpty()) return; // New IsEmpty() method!\n\n    // Logic here!\n}\n\npublic void Example(ICollection\u003cbool\u003e collection, ICollection\u003cbool\u003e secondCollection)\n{\n    collection.AddAll(true, false, true); // Adding using params!\n    collection.AddAll(secondCollection); // Adding other IEnumerables!\n}\n```\n\nInvoking methods with [generics](https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/types/generics) dynamically so you can pass [Type](https://learn.microsoft.com/en-us/dotnet/api/system.type) as a parameter!\n```cs\npublic class ExampleClass\n{\n    public bool DoSomethingWithGeneric\u003cT\u003e() =\u003e false;\n}\n\npublic void Example(ExampleClass inst, Type genericType)\n{\n    inst.InvokeObjWithGenerics(nameof(ExampleClass.DoSomethingWithGeneric), [genericType]);\n}\n```\n\n## What to expect in the feature\n*Technically* any extension method can be added, as long as it:\n- Needed in two or more projects I am working on.\n- Unit tested in the unit test project of this solution.\n\nIf you are using this package, feel free to add suggestions if you need something.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpkg-dot-zip%2Fradovancommonextensions","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpkg-dot-zip%2Fradovancommonextensions","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpkg-dot-zip%2Fradovancommonextensions/lists"}