From: Jean-Philippe Bruyère Date: Tue, 13 Jul 2021 09:19:26 +0000 (+0200) Subject: remove try/catch from types searches X-Git-Tag: v0.9.5-beta~8 X-Git-Url: https://git.osiis.dedyn.io/?a=commitdiff_plain;h=5d5294ae25c1f7569bd3a7cd894a4ac2b4b99889;p=jp%2Fcrow.git remove try/catch from types searches --- diff --git a/Crow/src/IML/CompilerServices.cs b/Crow/src/IML/CompilerServices.cs index 75248505..4ad57009 100644 --- a/Crow/src/IML/CompilerServices.cs +++ b/Crow/src/IML/CompilerServices.cs @@ -412,29 +412,24 @@ namespace Crow.IML { foundMI = null; if (assembly == null) - return false; - try - { - - foreach (Type t in assembly.GetExportedTypes().Where - (ty => ty.IsDefined (typeof (ExtensionAttribute), false))) { - foreach (MethodInfo mi in t.GetMethods - (BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic).Where - (m=> m.Name == methodName && m.IsDefined (typeof (ExtensionAttribute), false) && - m.GetParameters ().Length > 0)) { - Type curType = extendedType; - while (curType != null) { - if (mi.GetParameters () [0].ParameterType == curType) { - foundMI = mi; - return true; - } - curType = curType.BaseType; - } - } - - } - } - catch (System.Exception) {} + return false; + foreach (Type t in assembly.GetExportedTypes().Where + (ty => ty.IsDefined (typeof (ExtensionAttribute), false))) { + foreach (MethodInfo mi in t.GetMethods + (BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic).Where + (m=> m.Name == methodName && m.IsDefined (typeof (ExtensionAttribute), false) && + m.GetParameters ().Length > 0)) { + Type curType = extendedType; + while (curType != null) { + if (mi.GetParameters () [0].ParameterType == curType) { + foundMI = mi; + return true; + } + curType = curType.BaseType; + } + } + + } return false; } /// @@ -874,16 +869,14 @@ namespace Crow.IML knownTypes.Add (strDataType, dataType); return dataType; } - foreach (Assembly a in Interface.crowAssemblies) { - try { - foreach (Type expT in a.GetExportedTypes ()) { - if (expT.Name != strDataType && expT.FullName != strDataType) - continue; - if (!knownTypes.ContainsKey(strDataType)) - knownTypes.Add (strDataType, expT); - return expT; - } - }catch{} + foreach (Assembly a in Interface.crowAssemblies) { + foreach (Type expT in a.GetExportedTypes ()) { + if (expT.Name != strDataType && expT.FullName != strDataType) + continue; + if (!knownTypes.ContainsKey(strDataType)) + knownTypes.Add (strDataType, expT); + return expT; + } } knownTypes.Add (strDataType, null); return null;