mirror of
https://github.com/EiffelSoftware/eiffel-org.git
synced 2025-12-07 23:32:42 +01:00
Update wikipage Types. (Signed-off-by:alexk).
git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@1867 abb3cda0-5349-4a8f-a601-0c33ac3a8c38
This commit is contained in:
@@ -0,0 +1,15 @@
|
|||||||
|
[[Property:uuid|88764AFC-7DC5-4547-8B8C-4C0A489B0620]]
|
||||||
|
[[Property:weight|0]]
|
||||||
|
[[Property:title|Types]]
|
||||||
|
= Types =
|
||||||
|
|
||||||
|
== Common ancestor type ==
|
||||||
|
|
||||||
|
A *common ancestor type* is a type computed for a list of types using the following algorithm:
|
||||||
|
|
||||||
|
1. Temporary ignore whether any types are detachable or separate.
|
||||||
|
2. Add a type `NONE` to the list of types (this makes sure the list is never empty).
|
||||||
|
3. If there is a type in the list to which all other types conform, remember it as T.
|
||||||
|
4. Otherwise, use `ANY` for T.
|
||||||
|
5. If there is a detachable or separate type in the list, use the corresponding detachable and/or separate version of type T.
|
||||||
|
|
||||||
Reference in New Issue
Block a user