Skip to content

Commit 6268abc

Browse files
committed
[ABI/doc] NFC: Fix typo Elemenent -> Element
1 parent f093925 commit 6268abc

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

docs/ABI/GenericSignature.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ C1.Element == C3.Element, C2.Element == C3.Element
146146

147147
All of these sets of constraints have the same effect (i.e., form the same equivalence class), but the second one happens to be the canonical form.
148148

149-
The canonical form is determined by first dividing all of the types in the same equivalence class into distinct components. Two types `T1` and `T2` are in the same component if the same type constraint `T1 == T2` can be proven true based on other known constraints in the generic signature (i.e., if `T1 == T2` would be redundant). For example, `C1.Element` and `C1.SubSequence.Elemenent` are in the same component, because `C1: Collection` and the `Collection` protocol contains the constraint `Element == SubSequence.Element`. However, `C1.Element` and `C2.Element` are in different components.
149+
The canonical form is determined by first dividing all of the types in the same equivalence class into distinct components. Two types `T1` and `T2` are in the same component if the same type constraint `T1 == T2` can be proven true based on other known constraints in the generic signature (i.e., if `T1 == T2` would be redundant). For example, `C1.Element` and `C1.SubSequence.Element` are in the same component, because `C1: Collection` and the `Collection` protocol contains the constraint `Element == SubSequence.Element`. However, `C1.Element` and `C2.Element` are in different components.
150150

151151
Each component has a *local anchor*, which is a type parameter that is the least type within that component, according to the [type parameter ordering](#type-parameter-ordering). The local anchors are then sorted (again, using [type parameter ordering](#type-parameter-ordering)); call the anchors `A1`, `A2`, ..., `An` where `Ai < Aj` for `i < j`. The canonical set of constraints depends on whether the equivalence class has been constrained to a concrete type:
152152

0 commit comments

Comments
 (0)