Author:admin

Date:2008-09-19T07:55:09.000000Z


git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@27 abb3cda0-5349-4a8f-a601-0c33ac3a8c38
This commit is contained in:
jfiat
2008-09-19 10:22:25 +00:00
parent c7f7178710
commit 4087eb614e
367 changed files with 390 additions and 1 deletions

View File

@@ -1,5 +1,6 @@
[[Property:title|Batch compilation]]
[[Property:weight|2]]
[[Property:uuid|18958db6-dafc-57b7-cdef-aca01bc13661]]
In order to launch a compilation without user intervention you need to specify the `-batch' switch in the '''ec''' command line, otherwise the Eiffel compilation will be blocked. We will present below a typical example of batch processing on both Unix and Windows platforms where we want to compile a project in both frozen and finalized mode, then to launch the C compilations. At the same time we want to save the output of '''ec''' and the C compilations.
===Unix===

View File

@@ -1,5 +1,6 @@
[[Property:title|Class menu]]
[[Property:weight|2]]
[[Property:uuid|441d6cbb-2c48-5d44-8cb1-0884ade26b98]]
The Class command (c or C) in the main menu will only work if the system has been successfully compiled, and will give you information based on the result of the last successful compilation. It produces the following menu:
<code>
(A) Ancestors : show the ancestors of a class.

View File

@@ -1,5 +1,6 @@
[[Property:title|Compile (and run) menu]]
[[Property:weight|1]]
[[Property:uuid|58af783e-7fc4-9fa3-2374-4143204948bb]]
The Compile command (i or I) in the main menu yields the following item menu:
<code>
(A) Arguments : set the arguments.

View File

@@ -1,5 +1,6 @@
[[Property:title|Documentation menu]]
[[Property:weight|7]]
[[Property:uuid|4ed93bc4-07eb-57ed-b339-4890b5f58fcc]]
The Documentation Menu enables you to generate documentation about the classes of your system:
<code>
(I) Documentation (Flat/Short): Generate flat/short form of all classes in system.

View File

@@ -1,5 +1,6 @@
[[Property:title|Feature menu]]
[[Property:weight|3]]
[[Property:uuid|a662251b-777d-5e28-0e52-ba4932195528]]
The Feature Menu enables you to find properties of a feature:
<code>
(A) Ancestors : show the ancestor versions of a feature.

View File

@@ -1,5 +1,6 @@
[[Property:title|Command line interactive mode]]
[[Property:weight|3]]
[[Property:uuid|3a0acea6-c6d1-c7b9-c2f9-88021cad26b6]]
* [[Interactive command line: Introduction|Introduction]]
* [[Compile (and run) menu|The Compile (and Run) menu]]
* [[Class menu|The Class menu]]

View File

@@ -1,5 +1,6 @@
[[Property:title|Profile menu]]
[[Property:weight|6]]
[[Property:uuid|09c424b0-8ba1-626c-0658-32e5d5e1f81b]]
An execution of an instrumented system will generate a file that contains profiling information. This file (named profinfo) is located in the same directory as your compiled system. You must process it through a profile converter to produce the Execution Profile.
The profile menu will enable you to produce the Execution profile and to extract information from it.

View File

@@ -1,5 +1,6 @@
[[Property:title|System menu]]
[[Property:weight|4]]
[[Property:uuid|c1450c9b-a5d3-3709-1176-9c5c49def362]]
The System Menu gives general information about the system:
<code>
(A) Config : show the config file.

View File

@@ -1,6 +1,7 @@
[[Property:title|EiffelStudio: Command line options]]
[[Property:link_title|Using command line options]]
[[Property:weight|1]]
[[Property:uuid|a6b6a676-8660-ce2d-6f37-03de7f23a78e]]
You may start ec through a command of the following form:
<code>'''ec''' ''option'' ... [''class_name''][''feature_name'']</code>

View File

@@ -1,5 +1,6 @@
[[Property:title|Command line]]
[[Property:weight|-13]]
[[Property:uuid|e1a93995-38bf-14fa-421e-e6fe1f07b9f6]]
* [[Command line: Introduction|Introduction]]
* [[EiffelStudio: Command line options|Command line options]]
* [[Batch compilation|Batch compilation]]

View File

@@ -1,5 +1,6 @@
[[Property:title|Assertions checking configuration changes]]
[[Property:weight|0]]
[[Property:uuid|45e5cc54-cc3d-9f21-b73f-462430ae845e]]
One of the major differences between 4.5 and 5.0 is how to specify the assertion checking in the ace file or in the project settings window. In 4.5, assertions of a certain type where checked if their level was below the requested level. Here is what the level hierarchy looked like:
# require
# ensure

View File

@@ -1,5 +1,6 @@
[[Property:title|Compiler differences from 4.5 to 5.0]]
[[Property:weight|1]]
[[Property:uuid|0937ae2f-0959-ca89-e851-2c8ccbf4f3aa]]
==What's new==
* Implementation of new external syntax.
* Implementation of verbatim strings.

View File

@@ -1,6 +1,7 @@
[[Property:title|Major changes between ISE Eiffel 4.5 and ISE Eiffel 5.0]]
[[Property:link_title|5.0]]
[[Property:weight|-7]]
[[Property:uuid|82179716-24e3-0aa1-7562-bf0a87c05749]]
* [[Assertions checking configuration changes|Assertions checking]]
* [[Changes between 4.5 and 5.0|EiffelThread]]
* [[Compiler differences from 4.5 to 5.0|Miscellaneous]]

View File

@@ -1,6 +1,7 @@
[[Property:title|Major changes between ISE Eiffel 5.0 and ISE Eiffel 5.1]]
[[Property:link_title|5.1]]
[[Property:weight|-8]]
[[Property:uuid|bdb0c46b-2774-f348-f8e8-9932cda47722]]
==What's new==

View File

@@ -1,6 +1,7 @@
[[Property:title|Major changes between ISE Eiffel 5.1 and ISE Eiffel 5.2]]
[[Property:link_title|5.2]]
[[Property:weight|-9]]
[[Property:uuid|f08242d4-d472-142c-7f92-f2c043bc5fa6]]
==What's new==
* .NET generation now includes support for the following language features:
** Support for multiple inheritance.

View File

@@ -1,6 +1,7 @@
[[Property:title|Major changes between ISE Eiffel 5.2 and ISE Eiffel 5.3]]
[[Property:link_title|5.3]]
[[Property:weight|-10]]
[[Property:uuid|c4a7cbf4-da42-791d-cc80-862692233ed9]]
==What's new==
* Finalized executable with option `exception trace' enabled will now display the instruction number (usually equivalent to the line number in the routine) being executed when a failure occurred. It was already displaying this information in workbench/melted mode, we have just extended this feature to finalize mode.
* Incremental compilation is now available for .NET code generation. Meaning that if you modify one class, only this class is being recompiled. It dramatically improves development time when targeting .NET.

