Google is very smart ;)
I'm not sure there are any public .Net regression files, so I tried to use a large publicly available repository of source files. The reference source from Microsoft, which is all the CSharp source for the .Net runtimes, seemed like a good choice.
I'm sure it's not perfect by any means but it parses a very high percentage of CSharp files.
Crap, I have a readme.txt but didn't include it in the project. I'd be happy to write a FAQ / add more to the readme.txt but I haven't had many questions so far.
In answer to your question about Visual Studio, the AntlrCSharp project builds the grammar. The project generates csLexer.cs and csParser.cs which are compiled in the CSharp project. VS has a feature for external tools called Custom Build Rules.
These only exist in C++ projects. So that is why the grammar is in a VC++ project. It does nothing more than launch Java to build the lexer/parser. See the AntlrCSharp project properties for setting Antlr options.
The CSharp project is nothing more than the compiled parser and lexer. See the antlr.org site for more detail but the public methods on csParser.cs are nothing more than the rule names found in the grammar. If you have the CSharp.dll you actually
don't need to build cs.g from scratch, though of course you can. UnitTest is the test harness
I didn't use CSharp2 because I didn't know it existed :)
Yes the Antlr3Runtime.dll is the one from 3.1.x. Just trying to make your life easier.
You can read about differert ways to integrate wth Visual Studio here
http://www.antlr.org/wiki/display/ANTLR3/Integration+with+Development+Environments The MSBuild method doesn't allow you to specify options from the project page, so everyone would have to edit the project files themselves. That didn't seem like
a great alternative. Running the Antlr tool with different options would mean changing the project file everytime. If you bring up the project properties page for AntlrCSharp, the C++ utility project, you will see that Antlr has a section where
you can specify different options.
I also had some troubles with the MSBuild integration method where the generated files were not flushed to disk by the time MSBuild went to compile them. To be fair, I also have that trouble on occasion with the C++ project method as well.
Hope that helps.