From ae91f13f9b0484d1843d0677c0554a9df6ac2f5a Mon Sep 17 00:00:00 2001 From: Vlastimil Dort Date: Wed, 4 Mar 2020 19:49:40 +0100 Subject: [PATCH] Update Syntax section of intersection type documentation --- docs/docs/reference/new-types/intersection-types-spec.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/docs/docs/reference/new-types/intersection-types-spec.md b/docs/docs/reference/new-types/intersection-types-spec.md index f3450f23f3fa..784e19a18e68 100644 --- a/docs/docs/reference/new-types/intersection-types-spec.md +++ b/docs/docs/reference/new-types/intersection-types-spec.md @@ -5,10 +5,11 @@ title: "Intersection Types - More Details" ## Syntax -Syntactically, an intersection type `S & T` is similar to an infix type, where -the infix operator is `&`. `&` is treated as a soft keyword. That is, it is a -normal identifier with the usual precedence. But a type of the form `A & B` is -always recognized as an intersection type, without trying to resolve `&`. +Syntactically, the type `S & T` is an infix type, where the infix operator is `&`. +The operator `&` is a normal identifier +with the usual precedence and subject to usual resolving rules. +Unless shadowed by another definition, it resolves to the type `scala.&`, +which acts as a type alias to an internal representation of intersection types. ``` Type ::= ...| InfixType