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|Error wizard]]
[[Property:weight|2]]
[[Property:uuid|0c9686a0-2b9b-291f-4f01-930d9017810b]]
More often than wanted, Eiffel compilations are not successful. The good point is that when an error is detected by the compiler, it will not be a problem at run-time. The bad point is that you have to fix compilation errors before being able to launch and debug your system.
When an error occurs during an Eiffel compilation in EiffelStudio, the '''Output''' tab of the context tool displays a description of the error and its location, which looks more or less like this:

View File

@@ -1,5 +1,6 @@
[[Property:title|External commands editor dialog]]
[[Property:weight|4]]
[[Property:uuid|9f8de904-3d17-7ce2-1df8-f4824fab5ae3]]
From EiffelStudio, you can define up to 10 external commands. Those commands will have their output redirected in the output pane of the context tool. You can execute them through the Tools menu. A typical usage is to use those external commands to integrate with your source control management solution (e.g. CVS, Visual SourceSafe,...)
To define your own command, select "External commands..." in the Tools menu. Then the following dialog will appear:

View File

@@ -1,5 +1,6 @@
[[Property:title|Dialogs]]
[[Property:weight|1]]
[[Property:uuid|5d543cd3-8e54-e090-44d4-ee3b51009fe6]]
* [[New feature dialog|New feature dialog]]
* [[Error descriptor|Error descriptor]]
* [[External commands editor dialog|External commands editor]]

View File

@@ -1,5 +1,6 @@
[[Property:title|New feature dialog]]
[[Property:weight|0]]
[[Property:uuid|deb4901a-7b5a-f669-802e-de1efefcc1a0]]
* [[New feature dialog: Introduction|Introduction]]
* [[New feature dialog overview|Overview]]
* [[New procedure layout|Procedure layout]]

View File

@@ -1,5 +1,6 @@
[[Property:title|New attribute layout]]
[[Property:weight|4]]
[[Property:uuid|b13c9004-c8a0-6628-5c70-42c3e2617c10]]
<div> [[Image:feature-wizard-attribute]] </div>
When clicking '''Attribute''', the window changes to the attribute layout. It has the following components:
* [[Feature clauses|Feature clause selection]]

View File

