Banner showing base of Eiffel tower

Github

Download version 1.4.8: Windows or Linux

Tool: Eiffel Development Utilities

This project cluster has 131 classes.

ECF: eiffel.ecf

Source code: directory list

A "Swiss-army knife" of Eiffel development utilities invokeable by a command-line switch.

Sub-applications

CLASS_DESCENDANTS_APP outputs class descendants for selected class as a text file and is designed to be used as an external tool from within EiffelStudio.

Command switch: -class_descendants

EIFFEL_VIEW_APP publishes source code and descriptions of Eiffel projects to a website as static html and generate a Contents.md file in Github markdown. See eiffel.org article

Command switch: -eiffel_view

CODEC_GENERATOR_APP generates Eiffel classes conforming to EL_ZCODEC from VTD-XML C code

Command switch: -generate_codecs

ECF_TO_PECF_APP converts Eiffel configuration files to Pyxis format

Command switch: -ecf_to_pecf

LIBRARY_OVERRIDE_APP generates override of standard libaries to work with Eiffel-Loop

Command switch: -library_override:

REPOSITORY_NOTE_LINK_CHECKER_APP expands $source variable path in wiki-links contained in a wiki-markup text file. The app use a EIFFEL_VIEW_APP publishing configuration. Write the expanded output to file named as follows:

<file name>.expanded.<file extension>

An incidental function is to expand all tabs in the markup as 3 spaces.

Command switch: -expand_links

SOURCE_FILE_NAME_NORMALIZER_APP normalize class filenames as lowercase classnames within a source directory

Command switch: -normalize_class_file_name

IMP_CLASS_LOCATION_NORMALIZER_APP normalizes location of implementation classes in relation to respective interfaces for all projects listed in publisher configuration.

Command switch: normalize_imp_location

WINZIP_SOFTWARE_PACKAGE_BUILDER_APP builds a signed self-extracting software installer for Windows OS using signtool and WinZip tools.

Command switch: -winzip_exe_builder

Download

Download binary of el_eiffel for Ubuntu 14.04 or Linux Mint 17.x.

Directory: tool/eiffel/source/root

[ . ]

. /app-type

. /apps

. /apps/generate

. /command

. /command/repository

. /eiffel/config

. /eiffel/feature

. /eiffel/generate

. /eiffel/generate/codec

. /eiffel/github

. /eiffel/library/cross-platform

. /eiffel/library/dependency

. /eiffel/library/override

. /eiffel/library/override/classes

. /eiffel/library/override/classes/gtk

. /eiffel/library/override/classes/mswin

. /eiffel/library/publish/class

. /eiffel/library/publish/config

. /eiffel/library/publish/config/file

. /eiffel/library/publish/html

. /eiffel/library/publish/html/page

. /eiffel/library/publish/markdown

. /eiffel/library/publish/support

. /eiffel/library/publish/support/substitution

. /eiffel/library/publish/support/table

. /eiffel/package-builder

. /eiffel/pyxis-ecf

. /eiffel/pyxis-ecf/support

. /eiffel/pyxis-ecf/tag-group

. /eiffel/source

[ . ]

APPLICATION_ROOT

Application root class

Further Information

Click on class link to see notes.

BUILD_INFO

Build specification

Further Information

Click on class link to see notes.

app-type

REPOSITORY_PUBLISHER_APPLICATION

Application based on repository publisher

SOURCE_MANIFEST_APPLICATION

Command line interface to command conforming to SOURCE_MANIFEST_COMMAND

apps

AUTOTEST_APP

Finalized executable tests for sub-applications

Further Information

Click on class link to see notes.

ECF_TO_PECF_APP

Command-line interface to ECF_TO_PECF_COMMAND

EIFFEL_VIEW_APP

Eiffel-View is a sub-application to publish source code and descriptions of Eiffel projects to a website as static html and generate a Contents.md file in Github markdown.

See eiffel.org article and the REPOSITORY_PUBLISHER command.

GITHUB_MANAGER_APP

Command line interface to GITHUB_MANAGER_SHELL_COMMAND

Further Information

Click on class link to see notes.

IMP_CLASS_LOCATION_NORMALIZER_APP

Command-line interface to command IMP_CLASS_LOCATION_NORMALIZER

LIBRARY_MIGRATION_APP

Command line interface to LIBRARY_MIGRATION_COMMAND

Further Information

Click on class link to see notes.

PYXIS_ECF_CONVERTER_APP

Command line interface to command PYXIS_ECF_CONVERTER

Further Information

Click on class link to see notes.

PYXIS_TRANSLATION_TREE_COMPILER_APP

Sub app to compile tree of Pyxis translation files into multiple locale files named locale.x where x is a 2 letter country code. Does nothing if source files are all older than locale files. See class EL_LOCALE_I

