Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Custom attributes are not treated as a first-class concept #711

Closed
dsaf opened this issue Feb 20, 2015 · 4 comments
Closed

Custom attributes are not treated as a first-class concept #711

dsaf opened this issue Feb 20, 2015 · 4 comments

Comments

@dsaf
Copy link

dsaf commented Feb 20, 2015

Custom attributes are a very special (underappreciated) language construct. The fact that they are classes is merely an implementation detail.

They can be:

  • selectively applied to specific language elements;
  • allowed (or not) to be applied multiple times;
  • inherited;
  • overriden.
[System.AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = false, Inherited = true)]

Action items:

  1. create a separate kind of tooltip for attributes: "attribute ..."
  2. present fundamental attribute information in a nice way:
    • target(s);
    • multiplicity;
    • inheritability;
    • whether it overrides an inherited attribute.
  3. improve the e.g. "(class) ..." tooltip to show:
    • inherited attributes;
    • inherited but overridden attributes (ideally the difference, but it could be hard).
  4. always show the inherited custom attributes as a gray font overlay.

PS: is QuickInfo the Roslyn's term for this kind of tooltips?

@Pilchie Pilchie added this to the Unknown milestone Feb 20, 2015
@Pilchie Pilchie changed the title [Area-IDE][Enhancement] Custom attributes are not treated as a first-class concept Custom attributes are not treated as a first-class concept Feb 20, 2015
@dsaf
Copy link
Author

dsaf commented Mar 5, 2015

It seems that custom attributes are becoming a major feature of Type Script as well:

http://blogs.msdn.com/b/typescript/archive/2015/03/05/angular-2-0-built-on-typescript.aspx

Time to properly support them in IDE across all languages.

https://twitter.com/ahejlsberg/status/532579556155482112

@dsaf
Copy link
Author

dsaf commented Sep 1, 2015

An example of useful information not being shown:

image

None of targets, multiplicity, inheritability are shown:

image

@dsaf
Copy link
Author

dsaf commented Oct 13, 2015

@CyrusNajmabadi
Copy link
Member

Unlikely to do this given lack of customer feedback on this issue.

@CyrusNajmabadi CyrusNajmabadi closed this as not planned Won't fix, can't repro, duplicate, stale Oct 18, 2024
@dotnet dotnet locked as resolved and limited conversation to collaborators Oct 18, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants