This commit adds new link disambiguators that mean that more
code links can be generated automatically in a sensible way.
The best example is the use of properties within class, interface and
enum documentation.
PR Close#24000
If a usage of `{@link ...}` does not provide a title then
compute it based on the `title` and/or `name` properties
or set the link to invalid.
Closes#16811
This fail behaviour is only turned on for `yarn docs`;
in `yarn docs-watch` you only receive a warning.
This is because you can get false errors when watching
since we don't parse all the docs in that case.