/// <summary> /// Gets all the extension methods which can match a given name and extending a given Type /// </summary> /// <param name="name">The name.</param> /// <param name="extendedType">The extended type.</param> /// <returns></returns> public static List <IOverloadableMemberDescriptor> GetExtensionMethodsByNameAndType(string name, Type extendedType) { return(ExtensionMethodsRegistry.GetExtensionMethodsByNameAndType(name, extendedType)); }
/// <summary> /// Gets a number which gets incremented everytime the extension methods registry changes. /// Use this to invalidate caches based on extension methods /// </summary> /// <returns></returns> public static int GetExtensionMethodsChangeVersion() { return(ExtensionMethodsRegistry.GetExtensionMethodsChangeVersion()); }
/// <summary> /// Registers an extension Type (that is a type containing extension methods) /// </summary> /// <param name="type">The type.</param> /// <param name="mode">The InteropAccessMode.</param> public static void RegisterExtensionType(Type type, InteropAccessMode mode = InteropAccessMode.Default) { ExtensionMethodsRegistry.RegisterExtensionType(type, mode); }