View File

@@ -1,6 +1,7 @@
[[Property:title|Major changes between ISE Eiffel 5.3 and ISE Eiffel 5.4]]
[[Property:link_title|5..4]]
[[Property:weight|-11]]
[[Property:uuid|2fa36c0f-5b6a-f3f8-67a6-6bd73f63732d]]
==What's new==
* Support for assertion checking on external routines.
* Removed limitation about implementing or redefining a non-external routine by an external one and vice versa.

View File

@@ -1,6 +1,7 @@
[[Property:title|Major changes between ISE Eiffel 5.4 and ISE Eiffel 5.5]]
[[Property:link_title|5.5]]
[[Property:weight|-12]]
[[Property:uuid|1d8b9ba7-0609-b664-a4cf-16be1132b071]]
==What's new==
* Full support for new <code>convert</code> keyword.
* Made <code>Void,</code> previously a feature of <eiffel>ANY</eiffel>, a keyword. This prevents the renaming of <eiffel>Void</eiffel> into <eiffel>not_void</eiffel> previously possible when it was a routine of <eiffel>ANY</eiffel>.

View File

@@ -1,6 +1,7 @@
[[Property:title|Major changes between ISE Eiffel 5.5 and ISE Eiffel 5.6]]
[[Property:link_title|5.6]]
[[Property:weight|-13]]
[[Property:uuid|c22fad22-3dce-cf2c-1d24-4e70fc29f3f3]]
==What's new==
{{seealso|See also: [[Differences between standard ECMA-367 and Eiffel Software implementation|Differences between standard ECMA-367 and Eiffel Software implementation]] }}

