Posts Tagged ‘Parsing’

DXCore Expression Lab tool window for observing the parsed source code trees

August 16th, 2011 Comments off

The Expression Lab is a DXCore diagnostic plug-in containing the tool window that displays the hierarchical abstract source tree built by the DXCore. This is useful to learn the structure of the parsed source code and created a source tree to build your own DXCore plug-ins. When you know the structure of the tree, you can build your own trees or its parts and generate the appropriate code for all programming languages supported by the DXCore. Also, you can see the set of properties each language element has, to learn more on how to construct any specific elements.

Read more…

How to use DXCore in a Console App outside of Visual Studio

June 2nd, 2011 2 comments

Actually, DXCore is not designed to be used outside of Visual Studio, but there are always workarounds… In this article I’m going to show you how to use the DXCore Framework inside the regular C# Console Application to parse an entire solution and work with the abstract parsed tree. The solution should be passed-in as an argument to the program as a full complete path to the *.sln file. If there’s no argument used, the hard-coded path to the test program is used, so the program will parse itself and print information about the solution, such as a list of all types used and the number of members inside of each class.

Read more…

DXCore – source code and source tree elements coordinate inside source files

May 27th, 2011 2 comments

Inside Visual Studio IDE, the source code text has its coordinates: the line number and the column:

Source code coordinates

Read more…

DXCore Services – Language

April 11th, 2011 Comments off

The Language DXCore service is one of the most important services that provides access to the programming language fundamentals, including access to language extensions. Language extensions are DXcore plug-in extensions, which implement specific programming language support for Visual Studio, including parsers and code generators.

Read more…

How to parse source code using the DXCore integrated code parsers

April 11th, 2011 3 comments

There are times when you need to parse specific source files or blocks of code. Obviously, the DXCore Framework has many built-in parsers for various programming languages. They can be used inside the Visual Studio environment, or outside an IDE in any other application type, such as a Console App, for example. Later, this kind of app (a Console App) can be used in the project building process for code validation, code clean-up, automatic refactoring and any other task.

Read more…

DXCore abstract source tree structure

January 12th, 2011 Comments off

DXCore supports lots of programming languages provided by the language services in Visual Studio. These services provide language-specific support (such as CSharp, Visual Basic, C++) for editing source code in the integrated development environment (IDE). DXCore includes appropriate source code parsers for these programming languages. When the source code is parsed, DXCore builds an abstract syntax tree (AST) that is a representation of the syntactic structure of the source code of a particular programming language. This abstract syntax tree is unified for all languages supported by IDETools. That’s why it is easy to develop a language-independent feature as a DXCore plug-in – in most cases your feature will be available in all corresponding languages automatically.

Read more…

How to disable support for specific languages in CodeRush

September 13th, 2010 Comments off

Note, this article has been moved to the official DevExpress Support Center site. Please refer to the moved article as it might have further updates or additional comments. Thank you.

As you know, IDE Tools support several programming languages. Sometimes it is necessary to disable specific language support (disable parsing inside source files), for example, due to performance issues in a particular project. This can be easily achieved on the Parsing” options page in the Options Dialog.

Read more…