Table of Contents

Namespace Utils.Reflection

Classes

DelegateInvoker<TBaseArg, TResult>

A utility class that allows dynamic invocation of delegate methods based on the runtime type of an argument.

ExtendedInvoker<TResult>

An invoker that can store multiple delegates sharing the same return type but with different parameter lists. On invocation, the best matching delegate is selected using the compiler's distance-based method search.

ExternalAttribute

Attribute used to mark properties or fields to be mapped to external unmanaged functions.

LibraryMapper

A class to dynamically map unmanaged DLL functions to .NET properties or fields. This class also handles platform differences (Windows vs. Unix-based systems).

MultiDelegateInvoker<TBaseArg, TResult>

Invokes multiple delegates registered for a given argument type.

Platform

Utility class for runtime platform and architecture detection.

PropertyOrFieldInfo

Represents a reflection wrapper around either a PropertyInfo or a FieldInfo, providing unified access to both for getting and setting values, as well as attribute retrieval.

ReflectionEx

Provides extension methods to simplify reflection-based operations.

TypeEx

Provides extension methods for various Type reflection operations.