Skip to content

Commit 0fb5445

Browse files
ricochetlukewagner
andauthored
docs(implements): combine implements with other cases
Co-authored-by: Luke Wagner <mail@lukewagner.name>
1 parent 0c29ac6 commit 0fb5445

File tree

1 file changed

+3
-6
lines changed

1 file changed

+3
-6
lines changed

design/mvp/Explainer.md

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2845,14 +2845,11 @@ Values]) are **strongly-unique**:
28452845
* Strip any `[...]` annotation prefix from both names.
28462846
* The names are strongly-unique if the resulting strings are unequal.
28472847

2848-
Thus, the following names are strongly-unique:
2849-
* `foo`, `foo-bar`, `[constructor]foo`, `[method]foo.bar`, `[method]foo.baz`
2850-
* `[implements=<a:b/c>]one`, `[implements=<a:b/c>]two` (different labels
2851-
after stripping annotation)
2852-
* `[implements=<a:b/c>]foo` and `a:b/c` (different name kinds)
2848+
Thus, the following set of names are strongly-unique and can thus all be imports (or exports) of the same component (or component type or instance type):
2849+
* `foo`, `foo-bar`, `[constructor]foo`, `[method]foo.bar`, `[method]foo.baz`, `foo:bar/baz`, `[implements=<foo:bar/baz>]bar`, `[implements=<foo:bar/baz>]quux`
28532850

28542851
but attempting to add *any* of the following names would be a validation error:
2855-
* `foo`, `foo-BAR`, `[constructor]foo-BAR`, `[method]foo.foo`, `[method]foo.BAR`
2852+
* `foo`, `foo-BAR`, `[constructor]foo-BAR`, `[method]foo.foo`, `[method]foo.BAR`, `[implements=<a:b/c>]foo`, `foo:bar/baz`, `bar`, `[implements=<x:y/z>]bar`
28562853

28572854
Note that additional validation rules involving types apply to names with
28582855
annotations. For example, the validation rules for `[constructor]foo` require

0 commit comments

Comments
 (0)