mirror of
https://github.com/EiffelSoftware/eiffel-org.git
synced 2026-08-14 17:41:15 +02:00
Updated trunk
git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@2484 abb3cda0-5349-4a8f-a601-0c33ac3a8c38
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
[[Property:modification_date|Mon, 13 Dec 2021 12:42:51 GMT]]
|
||||
[[Property:modification_date|Thu, 27 Jun 2024 10:45:27 GMT]]
|
||||
[[Property:publication_date|Thu, 03 Jan 2019 18:00:43 GMT]]
|
||||
[[Property:uuid|146E241E-C367-4F16-9CCE-6F11E5F7860A]]
|
||||
[[Property:weight|1]]
|
||||
@@ -145,11 +145,12 @@ f (a_arg: INTEGER): BOOLEAN
|
||||
|
||||
This will have exactly the same effect as using <e>-- <Precursor></e> when <e>f</e> is made effective/redefined from a single parent. However, when making effective/redefining from multiple parents, then comments will come from the parent class declaration in <e>BASE</e>.
|
||||
|
||||
Again, because precursor comments do not affect compilation, they are not checked at compile time. Specifying an incorrect class will yield a warning message in [[EiffelStudio]]'s code browsing tools, to the effect:
|
||||
Again, because precursor comments do not affect compilation, they are not checked at compile time. Specifying an incorrect class will yield a warning message in [/doc/eiffelstudio/EiffelStudio EiffelStudio]'s code browsing tools, to the effect:
|
||||
|
||||
<e>
|
||||
-- Unable to retrieve the comments from redefinition of {CLASS_NAME}.
|
||||
</e>
|
||||
|
||||
=== Library Documentation Generation ===
|
||||
Precursor comments are supported in all code browsing/documentation facilities, whether it be the integrated [[Contract Viewer]], the [[Feature Relation Tool]] or the Eiffel documentation generation facilities. Using <e>-- <Precursor></e> will ensure the comments are brought up from a parent declaration.
|
||||
Precursor comments are supported in all code browsing/documentation facilities, whether it be the integrated [/doc/eiffelstudio/Contract_Editor_tool Contract Viewer
|
||||
], the [https://www.eiffel.org/doc/eiffelstudio/Feature_views Feature Relation Tool] or the Eiffel documentation generation facilities. Using <e>-- <Precursor></e> will ensure the comments are brought up from a parent declaration.
|
||||
|
||||
+5
-1
@@ -1,8 +1,10 @@
|
||||
[[Property:modification_date|Fri, 08 Mar 2024 09:39:26 GMT]]
|
||||
[[Property:publication_date|Fri, 08 Mar 2024 09:36:54 GMT]]
|
||||
[[Property:title|Quick reference to the Eiffel programming language]]
|
||||
[[Property:link_title|Quick Reference]]
|
||||
[[Property:weight|4]]
|
||||
[[Property:uuid|4f61365d-59f6-a394-678b-144bad8ec12f]]
|
||||
The Quick Reference to the Eiffel programming language provides an informal guide to the syntax and reserved words of the language. The Eiffel programming language is described in detail in the '''ISO/ECMA''' standard document, available [http://www.ecma-international.org/publications/standards/Ecma-367.htm online].
|
||||
The Quick Reference to the Eiffel programming language provides an informal guide to the syntax and reserved words of the language. The Eiffel programming language is described in detail in the '''ISO/ECMA''' standard document, available [https://ecma-international.org/publications-and-standards/standards/ecma-367/ online].
|
||||
|
||||
Sometimes there are differences between the language as defined by the standard and that which is implemented by Eiffel Software. These differences are documented in the online documentation.
|
||||
|
||||
@@ -10,6 +12,8 @@ So, the final authority on Eiffel as implemented by Eiffel Software is the conte
|
||||
|
||||
This reference is based on the June 2006 ISO/ECMA standard document.
|
||||
|
||||
See also the community contributed guide at [https://eiffel-guide.com/]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
[[Property:modification_date|Fri, 15 Mar 2024 12:43:00 GMT]]
|
||||
[[Property:publication_date|Fri, 15 Mar 2024 12:42:08 GMT]]
|
||||
[[Property:title|Two-Minute fact sheet]]
|
||||
[[Property:weight|0]]
|
||||
[[Property:uuid|f672bfb8-ddea-beb1-eaa6-e374a6a6bc92]]
|
||||
@@ -14,7 +16,7 @@ Software produced with Eiffel is typically:
|
||||
|
||||
===Systems developed using Eiffel can be made portable across major industry platforms.===
|
||||
|
||||
*Windows NT/2000/XP/Vista including CLS compliance on Microsoft .NET
|
||||
*Windows 11, 10, Windows NT/2000/XP/Vista including CLS compliance on Microsoft .NET
|
||||
*Major Unix versions
|
||||
*Macintosh OS X
|
||||
*Linux
|
||||
@@ -50,7 +52,7 @@ Eiffel consists of:
|
||||
***Includes multiple and repeated inheritance
|
||||
***Safe and fully controllable
|
||||
**Genericity (generic classes), including constrained genericity
|
||||
**Platform independent concurrency ([[Concurrent programming with SCOOP|SCOOP]])
|
||||
**Platform independent concurrency ([[Concurrent programming with SCOOP|SCOOP]]) , except for .NET, where SCOOP is not yet supported
|
||||
*Widely recognized as simultaneously the simplest and most complete implementation of object-oriented concepts
|
||||
*Is clean, elegant, readable, easy to learn
|
||||
|
||||
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
[[Property:modification_date|Mon, 23 Jan 2023 09:14:48 GMT]]
|
||||
[[Property:modification_date|Tue, 13 Aug 2024 09:46:34 GMT]]
|
||||
[[Property:publication_date|Mon, 23 Jan 2023 09:14:48 GMT]]
|
||||
[[Property:title|ET: The Dynamic Structure: Execution Model]]
|
||||
[[Property:weight|-10]]
|
||||
@@ -298,7 +298,7 @@ This would be awkward. Infix and prefix notations solve the problem, reconciling
|
||||
end
|
||||
</code>
|
||||
|
||||
Such a feature has all the properties and prerogatives of both normal "identifier-dot" notation and infix notation. This allowing invoking <code>plus</code> using either notation: <code>i.plus (j)</code> or <code>i + j</code> . A feature such as <code>plus</code> allowing infix notation must be a function, and take exactly one argument.
|
||||
Such a feature has all the properties and prerogatives of both normal "identifier-dot" notation and infix notation. This allowes invoking <code>plus</code> using either notation: <code>i.plus (j)</code> or <code>i + j</code> . A feature such as <code>plus</code> allowing infix notation must be a function, and take exactly one argument.
|
||||
|
||||
Prefix notation is allowed as well. A function can be declared as <code>opposite alias "-" </code>, with no argument, permitting calls of the form <code>-3</code> rather than <code>(3).opposite</code> .
|
||||
|
||||
@@ -671,7 +671,7 @@ These attribute specializations are presented in the [[Void-safe programming in
|
||||
|
||||
Another special type of attribute supported by Eiffel Software's compiler is the '''transient attribute'''. When an instance of a class to which a transient attribute belongs is saved to persistent storage, the field for the transient attribute is not included. So, transient attributes are transient in the sense that they are part of the object at runtime, but not when the object is stored on disk.
|
||||
|
||||
This type of attribute has benefits when using the persistence mechanisms provided with EiffelStudio, like [http://eiffel.com/developers/learning_maps/Training/Maps/PersistenceCanPayOff/Serialization.html SED]. Because transient attributes are not stored, they need not be accounted for upon retrieval. So, objects stored before changes to a class that only affect transient attributes will still be retrievable using the new class definition (whereas, if non-transient attributes were changed, a mismatch would occur during retrieval).
|
||||
This type of attribute has benefits when using the persistence mechanisms provided with EiffelStudio, like [[Persistence, storage, and retrieval#With_the_SED_persistence_format|SED]]. Because transient attributes are not stored, they need not be accounted for upon retrieval. So, objects stored before changes to a class that only affect transient attributes will still be retrievable using the new class definition (whereas, if non-transient attributes were changed, a mismatch would occur during retrieval).
|
||||
|
||||
An attribute is marked as transient by including a note option in its declaration:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user