Syntax:

el_toolkit -compile_translations -source <source tree dir> -output <output dir>

REPOSITORY_SOURCE_LINK_EXPANDER_APP

Command line interface to REPOSITORY_SOURCE_LINK_EXPANDER command

WINZIP_SOFTWARE_PACKAGE_BUILDER_APP

Command line interface to WINZIP_SOFTWARE_PACKAGE command

Further Information

Click on class link to see notes.

apps/generate

CODEC_GENERATOR_APP

Command-line interface to CODEC_GENERATOR command

ID3_FRAME_CODE_CLASS_GENERATOR_APP

Command line interface to ID3_FRAME_CODE_CLASS_GENERATOR

Further Information

Click on class link to see notes.

LIBRARY_OVERRIDE_APP

Command-line interface to LIBRARY_OVERRIDE_GENERATOR command

command

CODEC_GENERATOR

Generate Eiffel classes conforming to EL_ZCODEC from VTD-XML C code

ECF_TO_PECF_COMMAND

Convert all Eiffel configuration files in directory tree to Pyxis format

EIFFEL_VIEW_COMMAND

Run source code publisher in a loop until user types "quit"

ID3_FRAME_CODE_CLASS_GENERATOR

Tool for TagLib.ecf library to generate TL_FRAME_ID_ENUM from the ID3v2 specification documents versions 2.2, 2.3 and 2.4.

LIBRARY_MIGRATION_COMMAND

Tool to migrate librares to newer compiler version by copying classes one by one to new library structure starting with classes that do not depend on other classes within the library

LIBRARY_OVERRIDE_GENERATOR

Creates class overrides of standard libraries for Eiffel-loop

PYXIS_ECF_CONVERTER

Converts Pyxis format Eiffel project configuration with .pecf extension to .ecf XML file

Further Information

Click on class link to see notes.

PYXIS_TRANSLATION_TREE_COMPILER

Compile a manifest list of Pyxis locale translation files into a directory locales binary data files. For example:

locales/en
locales/de
locales/fr

Further Information

Click on class link to see notes.

SOURCE_MANIFEST_COMMAND

Process files specified in a Pyxis format source manifest as for example: sources.pyx

XML_TO_PYXIS_CONVERTER

Xml to pyxis converter

command/repository

IMP_CLASS_LOCATION_NORMALIZER

Normalizes location of implementation classes (*_imp.e) in relation to respective interfaces (*_i.e) for all projects referenced in repository publishing configuration. See class CROSS_PLATFORM_CLUSTER for details.

REPOSITORY_PUBLISHER

Publishes an Eiffel repository as a website based on a set of Evolicity templates and a configuration file listing the libraries and clusters to include.

REPOSITORY_SOURCE_LINK_EXPANDER

Use a supplied repository publishing configuration to expand $source variable path in wiki-links containined in a wiki-markup text file. Write the expanded output to file named as follows:

<file name>.expanded.<file extension>

An incidental function is to expand all tabs as 3 spaces.

eiffel/config

ECF_XML_GENERATOR

ECF XML generator

eiffel/feature

CLASS_FEATURE

Class feature

CONSTANT_FEATURE

Features that do not require any expansion like for example

Pi: REAL = 3.142

Name: STRING = "[

EQA_TEST_EVALUATION_CALLBACK_FEATURE

Insert callbacks for implementation of do_all from test set class inheriting EL_EQA_TEST_SET

For example:

do_all (eval: EL_TEST_SET_EVALUATOR)
   -- evaluate all tests
   do
      eval.call ("file_editing", agent test_file_editing)
   end

FEATURE_GROUP

Group of class features with common export status

FEATURE_GROUP_LIST

List of class feature groups

MAKE_ROUTINE_FEATURE

Expands make routine containing expandable signature types with names identical to class attributes

UNEXPANDED

make (arg_1:@; arg_2:@; ..)
   do
      ..
   end

EXPANDED

make (a_arg_1: like arg_1; a_arg_2: like arg_2; ..)
   do
      arg_1 := a_arg_1; arg_2 := a_arg_2
   end

ROUTINE_FEATURE

Routine feature

SETTER_SHORTHAND_FEATURE

Expand setter shorthand

@set name

AS

set (a_name: like name)
   do
      name := a_name
   end

eiffel/generate

ID3_CODE_CLASS

Id3 code class

eiffel/generate/codec

CODEC_INFO

Codec info

LATIN_CHARACTER

Latin character

UNICODE_INTERVAL

Unicode interval

eiffel/github

GITHUB_CONFIGURATION

Github configuration

GITHUB_MANAGER_SHELL_COMMAND

Github manager shell command

Further Information

Click on class link to see notes.

eiffel/library/cross-platform