View File

@@ -1,6 +1,7 @@
[[Property:title|Major changes between ISE Eiffel 5.6 and ISE Eiffel 5.7]]
[[Property:link_title|5.7]]
[[Property:weight|-14]]
[[Property:uuid|fc50f98f-4dfd-0173-23d4-9db219dde0cf]]
==What's new==
{{seealso|See also: [[Differences between standard ECMA-367 and Eiffel Software implementation|Differences between standard ECMA-367 and Eiffel Software implementation]] }}

View File

@@ -1,6 +1,7 @@
[[Property:title|Major changes between ISE Eiffel 5.7 and ISE Eiffel 6.0]]
[[Property:link_title|6.0]]
[[Property:weight|-7]]
[[Property:uuid|83f6c19c-b0da-6acb-0333-a92d445cfe56]]
==What's new==
{{seealso|See also: [[Differences between standard ECMA-367 and Eiffel Software implementation|Differences between standard ECMA-367 and Eiffel Software implementation]] }}

View File

@@ -1,6 +1,7 @@
[[Property:title|Major changes between ISE Eiffel 6.0 and ISE Eiffel 6.1]]
[[Property:link_title|6.1]]
[[Property:weight|-8]]
[[Property:uuid|32beeca8-08df-4918-b231-8a14114fdd62]]
==What's new==
{{seealso|See also: [[Differences between standard ECMA-367 and Eiffel Software implementation|Differences between standard ECMA-367 and Eiffel Software implementation]] }}

View File

@@ -1,6 +1,7 @@
[[Property:title|Major changes between ISE Eiffel 6.1 and ISE Eiffel 6.2]]
[[Property:link_title|6.2]]
[[Property:weight|-9]]
[[Property:uuid|20122f4c-22c6-d0ee-c38b-36908ca86ad2]]
==What's new==
{{seealso|See also: [[Differences between standard ECMA-367 and Eiffel Software implementation|Differences between standard ECMA-367 and Eiffel Software implementation]] }}

View File

@@ -1,5 +1,6 @@
[[Property:title|Compiler History]]
[[Property:weight|-8]]
[[Property:uuid|359395e7-4933-bb74-4397-353c8b6955cd]]
* [[Major changes between ISE Eiffel 6.0 and ISE Eiffel 6.1|Major changes between ISE Eiffel 6.0 and ISE Eiffel 6.1]]
* [[Major changes between ISE Eiffel 5.7 and ISE Eiffel 6.0|Major changes between ISE Eiffel 5.7 and ISE Eiffel 6.0]]
* [[Major changes between ISE Eiffel 5.6 and ISE Eiffel 5.7|Major changes between ISE Eiffel 5.6 and ISE Eiffel 5.7]]

View File

@@ -1,6 +1,7 @@
[[Property:title|Differences between ETL 2nd printing and Eiffel Software implementation]]
[[Property:link_title|]]
[[Property:weight|-9]]
[[Property:uuid|fc1e73f4-5646-aa41-e7fe-97dc6f3ceb04]]
{{seealso|See also: [[Differences between standard ECMA-367 and Eiffel Software implementation|Differences between standard ECMA-367 and Eiffel Software implementation]] }}
==Added classes==

View File

