Esempio n. 1
0
        public static ILSpyUnresolvedFile Create(DecompiledTypeReference name, AstBuilder builder)
        {
            var writer = new StringWriter();
            var target = new TextWriterTokenWriter(writer)
            {
                IndentationString = "\t"
            };
            var output = new DebugInfoTokenWriterDecorator(TokenWriter.WrapInWriterThatSetsLocationsInAST(target));

            builder.RunTransformations();
            var syntaxTree = builder.SyntaxTree;

            syntaxTree.AcceptVisitor(new InsertParenthesesVisitor {
                InsertParenthesesForReadability = true
            });
            syntaxTree.AcceptVisitor(new CSharpOutputVisitor(output, FormattingOptionsFactory.CreateSharpDevelop()));
            ILSpyUnresolvedFile file = new ILSpyUnresolvedFile(name);
            var v = new TypeSystemConvertVisitor(file);

            syntaxTree.AcceptVisitor(v);

            file.MemberLocations = output.MemberLocations;
            file.DebugSymbols    = output.DebugSymbols;
            file.output          = writer.ToString();

            return(file);
        }
		public static ILSpyUnresolvedFile Create(DecompiledTypeReference name, AstBuilder builder)
		{
			var writer = new StringWriter();
			var target = new TextWriterTokenWriter(writer) { IndentationString = "\t" };
			var output = new DebugInfoTokenWriterDecorator(TokenWriter.WrapInWriterThatSetsLocationsInAST(target));
			builder.RunTransformations();
			var syntaxTree = builder.SyntaxTree;
			
			syntaxTree.AcceptVisitor(new InsertParenthesesVisitor { InsertParenthesesForReadability = true });
			syntaxTree.AcceptVisitor(new CSharpOutputVisitor(output, FormattingOptionsFactory.CreateSharpDevelop()));
			ILSpyUnresolvedFile file = new ILSpyUnresolvedFile(name);
			var v = new TypeSystemConvertVisitor(file);
			syntaxTree.AcceptVisitor(v);
	
			file.MemberLocations = output.MemberLocations;
			file.DebugSymbols = output.DebugSymbols;
			file.output = writer.ToString();
			
			return file;
		}