CROSS_PLATFORM_CLUSTER

Cluster of cross platform implementations and interfaces

The normalize_locations procedure does the following:

Any class file names ending with _i.e are matched with implementation classes ending with _imp.e. If only a common-platform exists then the implementation class is moved to the normalized location

imp_common/<path>/<class-name>.e

where <path> is the location relative to the cluster directory.

Where Windows and Unix implementations exist then the implementation classes are moved to normalized locations

imp_unix/<path>/<class-name>.e
imp_mswin/<path>/<class-name>.e

where <path> is the location relative to the cluster directory.

CROSS_PLATFORM_CONSTANTS

Cross platform constants

eiffel/library/dependency

LIBRARY_CLASS

Library class

eiffel/library/override

OVERRIDE_FEATURE_EDITOR

eiffel/library/override/classes

EV_ENVIRONMENT_I_FEATURE_EDITOR

EV_INTERNALLY_PROCESSED_TEXTABLE_IMP_FEATURE_EDITOR

SD_SHARED_EIFFEL_FEATURE_EDITOR

SD_ZONE_NAVIGATION_DIALOG_FEATURE_EDITOR

eiffel/library/override/classes/gtk

EV_WEB_BROWSER_IMP_FEATURE_EDITOR

eiffel/library/override/classes/mswin

EV_PIXMAP_IMP_DRAWABLE_EIFFEL_FEATURE_EDITOR

EV_PIXMAP_IMP_EIFFEL_FEATURE_EDITOR

EV_RADIO_BUTTON_IMP_EIFFEL_FEATURE_EDITOR

eiffel/library/publish/class

EIFFEL_CLASS

Class to render github like markdown found in the description note field of Eiffel classes.

EIFFEL_CLASS_PARSER

Multi-core distributed class parser

EIFFEL_CLASS_UPDATE_CHECKER

Check for source modifications using distributed callbacks

EIFFEL_LIBRARY_CLASS

Library class

EIFFEL_NOTES

Eiffel notes

eiffel/library/publish/config

ECF_CLUSTER_INFO

ECF project name information

ECF_INFO

ECF project information

EIFFEL_CONFIGURATION_LIST

Eiffel configuration list

SOURCE_DIRECTORY

Source directory

eiffel/library/publish/config/file

CROSS_PLATFORM_EIFFEL_CONFIGURATION_FILE

Eiffel configuration file for cross platform interface and implementation classes conforming to file wildcards:

*_i.e
*_imp.e

ECF_CONSTANTS

Constants for EIFFEL_CONFIGURATION_FILE

EIFFEL_CONFIGURATION_FILE

Eiffel project configuration file

EIFFEL_LIBRARY_CONFIGURATION_FILE

Eiffel library configuration file

eiffel/library/publish/html

HTML_TEXT_ELEMENT

Html text element

HTML_TEXT_ELEMENT_LIST

Html text element list

NOTE_HTML_TEXT_ELEMENT_LIST

Note HTML text element list

REPOSITORY_HTML_TEMPLATES

Repository html templates

eiffel/library/publish/html/page

EIFFEL_CONFIGURATION_INDEX_PAGE

Index page for classes from Eiffel configuration file

REPOSITORY_HTML_PAGE

HTML page for Eiffel repository

REPOSITORY_SITEMAP_PAGE

HTML sitemap page for Eiffel repository

eiffel/library/publish/markdown

GITHUB_REPOSITORY_CONTENTS_MARKDOWN

Github repository contents markdown

MARKDOWN_RENDERER

Markdown renderer

MARKDOWN_ROUTINES

Markdown routines

MARKDOWN_TRANSLATER

Translates Eiffel-View publisher markdown to Github markdown

NOTE_MARKDOWN_RENDERER

Markdown renderer with support for relative Eiffel class links

PREFORMATTED_NOTE_MARKDOWN_RENDERER

Preformatted note markdown renderer

eiffel/library/publish/support

PUBLISHER_CONSTANTS

Publisher constants

SHARED_INVALID_CLASSNAMES

Shared list of invalid class name references in $source links

eiffel/library/publish/support/substitution

HYPERLINK_NOTE_SUBSTITUTION

Expand hyperlink in class note

HYPERLINK_SUBSTITUTION

Expand hyperlink

MARKUP_SUBSTITUTION

Markup substitution

PREFORMATTED_SOURCE_LINK_SUBSTITUTION

Same as SOURCE_LINK_SUBSTITUTION except the output will appear in a preformated HTML section so there is no need for identifier <a id="source"> in the anchor tag.

<pre>
   The class <a href="http://.." target="_blank">MY_CLASS</a>
</pre>

SOURCE_LINK_SUBSTITUTION

Expand class notes with source hyperlink: MY_CLASS [ANY]

