ICSharpCode.ILSpy.CSharpLanguage.GetDebugLanguages C# (CSharp) Method

GetDebugLanguages() static private method

static private GetDebugLanguages ( ) : IEnumerable
return IEnumerable
		internal static IEnumerable<CSharpLanguage> GetDebugLanguages()
		{
			DecompilerContext context = new DecompilerContext(ModuleDefinition.CreateModule("dummy", ModuleKind.Dll));
			string lastTransformName = "no transforms";
			foreach (Type _transformType in TransformationPipeline.CreatePipeline(context).Select(v => v.GetType()).Distinct()) {
				Type transformType = _transformType; // copy for lambda
				yield return new CSharpLanguage {
					transformAbortCondition = v => transformType.IsInstanceOfType(v),
					name = "C# - " + lastTransformName,
					showAllMembers = true
				};
				lastTransformName = "after " + transformType.Name;
			}
			yield return new CSharpLanguage {
				name = "C# - " + lastTransformName,
				showAllMembers = true
			};
		}
		#endif

Usage Example

Beispiel #1
0
        internal static void Initialize(CompositionContainer composition)
        {
            List <Language> languages = new List <Language>();

            languages.AddRange(composition.GetExportedValues <Language>());
                        #if DEBUG
            languages.AddRange(ILAstLanguage.GetDebugLanguages());
            languages.AddRange(CSharpLanguage.GetDebugLanguages());
                        #endif
            allLanguages = languages.AsReadOnly();
        }
All Usage Examples Of ICSharpCode.ILSpy.CSharpLanguage::GetDebugLanguages