ebook img

Documentation for Pascal Analyzer - Peganza PDF

182 Pages·2016·1.84 MB·English
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Documentation for Pascal Analyzer - Peganza

Pascal Analyzer Copyright © 2001-2017 Peganza Pascal Analyzer by Peganza Pascal Analyzer parses Delphi or Borland Pascal source code and produces reports that help you understand your source code better. Pascal Analyzer Copyright © 2001-2017 Peganza All rights reserved. No parts of this work may be reproduced in any form or by any means - graphic, electronic, or mechanical, including photocopying, recording, taping, or information storage and retrieval systems - without the written permission of the publisher. Products that are referred to in this document may be either trademarks and/or registered trademarks of the respective owners. The publisher and the author make no claim to these trademarks. While every precaution has been taken in the preparation of this document, the publisher and the author assume no responsibility for errors or omissions, or for damages resulting from the use of information contained in this document or from the use of programs and source code that may accompany it. In no event shall the publisher and the author be liable for any loss of profit or any other commercial damage caused or alleged to have been caused directly or indirectly by this document. 4 Pascal Analyzer Table of Contents Foreword 0 Introduction 7 Known limitations 12 What's new in version 9 (April 2017)? 15 What's new in version 8 (May 2016)? 28 What's new in version 7 (November 2013)? 32 What's new in version 6 (August 2011)? 35 What's new in version 5 (May 2010)? 39 What's new in version 4 (October 2006)? 42 Command-Line Options for PAL.EXE and PAL32.EXE 45 How to use PAL.EXE and PAL32.EXE 46 How to use PALCMD.EXE and PALCMD32.EXE 48 Installation folders 53 Main window 55 Reports 61 1 General Rep.o..r..t.s............................................................................................................................. 62 Status Report. ......................................................................................................................................................... 62 Strong Warnin...g..s.. .R..e..p..o..r..t. ....................................................................................................................................... 63 Warnings Rep..o..r.t.. ................................................................................................................................................... 68 Memory Repo.r..t. ...................................................................................................................................................... 92 Optimization .R..e..p..o..r..t. .............................................................................................................................................. 95 Code Reducti.o..n.. .R...e..p..o..r.t. ......................................................................................................................................... 99 Convention C...o..m...p..l.i.a..n...c..e. .R...e..p..o..r..t. ......................................................................................................................... 110 Inconsistent. .C..a..s..e.. .R...e..p..o..r.t.. ................................................................................................................................... 115 Prefix Repor.t. ........................................................................................................................................................ 116 NextGen Rea..d..i.n..e..s..s.. .R...e..p..o..r.t. ................................................................................................................................. 116 2 Metrics Rep..o...r.t.s............................................................................................................................ 117 Totals Repor..t. ....................................................................................................................................................... 117 Copyright © 2001-2017 Peganza Contents 5 Module Tota.l.s.. .R..e..p..o...r.t. .......................................................................................................................................... 118 Complexity R..e..p...o..r.t. ............................................................................................................................................... 119 Object-orien.t.e..d.. .M...e..t.r..ic..s.. .R...e..p..o..r..t. .......................................................................................................................... 122 3 Reference R...e..p..o..r..t.s....................................................................................................................... 125 Modules Rep..o..r..t. ................................................................................................................................................... 126 Identifiers Re..p...o..r.t. ................................................................................................................................................. 127 Duplicate Ide..n..t.i.f..ie..r..s.. .R..e..p..o...r.t. ................................................................................................................................ 128 Similarity Re.p...o..r.t. .................................................................................................................................................. 129 Literal String..s../.N..u..m....b..e..r.s.. .R...e..p..o..r.t. .......................................................................................................................... 129 Subprogram. .I.n..d..e..x.. .R...e..p..o..r.t.. .................................................................................................................................. 130 Bindings Re.p..o..r.t.. .................................................................................................................................................. 130 Third-party D..e..p..e..n..d..e..n..c..i.e..s.. .R...e..p..o..r.t.. ...................................................................................................................... 131 Most Called .R..e..p...o..r.t. .............................................................................................................................................. 132 Call Tree Rep...o..r.t. ................................................................................................................................................... 133 Reverse Call. .T..r..e..e.. .R..e..p..o..r..t. .................................................................................................................................... 134 Call Index Re..p..o...r.t. ................................................................................................................................................. 134 Exception Re..p...o..r.t. ................................................................................................................................................. 134 Brief Cross-r..e..f.e..r.e..n..c..e.. .R..e..p...o..r.t. .............................................................................................................................. 135 Cross-refere.n..c..e.. .R...e.p...o..r.t. ....................................................................................................................................... 135 Used Outsid.e.. .R..e..p..o...r.t. ........................................................................................................................................... 137 Uses Report. ......................................................................................................................................................... 137 Conditional S...y..m...b..o..l.s.. .R...e..p..o..r.t. ............................................................................................................................... 141 Directives Re..p...o..r.t. ................................................................................................................................................. 142 To-Do Repor.t.. ....................................................................................................................................................... 143 Module Call .T..r.e..e.. .R...e..p..o..r..t. ..................................................................................................................................... 143 Help Report .......................................................................................................................................................... 144 Searched Str..i.n..g..s.. .R...e..p..o..r.t. ..................................................................................................................................... 145 Map File Rep..o..r.t.. ................................................................................................................................................... 145 4 Class Repo..r.t.s............................................................................................................................... 147 Class Index .R..e..p..o..r..t. .............................................................................................................................................. 147 Class Summ.a..r..y. .R...e..p..o..r..t. ....................................................................................................................................... 148 Class Hierar.c..h..y.. R...e..p..o..r..t. ....................................................................................................................................... 148 Class Field A..c..c..e..s..s.. .R..e..p..o...r.t. .................................................................................................................................. 149 5 Control Rep...o..r.t.s............................................................................................................................ 149 Control Inde.x.. .R..e..p..o...r.t. ........................................................................................................................................... 149 Control Align..m...e..n...t. .R..e..p..o...r.t. ................................................................................................................................... 150 Control Size. .R..e..p..o...r.t. ............................................................................................................................................. 150 Control Tab .O...r.d..e..r. .R...e..p..o..r..t. ................................................................................................................................... 151 Control Warn..i.n...g..s.. .R..e..p..o...r.t. .................................................................................................................................... 152 Property Val.u..e.. .R..e..p..o...r.t. ......................................................................................................................................... 153 Missing Prop..e..r..t.y.. .R..e..p..o..r..t. ..................................................................................................................................... 154 Form Report. ......................................................................................................................................................... 155 Events Repo.r..t. ...................................................................................................................................................... 155 Main menu 157 1 File menu ................................................................................................................................... 157 2 Edit menu ................................................................................................................................... 160 3 Search men..u................................................................................................................................. 161 4 View menu................................................................................................................................... 162 5 Analysis m.e..n..u.............................................................................................................................. 163 Copyright © 2001-2017 Peganza 5 6 Pascal Analyzer 6 Options me..n..u............................................................................................................................... 164 Properties -. .G..e..n..e..r..a..l. ........................................................................................................................................... 167 Properties -. .R..e..p..o..r..t.s.. ........................................................................................................................................... 171 Properties -. .F..o..r.m...a..t.. ............................................................................................................................................ 176 Properties -. .P..a..r.s..e..r.. ............................................................................................................................................. 184 Properties -. .S..w...i.t.c..h..e..s.. ......................................................................................................................................... 190 Preferences. .-. .G...e..n..e..r..a.l. ......................................................................................................................................... 192 Preferences. .-. .S...o..u..r.c..e.. .C...o..d..e.. ................................................................................................................................ 196 Preferences. .-. .E...d..i.t.o..r.. ........................................................................................................................................... 199 Help menu 203 Index 204 Copyright © 2001-2017 Peganza Introduction 7 1 Introduction Welcome to Pascal Analyzer Lite! Pascal Analyzer Lite is our totally FREE version. You can download and use it without any cost. It is much like the full Pascal Analyzer product, but only some of the reports are available. We point out in this documentation when reports and report sections are only available in the full version. Pascal Analyzer, or PAL for short, is a utility program that analyzes, documents, debugs, and helps you optimize your source code. Pascal Analyzer makes a static code analysis. It only needs the source code, unlike other similar tools that perform an analysis of the running program. We think that PAL will help you better understand your code and support you in producing code of higher quality, consistency, and reliability. PAL quickly pays itself back in easier maintenance, less errors and improved quality, not only during development, but also throughout the entire life cycle of your code. The main window in Pascal Analyzer On a 64-bits computer, PAL will install both the main new 64-bits version and 32-bits in Copyright © 2001-2017 Peganza 8 Pascal Analyzer a subdirectory: PAL.EXE – the main 64-bits Windows program with a friendly user interface PALCMD.EXE – a 64-bits command-line analyzer PAL32.EXE - 32-bits version PALCMD32.EXE - 32-bits version On a 32-bits computer, only the 32-bits versions will be installed. The command-line analyzer produces exactly the same reports as the GUI version. You will however most often use the GUI in PAL.EXE (or PAL32.EXE). For running analyses in batch mode or to integrate into a build process, use PALCMD.EXE (or PALCMD32.EXE). There are also Delphi IDE plug-ins, PALWIZ.DLL (or PALWIZx.DLL, depending on Delphi version), to enable the RAD Studio IDE to load a source file when double-clicking on a report line in Pascal Analyzer. The plug-in is automatically installed and enabled. You can enable/disable the plug-in from the Preferences dialog. The plugins work with Delphi 5 and later versions. Pascal Analyzer functions with Pascal/Delphi Compilers from BP7 and later:  Borland Pascal 7 (or earlier)  Delphi 1  Delphi 2  Delphi 3  Delphi 4  Delphi 5  Delphi 6  Delphi 7  Delphi 8 for .NET  Delphi 2005 for Win32  Delphi 2005 for .NET  Delphi 2006 for Win32  Delphi 2006 for .NET  Delphi 2007 for Win32  Delphi 2007 for .NET  Delphi 2009 for Win32  Delphi 2010 for Win32  Delphi XE for Win32  Delphi XE2 for Win32  Delphi XE2 for Win64  Delphi XE2 for OSX  Delphi XE3 for Win32  Delphi XE3 for Win64  Delphi XE3 for OSX Copyright © 2001-2017 Peganza Introduction 9  Delphi XE4 for Win32  Delphi XE4 for Win64  Delphi XE4 for OSX  Delphi XE4 for iOS Device  Delphi XE4 for iOS Simulator  Delphi XE5 for Win32  Delphi XE5 for Win64  Delphi XE5 for OSX  Delphi XE5 for iOS Device  Delphi XE5 for iOS Simulator  Delphi XE5 for Android  Delphi XE6 for Win32  Delphi XE6 for Win64  Delphi XE6 for OSX  Delphi XE6 for iOS Device  Delphi XE6 for iOS Simulator  Delphi XE6 for Android  Delphi XE7 for Win32  Delphi XE7 for Win64  Delphi XE7 for OSX  Delphi XE7 for iOS Device  Delphi XE7 for iOS Simulator  Delphi XE7 for Android  Delphi XE8 for Win32  Delphi XE8 for Win64  Delphi XE8 for OSX  Delphi XE8 for iOS Device 32-bits  Delphi XE8 for iOS Device 64-bits  Delphi XE8 for iOS Simulator  Delphi XE8 for Android  Delphi 10 for Win32  Delphi 10 for Win64  Delphi 10 for OSX  Delphi 10 for iOS Device 32-bits  Delphi 10 for iOS Device 64-bits  Delphi 10 for iOS Simulator  Delphi 10 for Android  Delphi 10.1 for Win32  Delphi 10.1 for Win64  Delphi 10.1 for OSX  Delphi 10.1 for iOS Device 32-bits  Delphi 10.1 for iOS Device 64-bits  Delphi 10.1 for iOS Simulator  Delphi 10.1 for Android  Delphi 10.2 for Win32 Copyright © 2001-2017 Peganza 10 Pascal Analyzer  Delphi 10.2 for Win64  Delphi 10.2 for OSX  Delphi 10.2 for iOS Device 32-bits  Delphi 10.2 for iOS Device 64-bits  Delphi 10.2 for iOS Simulator  Delphi 10.2 for Android  Delphi 10.2 for Linux 64-bits PAL parses your source code in the same way as the compiler. It builds large data tables in memory and when the parsing is finished, produces an assortment of reports. These reports hold plenty of useful information that can help you error-proof your applications. Be forewarned that PAL occasionally needs a lot of memory (RAM). The amount of memory needed is proportional to the number of code lines and modules in the examined project. In addition to common cross-reference reports, PAL produces reports that show which units are used, which identifiers are unused and so on. It also calculates industry standard metrics such as lines of code (LOC) and decision points (DP), and much more.. Projects To analyze a particular set of source code with Pascal Analyzer, you must first create a project. Do not confuse a Pascal Analyzer project with a Delphi project, they are completely different things. The project holds the options for the analysis and lets you conveniently use separate options for different sets of source code. Projects are saved as text files with the extension “pap”, like for example a file with the name MyProj.pap. The format of the files is equivalent to that of an INI file. It is possible to inspect and edit the project files in a normal text editor, although not recommended. Multi-projects Multi-projects are essentially collections of Pascal Analyzer projects (see above). In a way they are similar to Delphi project groups (*.bpg-files), in that they both reference other projects. When a multi-project is run, the included projects are analyzed sequentially. The reports that are generated contain mutual facts about these projects. Multi-projects are saved as text files with the extension “pam”, like for example a file with the name MyMProj.pam. The format of the files is equivalent to that of an INI file. A subset of all reports and sections are generated for a multi-project: Warnings Report - Interfaced identifiers that are used, but not outside of unit - Interfaced class identifiers that are public/published, but not used outside of unit Optimization Report - Virtual methods (procedures/functions) that are not overridden Copyright © 2001-2017 Peganza

Description:
Delphi XE4 for iOS Device. • Delphi XE4 for iOS Simulator. PAL parses your source code in the same way as the compiler. It builds large data tables in memory
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.