Class ReflectionHelper
Helper methods for reflection.
Namespace: Evergine.Common.Helpers
Assembly: Evergine.Common.dll
Syntax
public static class ReflectionHelper
Methods
FindTypes(Assembly, Func<Type, bool>)
Finds the types that match the corresponding predicate.
Declaration
public static IEnumerable<Type> FindTypes(Assembly assembly, Func<Type, bool> predicate)
Parameters
| Type | Name | Description |
|---|---|---|
| Assembly | assembly | The target search assembly. |
| Func<Type, bool> | predicate | The predicate to filter types. |
Returns
| Type | Description |
|---|---|
| IEnumerable<Type> | A collection of matching types. |
GetBaseType(Type)
Gets the type from which the current System.Type directly inherits.
Declaration
public static Type GetBaseType(this Type type)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | type | The type. |
Returns
| Type | Description |
|---|---|
| Type | The Type from which the current System.Type directly inherits, or null if the current Type represents the System.Object class or an interface. |
GetFullNameWithoutAssemblyInfo(Type)
Gets the full name of the specified type without the assembly's full name.
Declaration
public static string GetFullNameWithoutAssemblyInfo(this Type type)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | type | The type. |
Returns
| Type | Description |
|---|---|
| string | The full name without the assembly's full name. |
GetGenericTypeDefinition(Type)
Returns a Type object that represents a generic type definition from which the current generic type can be constructed.
Declaration
public static Type GetGenericTypeDefinition(this Type type)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | type | The type. |
Returns
| Type | Description |
|---|---|
| Type | A Type object representing a generic type from which the current generic type can be constructed. |
GetInterfaces(Type)
Gets the interfaces.
Declaration
public static Type[] GetInterfaces(Type type)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | type | The type. |
Returns
| Type | Description |
|---|---|
| Type[] | The interfaces. |
GetMemberAssembly(object)
Gets the Assembly in which the member type is declared. For generic types, gets the Assembly in which the generic type is defined.
Declaration
public static Assembly GetMemberAssembly(this object obj)
Parameters
| Type | Name | Description |
|---|---|---|
| object | obj | The member. |
Returns
| Type | Description |
|---|---|
| Assembly | The assembly of the type. |
GetSizeOf<T>()
Gets the size of the specified type.
Declaration
public static int GetSizeOf<T>()
Returns
| Type | Description |
|---|---|
| int | The size of the specified type. |
Type Parameters
| Name | Description |
|---|---|
| T | The type. |
GetTypeAssembly(Type)
Gets the Assembly in which the type is declared. For generic types, gets the Assembly in which the generic type is defined.
Declaration
public static Assembly GetTypeAssembly(this Type type)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | type | The type. |
Returns
| Type | Description |
|---|---|
| Assembly | The type's assembly. |
GetTypeAssemblyName(Type)
Gets the Assembly name in which the type is declared. For generic types, gets the Assembly name in which the generic type is defined.
Declaration
public static string GetTypeAssemblyName(this Type type)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | type | The type. |
Returns
| Type | Description |
|---|---|
| string | A string containing the name of this member's assembly. |
GetTypeName(object)
Gets the name of the current member.
Declaration
public static string GetTypeName(this object obj)
Parameters
| Type | Name | Description |
|---|---|---|
| object | obj | The object. |
Returns
| Type | Description |
|---|---|
| string | A string containing the name of this member. |
IsAssignableFrom(Type, Type)
Determines whether an instance of the second specified type can be assigned to an instance of the first specified type.
Declaration
public static bool IsAssignableFrom(this Type first, Type second)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | first | The first type. |
| Type | second | The type to check. |
Returns
| Type | Description |
|---|---|
| bool |
|
IsAttributeDefined<TAttribute>(Type)
Indicates whether custom attributes of a specified type are applied to a specified type.
Declaration
public static bool IsAttributeDefined<TAttribute>(this Type type) where TAttribute : Attribute
Parameters
| Type | Name | Description |
|---|---|---|
| Type | type | The type. |
Returns
| Type | Description |
|---|---|
| bool |
|
Type Parameters
| Name | Description |
|---|---|
| TAttribute | The type of the attribute. |
IsCastableFrom(Type, Type)
Determines whether an instance of the second specified type can be cast to the first specified type instance.
Declaration
public static bool IsCastableFrom(this Type first, Type second)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | first | The first type. |
| Type | second | The type to check. |
Returns
| Type | Description |
|---|---|
| bool |
|
IsEnum(Type)
Determines whether the specified Type is an enum.
Declaration
public static bool IsEnum(this Type type)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | type | The type. |
Returns
| Type | Description |
|---|---|
| bool |
|
IsGenericType(Type)
Gets a value indicating whether the specified Type is a generic type.
Declaration
public static bool IsGenericType(this Type type)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | type | The type. |
Returns
| Type | Description |
|---|---|
| bool |
|
IsGenericTypeDefinition(Type)
Gets a value indicating whether the specified type is a generic type definition.
Declaration
public static bool IsGenericTypeDefinition(this Type type)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | type | The type. |
Returns
| Type | Description |
|---|---|
| bool |
|
IsInterface(Type)
Determines whether the specified type is an interface.
Declaration
public static bool IsInterface(this Type type)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | type | The type. |
Returns
| Type | Description |
|---|---|
| bool |
|
IsPrimitive(Type)
Determines whether the specified Type is a primitive type.
Declaration
public static bool IsPrimitive(this Type type)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | type | The type. |
Returns
| Type | Description |
|---|---|
| bool |
|
IsValueType(Type)
Gets a value indicating whether the specified type is a value type.
Declaration
public static bool IsValueType(this Type type)
Parameters
| Type | Name | Description |
|---|---|---|
| Type | type | The type. |
Returns
| Type | Description |
|---|---|
| bool |
|