Dekiru.TypeDiscovery
1.0.1
Prefix Reserved
dotnet add package Dekiru.TypeDiscovery --version 1.0.1
NuGet\Install-Package Dekiru.TypeDiscovery -Version 1.0.1
<PackageReference Include="Dekiru.TypeDiscovery" Version="1.0.1" />
paket add Dekiru.TypeDiscovery --version 1.0.1
#r "nuget: Dekiru.TypeDiscovery, 1.0.1"
// Install Dekiru.TypeDiscovery as a Cake Addin #addin nuget:?package=Dekiru.TypeDiscovery&version=1.0.1 // Install Dekiru.TypeDiscovery as a Cake Tool #tool nuget:?package=Dekiru.TypeDiscovery&version=1.0.1
Introduction
Very small library to help with in-process scanning for types in all (Non-Microsoft) assemblies in the current AppDomain
This library is primarily built to be used by our other libraries, where we do automatic DI registration of some types.
The static Discovery
class exposes a few methods to help with this:
GetTypes()
- Returns all typesGetTypes<T>()
- Returns all types that implement or inherit from the given typeGetTypes(Func<Type, bool> predicate)
- Returns all types that match the predicate
The first time you call any of these methods, the library will scan all assemblies in the current AppDomain and cache the results. Subsequent calls will return the cached results.
The library also exposes the following additional methods:
AddType(Type type)
- Adds a type to the cacheRescan()
- Clears the cache and rescans all assemblies in the current AppDomain
All methods are thread-safe.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- No dependencies.
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Dekiru.TypeDiscovery:
Package | Downloads |
---|---|
Dekiru.Conduit
A minimalist library for building pipelines |
|
Dekiru.FluentValidation
A support library that helps combine multiple validators for a given type |
GitHub repositories
This package is not used by any popular GitHub repositories.