Skip to content

Remove InternalImplementationOnlyAttribute and constrain the analyzer to directly to ISymbol #1510

Description

@gafter

When we specified InternalImplementationOnlyAttribute, it was to be implemented in its own nuget package and imported by the compilers for ISymbol and friends. We never implemented that. Instead the implementation we have is tied intimately to the compilers.

The constraints for ISymbol and friends can be implemented much more efficiently than the general mechanism currently implemented.

Since we do not appear to be doing the general mechanism, please remove InternalImplementationOnlyAttribute and implement the desired constraints directly for the type ISymbol and friends.

Activity

  1. added this to the 1.0 (stable) milestone on Mar 24, 2015
  2. changed the title [-]Remove InternalImplementationOnlyAttribute and implement the constraint directly[/-] [+]Remove InternalImplementationOnlyAttribute and constrain the analyzer to directly to ISymbol[/+] on Mar 24, 2015
  3. self-assigned this
    on Mar 26, 2015
  4. removed their assignment
    on Apr 14, 2015
  5. gafter commented on Apr 14, 2015

    @gafter
    MemberAuthor

    @srivatsn @JohnHamby @mavasani @jaredpar

    Removing my self-assignment, as I won't have time for this in the 1.0 timeframe.

    I suspect this is an opportunity for performance improvement in our analyzers.

  6. modified the milestones: , 1.0 (stable) on Apr 24, 2015
  7. srivatsn commented on Apr 24, 2015

    @srivatsn
    Contributor

    While this would be nice, it's not critical for 1.0. Moving to unknown.

  8. Youssef1313 commented on Nov 4, 2020

    @Youssef1313
    Member

    @mavasani As this issue related to RS1009, I think it should be moved to roslyn-analyzers repository.

  9. mavasani commented on Nov 4, 2020

    @mavasani
    Contributor

    I don't think we really want to make this change, there is no net user or code maintenance value add here, and potential perf gain mentioned is likely not significant. I am going to close this out.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions