# ReflectionExtensionMethods class

Namespace: [Grasshopper2.Extensions](https://developer.rhino3d.com/api/gh2/namespace/grasshopper2.extensions.md) · Assembly: [Grasshopper2](https://developer.rhino3d.com/api/gh2/assembly/grasshopper2.md)

```cs
public static class ReflectionExtensionMethods
```

Provides a set of extension methods for System.Reflection.Assembly.

## Methods

- [AllPublicClassImplementations](https://developer.rhino3d.com/api/gh2/type/grasshopper2.extensions.reflectionextensionmethods/allpublicclassimplementations.md): (static) Enumerate over all public types which derive from a specific class or interface. Abstract classes are skipped, but generic classes are included.
- [FindInstanceMethod](https://developer.rhino3d.com/api/gh2/type/grasshopper2.extensions.reflectionextensionmethods/findinstancemethod.md): (static) Find the instance method on a type.
- [FindStaticMethod](https://developer.rhino3d.com/api/gh2/type/grasshopper2.extensions.reflectionextensionmethods/findstaticmethod.md): (static) Find the static method on a type.
- [GetTypeConstraint](https://developer.rhino3d.com/api/gh2/type/grasshopper2.extensions.reflectionextensionmethods/gettypeconstraint.md): (static) Gets the type constraint of this parameter. It will either be [object](https://learn.microsoft.com/dotnet/api/system.object) If the parameter derives from [Parameter](https://developer.rhino3d.com/api/gh2/type/grasshopper2.parameters.parameter.md) or implements [IParameter](https://developer.rhino3d.com/api/gh2/type/grasshopper2.parameters.iparameter.md) directly, or the T constraint for a type which derives from [Parameter<T>](https://developer.rhino3d.com/api/gh2/type/grasshopper2.parameters.parameter-1.md).
- [HasEmptyConstructor](https://developer.rhino3d.com/api/gh2/type/grasshopper2.extensions.reflectionextensionmethods/hasemptyconstructor.md): (static) Test whether a type has an empty, public constructor.
- [IsConstructible](https://developer.rhino3d.com/api/gh2/type/grasshopper2.extensions.reflectionextensionmethods/isconstructible.md): (static) Gets whether a type is a final type. Interfaces, abstract classes and classes with generic constraints are not final.
- [IsKindOf](https://developer.rhino3d.com/api/gh2/type/grasshopper2.extensions.reflectionextensionmethods/iskindof.md): (static) Gets whether one type if a kind of another type. I.e. whether 'type' can be assigned to 'other'.
- [IsReimplemented](https://developer.rhino3d.com/api/gh2/type/grasshopper2.extensions.reflectionextensionmethods/isreimplemented.md): (2 overloads, static) Test whether a virtual method has been re-implemented in a more derived type.
- [UiInfo](https://developer.rhino3d.com/api/gh2/type/grasshopper2.extensions.reflectionextensionmethods/uiinfo.md): (static) Gets the sentence used in the user interface decribing the character of the given conversion merit.
- [UiName](https://developer.rhino3d.com/api/gh2/type/grasshopper2.extensions.reflectionextensionmethods/uiname.md): (static) Gets the name used in the user interface for the given conversion merit.
