Example #1
0
        internal static IEnumerable <CSharpLanguage> GetDebugLanguages(LanguageDecompilerSettings langSettings)
        {
            DecompilerContext context           = new DecompilerContext(new ModuleDefUser("dummy"));
            string            lastTransformName = "no transforms";
            double            orderUI           = LanguageConstants.CSHARP_ILSPY_DEBUG_ORDERUI;
            uint id = 0xBF67AF3F;

            foreach (Type _transformType in TransformationPipeline.CreatePipeline(context).Select(v => v.GetType()).Distinct())
            {
                Type transformType = _transformType;                 // copy for lambda
                yield return(new CSharpLanguage(langSettings, orderUI++)
                {
                    transformAbortCondition = v => transformType.IsInstanceOfType(v),
                    uniqueNameUI = "C# - " + lastTransformName,
                    uniqueGuid = new Guid(string.Format("203F702E-7E87-4F01-84CD-B0E8{0:X8}", id++)),
                    showAllMembers = true
                });

                lastTransformName = "after " + transformType.Name;
            }
            yield return(new CSharpLanguage(langSettings, orderUI++)
            {
                uniqueNameUI = "C# - " + lastTransformName,
                uniqueGuid = new Guid(string.Format("203F702E-7E87-4F01-84CD-B0E8{0:X8}", id++)),
                showAllMembers = true
            });
        }
Example #2
0
 public VBLanguage(LanguageDecompilerSettings langSettings)
 {
     this.langSettings = langSettings;
 }
Example #3
0
 public CSharpLanguage(LanguageDecompilerSettings langSettings, double orderUI)
 {
     this.langSettings = langSettings;
     this.orderUI      = orderUI;
 }