@@ -1,5 +1,6 @@
[[Property:title|Differences between standard ECMA-367 and Eiffel Software implementation]]
[[Property:weight|-10]]
[[Property:uuid|0eb58761-5b06-585f-ea92-cab2b8cd74b2]]
==Kernel classes==
{|
|-

View File

@@ -1,5 +1,6 @@
[[Property:title|Definition file]]
[[Property:weight|2]]
[[Property:uuid|3a4b017c-ede1-7af1-2934-c7a28b303764]]
The syntax is pretty simple when you understand what you need to export a feature: you need the name of the '''feature''', the name of the concerned '''class''', and the name of a '''creation procedure'''. What is optional is to specify an '''alias''', an '''index''' and a '''calling convention'''. The index and calling convention are mainly used to create a DLL for windows, and the alias to export the feature under a different name.
===Syntax===

View File

@@ -1,5 +1,6 @@
[[Property:title|Dynamic library builder]]
[[Property:weight|1]]
[[Property:uuid|e64cdcf2-6da1-98d5-8356-28b50d01374b]]
In order to facilitate the creation of C dynamic libraries using EiffelStudio, a wizard helps generate the definition files used to define the contents of the shared library. If for some reason you need to override the wizard, the [[Definition file|syntactic rules]] of the definition files are available, but their knowledge is not necessary to use the generation of dynamic libraries in EiffelStudio.
The wizard is accessible in the '''Tools'''/ '''Dynamic library builder''' menu.

View File

@@ -1,5 +1,6 @@
[[Property:title|Dynamic library: Generated files]]
[[Property:weight|3]]
[[Property:uuid|f3926dd7-eb68-7a82-39f0-b4f5ea891436]]
Basically, once the Eiffel definition file is created, the compiler will generate a set of files and will compile them to generate the Dynamic library into the ''EIFGENs/target_name/W_code'' or ''EIFGENs/target_name/F_code'' directory.
{{note| '''Note''': To generate and compile these files, you have to indicate the definition file that should be used in the [[Advanced Options|advanced node of the project settings]] of your system. This way EiffelStudio will know which one to use. If you do not specify any definition file, nothing will be generated. }}

View File

@@ -1,5 +1,6 @@
[[Property:title|Dynamic library generation]]
[[Property:weight|-12]]
[[Property:uuid|201551d5-84af-f1ee-deed-b599d4f6e64a]]
* [[Dynamic library generation: Introduction|Introduction]]
* [[Dynamic library builder|Dynamic library builder]]
* [[Definition file|Definition file]]

View File

@@ -1,5 +1,6 @@
[[Property:title|Compiler]]
[[Property:weight|-9]]
[[Property:uuid|6ce8a6e1-5f44-8c47-fcf0-549d1ea0ffaf]]
* [[Compiler: introduction|Introduction]]
* [[Differences between ETL 2nd printing and Eiffel Software implementation|Differences between ETL 2nd printing and Eiffel Software implementation]]
* [[Command line|Command line compiler]]

View File

@@ -1,5 +1,6 @@
[[Property:title|Melting Ice Technology]]
[[Property:weight|-15]]
[[Property:uuid|17c5cf39-2bb3-67e4-11e3-2b6d021e5df1]]
EiffelStudio relies on Melting Ice Technology, the proprietary compilation mechanism of Eiffel Software, which offers three forms of compilation:
* ''melting'' for making a few changes. The fastest of the mechanisms, typically taking a few seconds after small changes. Melting time is proportional to the size of the changed parts and affected classes, while the time needed to freeze or finalize is partly proportional to the size of the whole system. As long as you do not include new external C/C++ code, a C/C++ compiler is not required. However, execution speed is not optimal. The generated executable is debuggable.
* ''freezing'' generates C code from the active system, and then compiles it into machine code; you must have a C/C++ compiler installed. You need to use this option if you add new agents or external C/C++ calls. Unless you add external code, you can re-freeze every couple of days. The rest of the time, you can melt your software to receive immediate feedback. The speed is still slower than when finalizing, but the generated executable is still debuggable.

View File

@@ -1,5 +1,6 @@
[[Property:title|Supported C compilers]]
[[Property:weight|-14]]
[[Property:uuid|4d4a70fa-b6da-cecb-83e0-dcc18d6ed54a]]
==Unix/Linux Users:==
EiffelStudio supports `gcc' on most platforms and the native`cc' compiler if it is an ANSI C compiler.