Skip to content

Commit 1d639da

Browse files
Nigel-Ecmajskeet
andcommitted
Apply suggestions from code review
Co-authored-by: Jon Skeet <[email protected]>
1 parent f36f8ed commit 1d639da

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

standard/basic-concepts.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -887,7 +887,7 @@ A *type_name* is a *namespace_or_type_name* that refers to a type.
887887

888888
Following resolution as described below, the *namespace_or_type_name* of a *type_name* shall refer to a type, or otherwise a compile-time error occurs.
889889

890-
A *namespace_or_type_name* refers to a type or a namespace. Resolution to a particular namespace or type involves two steps based on dividing the grammar into an leading part, being one of the grammar fragments:
890+
A *namespace_or_type_name* refers to a type or a namespace. Resolution to a particular namespace or type involves two steps based on dividing the grammar into a leading part, being one of the grammar fragments:
891891

892892
- `identifier type_argument_list?`
893893
- `qualified_alias_member`
@@ -898,7 +898,7 @@ and a trailing part, being the grammar fragment:
898898

899899
First the leading part is resolved to determine `R₀`, the starting namespace or type.
900900

901-
If the leading part of the *namespace_or_type_name* is a *qualified_alias_member*, then `R₀` is the namespace or type identified by resolving that as described in *Qualified alias member* [§14.8.1](namespaces.md#1481-general).
901+
If the leading part of the *namespace_or_type_name* is a *qualified_alias_member*, then `R₀` is the namespace or type identified by resolving that as described in [§14.8.1](namespaces.md#1481-general).
902902

903903
Otherwise, the leading part, being the grammar fragment *identifier type_argument_list?*, will have one of the forms:
904904

@@ -912,7 +912,7 @@ where:
912912

913913
`R₀` is determined as follows:
914914

915-
- If `x` is zero and the *namespace_or_type_name* appears within a generic method declaration ([§15.6](classes.md#156-methods)) but outside the *attributes* of its *method-header,* and if that declaration includes a type parameter ([§15.2.3](classes.md#1523-type-parameters)) with name `I`, then `R₀` refers to that type parameter.
915+
- If `x` is zero and the *namespace_or_type_name* appears within a generic method declaration ([§15.6](classes.md#156-methods)) but outside the *attributes* of its *method-header*, and if that declaration includes a type parameter ([§15.2.3](classes.md#1523-type-parameters)) with name `I`, then `R₀` refers to that type parameter.
916916
- Otherwise, if the *namespace_or_type_name* appears within a type declaration, then for each instance type `T` ([§15.3.2](classes.md#1532-the-instance-type)), starting with the instance type of that type declaration and continuing with the instance type of each enclosing class or struct declaration (if any):
917917
- If `x` is zero and the declaration of `T` includes a type parameter with name `I`, then `R₀` refers to that type parameter.
918918
- Otherwise, if the *namespace_or_type_name* appears within the body of the type declaration, and `T` or any of its base types contain a nested accessible type having name `I` and `x` type parameters, then `R₀` refers to that type constructed with the given type arguments. If there is more than one such type, the type declared within the more derived type is selected.

0 commit comments

Comments
 (0)