@@ -1,5 +1,6 @@
[[Property:title|Argument list]]
[[Property:weight|2]]
[[Property:uuid|f2d63c29-6be2-b3d9-a735-b18e08c5a678]]
For functions and procedures, you can build a formal argument list. You can do this by clicking on the '''New argument''' button as many times as you need arguments.
{{note| '''Note''': Even though this dialog always shows parentheses, they are not generated if the list is empty (Eiffel's command-query separation (CQS) principle). }}

View File

@@ -1,5 +1,6 @@
[[Property:title|Feature body]]
[[Property:weight|6]]
[[Property:uuid|8f9f0b70-e884-73f1-e270-f1b51ef672c6]]
What goes into the feature body field is dependent on what kind of feature you wish to generate.
* '''do''': this is the normal procedure type. Enter in the field below '''do''' a body for your feature.
<code>

View File

@@ -1,5 +1,6 @@
[[Property:title|Feature clauses]]
[[Property:weight|0]]
[[Property:uuid|019ea318-e0e0-dae9-a818-e12232aa8431]]
The feature you create will be inserted in the feature clause you specified. If the feature clause was not already in your class, or not in the right place, EiffelStudio adds the feature clause to the class text based on the feature clause order specified in the [[Preferences Reference|preferences]] . By default, this is the order used by the Eiffel Software libraries, such as EiffelBase.
==Export status==
The export status is the class the feature is accessible for. Usually, this is <eiffel>ANY</eiffel> for public features, or <eiffel>NONE</eiffel> for implementation features, but you can specify any class here.

View File

@@ -1,5 +1,6 @@
[[Property:title|Header comment]]
[[Property:weight|3]]
[[Property:uuid|45ecda88-003d-fe59-5d4c-3a84d488b6a2]]
In the header comment field you can type a description of the feature. For style guidelines in writing a header comment, see: [http://www.eiffel.com/doc/oosc/ Object-Oriented Software Construction, Second Edition] , paragraph 26.4. The description should be informative, clear and terse.
For example, suppose you have an attribute <eiffel>count</eiffel>. You can enter the following header comment:

View File

@@ -1,5 +1,6 @@
[[Property:title|New feature dialog: feature properties modification]]
[[Property:weight|5]]
[[Property:uuid|60825ef4-7bc2-d472-8b09-25769689bb34]]
* [[Feature clauses|Feature clauses]]
* [[Name field|Name field]]
* [[Argument list|Argument list]]

View File

@@ -1,5 +1,6 @@
[[Property:title|Invariant field]]
[[Property:weight|9]]
[[Property:uuid|9f7ec967-0a45-4ad6-4393-521097467192]]
When creating an attribute, you can optionally enter or select an invariant for that feature. That invariant will be added to the end of the existing invariant clause. If the invariant clause did not exist before, it is now created.
<div> [[Image:feature-wizard-invariant]] </div>
If the attribute is of a reference type, you may select the invariant that the attribute may never be void. If it is of a basic expanded type, some other standard options may be chosen. For example, for <eiffel>INTEGER</eiffel> you may select that it should always be positive.

View File

@@ -1,5 +1,6 @@
[[Property:title|Local variable]]
[[Property:weight|5]]
[[Property:uuid|423aa67d-99f4-0f81-3709-161a6be43af9]]
Enter a local variable in the <code> local </code> field. A local variable clause will be added to the feature:
<code>
...

View File

@@ -1,5 +1,6 @@
[[Property:title|Name field]]
[[Property:weight|1]]
[[Property:uuid|850bd867-5cbf-34d0-f94c-97a75bfa244b]]
The feature name field is a text box that lets you enter a name for the feature. For help on how to choose the right name for a feature, see: [http://www.eiffel.com/doc/oosc/ Object-Oriented Software Construction, Second Edition] , paragraph 26.2.
{{warning| '''Warning''': EiffelStudio performs no validation on the name you choose. For example if you type a space in it, it will generate the code, and detect a syntax error only when compiling. }}

View File

@@ -1,5 +1,6 @@
[[Property:title|Postcondition]]
[[Property:weight|7]]
[[Property:uuid|b8196d6c-2a0f-c06e-855f-d9fe23cbe950]]
Enter a postcondition in the <code> ensure </code> field. A postcondition clause will be added to the feature:
<code>...
ensure

View File

@@ -1,5 +1,6 @@
[[Property:title|Precondition]]
[[Property:weight|4]]
[[Property:uuid|29b32f9e-799d-de91-d62d-79bdb509144b]]
Enter a precondition in the <code> require </code> field. A precondition clause will be added to the feature:
<code>
...

View File

@@ -1,5 +1,6 @@
[[Property:title|Set-procedure]]
[[Property:weight|10]]
[[Property:uuid|46b84038-099b-070c-15d7-2b7884a50e01]]
When creating an attribute, it is common that you will also need a set-procedure for it. For example, for attribute <eiffel>property</eiffel> you need a procedure <eiffel>set_property</eiffel> to set it. This feature takes one argument of the same type as <eiffel>property</eiffel> or is anchored to it. The only thing you have to do with the feature wizard is check the button '''Generate set procedure'''.
<div> [[Image:feature-wizard-setprocedure]] </div>
The feature that is generated in addition to the attribute itself is placed in feature clause <code> Element change </code> and is exported to all classes. If you have selected or entered an invariant, the precondition will protect this invariant. Example of a generated set-procedure:

View File

@@ -1,5 +1,6 @@
[[Property:title|Type selection]]
[[Property:weight|8]]
[[Property:uuid|b2bd8280-a738-dae4-73aa-c1e232245022]]
Whenever you need to give a type of something in the dialog, the type selection component is used. The type selection lets you type any class name or you can pick one from the list.
<div> [[Image:feature-wizard-typeselection]] </div>
When you select a class that is in the system and has formal generic parameters, the type selection component lets you specify an actual generic parameter in another type selection.

View File

@@ -1,5 +1,6 @@
[[Property:title|New feature dialog overview]]
[[Property:weight|1]]
[[Property:uuid|c0708842-e5e0-5d5c-5746-0507d1709a3e]]
There are two parts in the window. The upper part allows you to choose what type of feature you want to create, a procedure, a function or an attribute.
[[Image:feature-wizard]]
The rest of the window is used to set the characteristics of the new feature. Information you will be asked depends on the type you chose. For more information, click on one of the links below:

View File

@@ -1,5 +1,6 @@
[[Property:title|New function layout]]
[[Property:weight|3]]
[[Property:uuid|ae292b6e-7274-47a5-59f1-0f625493474f]]
<div> [[Image:feature-wizard-function]] </div>
When clicking '''Function''', the dialog changes to the function layout. It has the following components:
* [[Feature clauses|Feature clause selection]]

View File

@@ -1,5 +1,6 @@
[[Property:title|New procedure layout]]
[[Property:weight|2]]
[[Property:uuid|586fd664-1be4-f588-5350-c7c703145c11]]
<div> [[Image:feature-wizard-procedure]] </div>
When clicking '''Procedure''', the window changes to the procedure layout. It has the following components:
* [[Feature clauses|Feature clause selection]]

View File

@@ -1,5 +1,6 @@
[[Property:title|Wizards and dialogs]]
[[Property:weight|0]]
[[Property:uuid|b216d12e-20a4-5479-18d2-02e622db5322]]
* [[Profiler Wizard|Profiler Wizard]]
* [[Dialogs|Dialogs]]

View File

@@ -1,5 +1,6 @@
[[Property:title|Profiler Wizard]]
[[Property:weight|0]]
[[Property:uuid|f3509b1b-8ff1-c385-3bc1-4e800195f8a4]]
* [[Profiler wizard: Introduction|Introduction]]
* [[Profiler wizard guided tour|Profiler wizard guided tour]]
* [[Profiler How To's|Profiler How To's]]

View File

@@ -1,5 +1,6 @@
[[Property:title|How to set up a Profiler Configuration File]]
[[Property:weight|0]]
[[Property:uuid|0cf0f7bc-1932-fe42-e62d-b37e2e0c424e]]
Once executing an instrumented system has generated the proper file, you must have a profile converter process it in order to produce the Execution Profile. The need for the converter comes from the various formats that profilers use to record run-time information during an execution; a simple Profiler Configuration File enables you to describe the format used by any particular profiler.
The Profiler Configuration File is a file found in the directory $ISE_EIFFEL/studio/profiler where $ISE_EIFFEL is the location of the Eiffel installation. The name of the Profiler Configuration File in that directory is Eiffel for internal profiling and, for external profiling, the name of the profiler tool as specified in the profiler option. EiffelStudio comes with 3 preconfigured external profilers:

View File

@@ -1,5 +1,6 @@
[[Property:title|Profiler How To's]]
[[Property:weight|2]]
[[Property:uuid|f488bd8f-6d05-0487-a4c6-2e26a9a185ad]]
* [[How to set up a Profiler Configuration File|How to setup a Profiler Configuration File]]

View File

@@ -1,5 +1,6 @@
[[Property:title|Profiler wizard guided tour]]
[[Property:weight|1]]
[[Property:uuid|e6166282-aa91-e4a9-9951-819f32d50b88]]
# [[Select the Compilation mode|'''First step:''' Select which version of your system you ran using the profiler: Workbench or Finalized]] .
# [[Reuse or Generate an Execution Profile| '''Second step (only appears when an ''' ''Execution Profile'' '''has already been generated for this system)''': Select an existing ''Execution Profile'' or choose to generate a new ''Execution Profile'' from a ''Run-time information record''. ]]
# [[Select a Run-time information record to generate the Execution Profile| '''Third step (only appears when generating a new ''' ''Execution Profile''''')''': Generate a new ''Execution Profile'' from a ''Run-time information record''. ]]

View File

@@ -1,5 +1,6 @@
[[Property:title|Profile query window]]
[[Property:weight|4]]
[[Property:uuid|1158eeb3-ccf5-8f29-3551-4e511258fa80]]
The profile query window displays the results of the query you have formulated in the [[Select the information you need and formulate your query|Final state]] of the Profiler wizard. It also lets you change the sub queries of the current query.
To add a new sub query to the current query, fill in the text field labeled '''Define new sub query''' (type in ''calls <20'' for example) and click the '''And''' or '''Or''' button. To display the results of the new query click on the '''Update''' button.

View File

@@ -1,5 +1,6 @@
[[Property:title|Reuse or Generate an Execution Profile]]
[[Property:weight|1]]
[[Property:uuid|caa8ac1d-b17d-6b5b-1b16-7420a8d4404c]]
The second screen of the wizard lets you reuse a previously generated ''Execution Profile'' or generate a new ''Execution Profile'' from a ''Run-time information record''.
The profiler wizard has detected that one or more ''Execution Profiles'' have already been generated for this system in this compilation mode. If you have executed your system after the generation of the existing profile, select '''Generate a profile from Run-time information record''' to create a new ''Execution Profile'' for the newly produced ''Run-time information record''.

View File

@@ -1,5 +1,6 @@
[[Property:title|Select the Compilation mode]]
[[Property:weight|0]]
[[Property:uuid|b43f018b-b924-234b-727f-8d80c1d18fb4]]
The first screen of the wizard lets you specify the mode in which the profiled system was compiled.
If you have run a finalized system under the control of the profiler then select '''Finalized mode''' and click '''Next'''. On the contrary if you have executed the system in Workbench mode then select '''Workbench mode''' and click '''Next'''.

View File

@@ -1,5 +1,6 @@
[[Property:title|Select the information you need and formulate your query]]
[[Property:weight|3]]
[[Property:uuid|708f745d-11af-4d3d-e857-159dad4bdeec]]
The final screen of the wizard lets you select the information you want to be displayed in the profile query window.
==Select the information you need==

View File

@@ -1,5 +1,6 @@
[[Property:title|Select a Run-time information record to generate the Execution Profile]]
[[Property:weight|2]]
[[Property:uuid|c3f3e068-2313-ff14-2a33-8bf5297b9779]]
The third screen of the wizard lets you generate an ''Execution Profile'' from a ''Run-time information record''. You should provide the ''Run-time information record'' produced by the profiler in the text field labeled '''Run-time information record'''. If the file provided by default is not the desired one change it by clicking on the '''Browse''' button or by directly entering it in the text field.
Then, in the combo box labeled '''Profiler used to produce the above record''', select the profiler that has been used to produce the ''Run-time information record'' you have entered. If the profiler used to execute the system does not appear in the combo box, you have to add it. See [[How to set up a Profiler Configuration File|How to set up a Profiler Configuration File]] for more details on how to do so.