eiffel/library/publish/support/table

CLASS_HTML_PATH_TABLE

Map class name to HTML source path

ISE_CLASS_TABLE

Table of ISE class links from eiffel.org and github.com/EiffelSoftware

SHARED_CLASS_PATH_TABLE

Shared instance of CLASS_HTML_PATH_TABLE

SHARED_ISE_CLASS_TABLE

Shared instance of ISE_CLASS_TABLE

eiffel/package-builder

PACKAGE_BUILD_CONSTANTS

Windows package building contants

PYXIS_ECF_SCANNER

Extract relevant lines from Pyxis Eiffel configuration file scanner to Pyxis configuration parseable by type PACKAGE_BUILDER_CONFIG

SCONS_PROJECT_PY_CONFIG

Parser for file project.py used to configure Eiffel-Loop scons build system

Further Information

Click on class link to see notes.

SIGN_TOOL_ARGUMENTS

Arguments for Windows signtool command

SOFTWARE_INFO

Software application information obtained from Eiffel configuration file in Pyxis format (File extension: pecf)

WINZIP_CREATE_SELF_EXTRACT_COMMAND

Wrapper for wzipse32 command

Further Information

Click on class link to see notes.

WINZIP_SOFTWARE_PACKAGE

Winzip self-extracting package builder implementing EL_COMMAND

Further Information

Click on class link to see notes.

WINZIP_TEMPLATE_TEXTS

Localized texts for wzipse32 utility

WZIPSE32_ARGUMENTS

Arguments for WinZip self-extracting exe wzipse32 command

eiffel/pyxis-ecf

PYXIS_ECF_PARSER

Pyxis ECF parser

Further Information

Click on class link to see notes.

eiffel/pyxis-ecf/support

ECF_NAME_VALUE_PAIR

EL_NAME_VALUE_PAIR [STRING] with possibility of /= indicating an excluded_value

GROUPED_LINES_CURSOR

Line iteration cursor with tab_count indentation

PYXIS_ECF_CONSTANTS

Pyxis ECF constants

PYXIS_ECF_NAMES

Pyxis ECF name constants

eiffel/pyxis-ecf/tag-group

CLUSTER_TREE_ECF_LINES

GROUPED_ECF_LINES for recursive cluster tag

CONDITION_ECF_LINE

GROUPED_ECF_LINES to expand shorthand for 'platform' or 'custom' conditions

CUSTOM_ECF_LINES

GROUPED_ECF_LINES for custom condition tag ] notes: "[ Shorthand:

condition:
   x = y

Expansion:

condition:
   custom:
      name = x; value = y

DEBUG_OPTION_ECF_LINES

OPTION_ECF_LINES for debug tag

GROUPED_ECF_LINES

ECF lines grouped under a custom tag: debugging: settings: etc

LIBRARIES_ECF_LINES

GROUPED_ECF_LINES for library tags with an option with an optional common location

Further Information

Click on class link to see notes.

NAME_LOCATION_ECF_LINE

NAME_VALUE_ECF_LINE for name location attribute pair

NAME_VALUE_ECF_LINE

GROUPED_ECF_LINES name value attribute pair line

OLD_NAME_NEW_NAME_ECF_LINE

NAME_VALUE_ECF_LINE for old_name new_name renaming attribute pair

OPTION_ECF_LINES

GROUPED_ECF_LINES for one of option tags: warning or debug

PLATFORM_CONDITION_ECF_LINES

GROUPED_ECF_LINES for adding C externals group platform condition

PLATFORM_FILE_RULE_ECF_LINES

Expand cluster exclusion file rule for platform

Further Information

Click on class link to see notes.

RENAMING_MAP_ECF_LINES

GROUPED_ECF_LINES renaming_map element followed by class name

renaming_map:
   OLD_NAME = NEW_NAME
   OLD_NAME_2 = NEW_NAME_2

SETTING_ECF_LINES

GROUPED_ECF_LINES for setting tag

SUB_CLUSTERS_ECF_LINES

GROUPED_ECF_LINES for cluster tag that maps to a named sub-directory of parent cluster

SYSTEM_ECF_LINES

Expansion of attributes for ECF system tag

WARNING_OPTION_ECF_LINES

GROUPED_ECF_LINES for setting tag

WRITEABLE_LIBRARIES_ECF_LINES

LIBRARIES_ECF_LINES for libraries that can be modified in EiffelStudio

eiffel/source

SOURCE_FILE

Source file

SOURCE_LINES

Editable source lines

SOURCE_MANIFEST

Eiffel source trees manifest

Further Information

Click on class link to see notes.

SOURCE_MODEL

Splits Eiffel source lines into feature groups and individual feature lines

SOURCE_TREE

Source tree