static void Main(string[] args) { Console.WriteLine("Just testing git hub"); // TODO: changes this to relative path var myClassText = File.ReadAllText(@"d:\src\GitHub\Repos\Roslyn-tinkering\ConsoleApplication1\MyClass.cs"); var tree = CSharpSyntaxTree.ParseText(myClassText); var syntaxRoot = tree.GetRoot(); var myMethods = syntaxRoot.DescendantNodes() .OfType<MethodDeclarationSyntax>(); // gets all methods from class foreach (var myMethod in myMethods) { Console.WriteLine(myMethod.Identifier.ToString()); } var customWalker = new CustomWalker(); customWalker.Visit(syntaxRoot); // another way to get all methods var classMethodWalker = new ClassMethodWalker(); classMethodWalker.Visit(syntaxRoot); Console.WriteLine("New class without semicolons."); var rewriter = new EmptyStatementRemoval(); var result = rewriter.Visit(tree.GetRoot()); Console.WriteLine(result.ToFullString()); Console.ReadKey(); }
public void _1SimplyInheritCSharpSyntaxWalker() { var tree = CSharpSyntaxTree.ParseText(@" public class MyClass { public void MyMethod() { } public void MyMethod(int n) { } "); var walker = new CustomWalker(); walker.Visit(tree.GetRoot()); }
public long GetSlocFor(IEnumerable <FileInfo> files, SlocOptions options) { var tree = CSharpSyntaxTree.ParseText( @"using /* Blah */ System; // Blah public class MyClass { public void MyMethod() { var blah = ""abc""; } }"); var root = tree.GetRoot(); var walker = new CustomWalker(); walker.Visit(root); var lineMap = walker.LineMap; return(1); }