Author:halw

Date:2008-12-19T15:39:13.000000Z


git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@142 abb3cda0-5349-4a8f-a601-0c33ac3a8c38
This commit is contained in:
halw
2008-12-19 15:39:13 +00:00
parent aa6644170d
commit ccf388fd95
6 changed files with 46 additions and 24 deletions

View File

@@ -22,15 +22,15 @@ Eiffel for .NET supports:
The following syntax can be used to declare .NET custom attributes on Eiffel entities (features and classes):
<code>
empty: BOOLEAN is
indexing
description: "Is Current empty?"
attribute: create {OBSOLETE_ATTRIBUTE}.make_obsoleteattribute_1 ("Use `is_empty' instead") end
obsolete
"Use is_empty instead"
do
Result := is_empty
end
empty: BOOLEAN
indexing
description: "Is Current empty?"
attribute: create {OBSOLETE_ATTRIBUTE}.make_obsoleteattribute_1 ("Use `is_empty' instead") end
obsolete
"Use is_empty instead"
do
Result := is_empty
end
</code>
The previous example shows the declaration of the obsolete feature <code> empty </code> . The custom attribute defined by <code> OBSOLETE_ATTRIBUTE </code> is used to ensure that any consumer of the resulting assembly will see the feature as being obsolete. The custom attribute is defined in the indexing clause <code> attribute </code>. The definition consists of a creation expression that creates the custom attribute with the right parameters.
@@ -48,14 +48,14 @@ Another advantage of Eiffel for .NET's implementation of covariance is that it c
===Genericity===
The CLR does not support generics at all, so that the following Eiffel for .NET classes:
* <code> LIST [ANY] </code>
* <code> LIST [INTEGER] </code>
* <code>LIST [ANY]</code>
* <code>LIST [INTEGER]</code>
will actually be generated as:
* <code> LIST_ANY </code>
* <code> LIST_Int32 </code>
* <code>LIST_ANY</code>
* <code>LIST_Int32</code>
Meaning that if one wants to reuse an Eiffel generic class from another language than Eiffel for .NET, one has to use either <code> LIST_ANY </code> or <code> LIST_Int32 </code>.
Meaning that if one wants to reuse an Eiffel generic class from another language than Eiffel for .NET, one has to use either <code>LIST_ANY</code> or <code>LIST_Int32</code>.
===Enum types===

View File

@@ -3,7 +3,7 @@
[[Property:uuid|78c6b5c1-a87b-805d-38bd-fe64cb4e7c0d]]
==Eiffel issues==
* Check here first for the [[Eiffel for .NET Limitations|Difference between Eiffel and Eiffel for .NET]] .
* The root creation routine of the root class must not take any arguments. You can access the command line given to the application via the class <code> ARGUMENTS. </code>
* The root creation routine of the root class must not take any arguments. You can access the command line given to the application via the class <code>ARGUMENTS</code>.