Codeparse group

Welcome to the Code Parse Group! Be sure to subscribe, and don't forget to click "my subscription" if you want to subscribe to the mailing list.


IncludePath

2006 by Carl Verbiest, CCE NV

Scans the source, looks for includes and adds the path (relative to src) to the include name.

This is a clever use of Proparse's "scanner" feature combined with the use of the propath SEARCH function, in order to add relative paths to include file names. This is useful for cleaning up code that depended on each include file directory being on the propath. The goal is to reduce the number of entries on the propath. Thanks Carl!

includepath.p

Revision History
19 Mar 2006: First posted.


Proparse Treeview

Thanks very much to Carl Verbiest for his permission to post this useful tree visualization utility that he built.

treeview.zip

Proparse TreeviewProparse Treeview

Revision History
April 12, 2005: First post.


Proparse To XML

This is another contribution from Allan Doane (QAD). This utility reads from Proparse to generates an XML representation of the syntax tree for the program that was last parsed. Thanks Allan!

proparseToXML.p
runProparseXMLer.p

People using this utility might also be interested in a nice, free XML visualization tool that I found here: Mindfusion XML Viewer.

Revision History


Proparse Browser

This is a nifty utility contributed by Allan Doane for running and visualizing ad-hoc search/queries on a compile unit.

proparsebrowse.w
proparsetokentypes.txt

Proparse Browser screenshot

Revision History
Version 002, 16 Sep 2003: John Green added option for subquery (filter) to be based on either strictly a direct child node, or else on any descendant (grandchildren) nodes.


ProStyle

The ProStyle project uses various features from Proparse in order to pretty-print P4GL/ABL.


AutoDox

AutoDox is an automated code documentor which uses Proparse to find significant features in your programs and then output details of these features in HTML documents. Some features so far reported in the generated documents are a program's parameters, internal procedures and functions, as well as comments where possible.


Proparse Java/SWT tree view

This is an example of using Proparse from Java. It is self contained with Java source and the JNI DLL necessary for loading Proparse from Java.

It contains a "ProparseLdr" class to make it easy to interface with Proparse.dll, and a "Node" class to make it easy to work with nodes in Proparse's syntax tree.

It also contains an SWT example (SWT is the widget toolkit from eclipse.org) of browsing Proparse's syntax tree:

Proparse tree browser in SWTProparse tree browser in SWT


Proparse-Based Utilities

This project gathers various utilities related to parsing code. This includes tools for viewing or converting Proparse's syntax tree, utilities for find and report, utilities for search and replace, etc.


Pictures

Pictures

Here is a screenshot of a window, along with the PRO/Dox generated wire-frame diagrams.

PRO/Dox Screenshot 1PRO/Dox Screenshot 1

PRO/Dox Wireframe 1PRO/Dox Wireframe 1

PRO/Dox Wireframe 2PRO/Dox Wireframe 2


PRO/Dox

PRO/Dox by Gordon Campbell takes AutoDox in two whole new directions. First, it generates XML instead of HTML, so that documentation can more easily be rendered in other formats (Word, PDF, etc). Second, it generates wire-frame diagrams of the frames it finds in your source code!


Links and Resources

www.joanju.com
Joanju provides commercial support and service for ProRefactor. Joanju wrote ProRefactor and released it to this open-source project in December, 2004. Joanju is also the home of Proparse, which is an integral part of ProRefactor.

www.peg.com
by Greg Higgins. The Progress Email Group, and host of the Proparse mailing list.

www.antlr.org
by Terence Parr. Antlr is our parser-generator of choice.


Download & Install

Download and Install Using Eclipse's Update Manager

See Install Instructions.

The latest release is 1.7.2, as of June 28, 2007. Be sure to see the special update instructions, below.

The URL that you will require for installing ProRefactor via Eclipse's Update Manager is:

http://prorefactor.oehive.org/update/

Standalone JAR

http://prorefactor.oehive.org/prorefactor.jar


ProRefactor project

This project is for maintenance and continued enhancements to the ProRefactor libraries for working with Proparse's syntax tree. Includes tree parsing, symbol tables, persistent storage of the syntax trees, project configuration, Eclipse integration, etc.


ProRefactor

Retired This project is retired as of August 2009. -- John Green

ProRefactor is a Java library for extending Proparse (joanju.com/proparse). At its core, it slurps Proparse's syntax tree into a tree of plain old Java objects, and further processes that tree to add symbol tables and other useful information.

ProRefactor has been used for building tools for code analysis, lint, documentation, search and replace, and more.


#
Syndicate content