Easystructure determines the structure of source code, from which flowchart, tree views and source reformatting can be done.
Determining the structure involves compiler like parsing of the source code. Like a compiler Easystructure parsing can be dependent on include paths and preprocessor defines. Easystructure can be less strict than a compiler, for example in its interpretation of unknown names (e.g. is this unknown name an undeclared variable or an undefined type?) and with settings to ignore missing include paths.
Easystructure also includes 'user defined extensions' which allow the many compiler specific language extensions to be handled.
Start Easystructure and either open an Easystructure project file or use the 'default.cfc' project. With version 1.2.1 or earlier the project file window will be displayed. Open your C source file and then select either the menu item 'Tools/Tree view' or the button to parse and display the structure in a tree view. If the tree view doesn't appear then a parsing error has occurred which is displayed in the output window on version 1.2.2 or later, on earlier versions it's displayed in the project window (note that the project window may be behind the source file window). With version 1.2.2 or later double clicking on the error message will take you to the error in the source.
Parsing errors are often due to incorrect project settings (menu 'Tools/Project Options'), typically missing includes or compiler specific language settings. Easystructure will normally try to work out the type of an undefined/undeclared name from the name's context in the source. This can be utilised for a quick start by setting 'ignore missing includes'/'auto find missing includes' and 'retry unknown names as typedefs or user extensions'. Alternatively for strict parsing the include paths, defines and any language extensions used in the source should be defined in the project settings. Setting the compiler option for which the source is written will include the appropriate defines and language extensions.
When the source has been analysed/parsed then a tree view representing the code's structure is generated. This can be browsed and either from the menu 'View' or by right clicking a line the other options such as flowchart (generated for the selected line and it's children) can be selected.
To find the source matching a line in the tree view select either 'Sync source' or the button.
To reformat/beautify the original source first generate the tree view. Then set the reformat options in the project settings and then select 'Tools/Reformat'.
Further help on individual settings and features can be found in the Easystructure help.