This project cluster has 28 classes.
ECF: eiffel.ecf
Source code: directory list
A "Swiss-army knife" of Eiffel class analysis utilities invokeable by a command-line switch.
Sub-applications
CHECK_LOCALE_STRINGS_APP verifies localization translation identifiers against various kinds of source texts.
Command switch: -check_locale_strings
CLASS_DESCENDANTS_APP outputs a list of descendants for a class as an Eiffel note field that can be copy/pasted into Eiffel source code.
Command switch: -descendants
CODE_METRICS_APP Count occurrences of identifiers, Eiffel keywords and other metrics for source trees specified in manifest.
Command switch: -codebase_stats
ENCODING_CHECK_APP checks for UTF-8 files that could be encoded as Latin-1
Command switch: -check_encoding
REPOSITORY_NOTE_LINK_CHECKER_APP checks for invalid class references in repository note links
Command switch: -check_note_links
UNDEFINE_PATTERN_COUNTER_APP counts the number of classes in the source tree manifest that exhibit multiple inheritance of classes with an identical pattern of feature undefining.
Command switch: -undefine_counter
Download
Download binary of el_eiffel for Ubuntu 14.04 or Linux Mint 17.x.
A command line interface to the command CHECK_LOCALE_STRINGS_COMMAND.
Command line interface to CLASS_DESCENDANTS_COMMAND
Further Information
Click on class link to see notes.
A command line interface to the command MANIFEST_METRICS_COMMAND.
Further Information
Click on class link to see notes.
Command line interface to the command ENCODING_CHECK_COMMAND.
Usage:
el_eiffel -encoding_check -sources <dir-path/manifest-path>
A command line interface to the command FIND_CODE_PATTERN_SHELL.
Further Information
Click on class link to see notes.
A command line interface to the command OPEN_GREP_RESULT_COMMAND.
Further Information
Click on class link to see notes.
Command line interface to REGULAR_EXPRESSION_SEARCH_COMMAND
Command line interface to REPOSITORY_NOTE_LINK_CHECKER command
Command line interface to the command UNDEFINE_PATTERN_COUNTER_COMMAND
A command for verifying localization translation identifiers against various kinds of source texts.
Command to output a "descendants" note field for copy/pasting into Eiffel source code.
Checks for UTF-8 files that could be encoded as Latin-1
Analyzes each class in a specified source manifest or source directory using the class CODEBASE_METRICS and displays metrics
Shell to search for regular expressions in source manifest files
Check for invalid class references in note links
Command operating on a source code tree manifest to count the number of classes containing the following code pattern:
class MY_CLASS inherit A_CLASS rename x as y undefine <feature list> end B_CLASS undefine <feature list> end
where the feature list contains only identifiers defined in Common_undefines
Missing translations
Scans lines from a routine for locale string identifiers
Parses locale ID from result of constant prefixed with English_
English_name: ZSTRING once Result := "Dublin" end
Evolicity template parser
Accumulate statistics for EIFFEL_SOURCE_ANALYZER across many files
Use Unix grep command to recursively search directories of Eiffel source code
Further Information
Click on class link to see notes.
Counts the number of occurrences of identifiers and Eiffel keywords that occur within the body of a routine, i.e. between the do (or once) keyword and the corresponding end (or ensure) at the end of the routine.
But it ignores any identifiers and keywords within code blocks defined by the check or debug keyword. Naturally comments, and anything in quoted text is ignored.
In addition it also records the total source byte count (excluding any BOM).
Further Information
Click on class link to see tests.
Basic metrics for Eiffel class
Abstraction to read Eiffel source file and detect keywords, identifiers, quoted text, numbers and comments.
Command shell to find Eiffel code patterns in sources defined by manifest
Constants for Eiffel grep searches
Collect codes lines that could form an expression of type: x := if <expr> then a else b end