1. 26 7月, 2018 1 次提交
    • J
      Fix Rename when there is non-SupportsCompilation projects · 2751aa77
      Jason Malinowski 提交于
      If we are doing a rename from a C#/VB symbol, and an F# project depends
      on that project, we might end up walking into non-C#/VB projects and
      we will crash. This prevents the crash.
      
      There were two ways I could fix this bug: one would be to update
      GetDocumentsAffectedByRename to exclude them up front. The other option
      is to deal with those at the call sites when we fail to find a service.
      I'm electing to do the later as that allows light-up by the appropriate
      language services if they wanted to do that down the road.
      2751aa77
  2. 02 8月, 2017 1 次提交
  3. 13 7月, 2017 1 次提交
  4. 17 6月, 2017 1 次提交
  5. 13 11月, 2016 1 次提交
  6. 11 11月, 2016 1 次提交
  7. 29 9月, 2016 1 次提交
  8. 24 9月, 2016 1 次提交
  9. 09 9月, 2016 2 次提交
  10. 31 8月, 2016 1 次提交
  11. 21 7月, 2016 1 次提交
  12. 24 6月, 2016 1 次提交
  13. 07 6月, 2016 1 次提交
  14. 04 6月, 2016 1 次提交
  15. 30 11月, 2015 2 次提交
  16. 16 10月, 2015 1 次提交
  17. 12 10月, 2015 1 次提交
  18. 06 10月, 2015 1 次提交
  19. 10 9月, 2015 1 次提交
  20. 02 7月, 2015 1 次提交
    • J
      CodeFormatter Run · 95a76fb1
      Jared Parsons 提交于
      Fell out of our normal cadence for this during the push for RTM. Now that we
      had a bit more breathing room getting us back on track here.
      95a76fb1
  21. 12 3月, 2015 1 次提交
    • D
      Rename methods referenced in nameof expressions · 8dbeb655
      David Poeschl 提交于
      This change adds support for renaming methods that are referenced in nameof expressions during Inline Rename, Rename Tracking, and RenameSymbolAsync. For all of these features, there are three primary cases:
      
      - Rename invoked from a method declaration with no overloads: Any nameof expressions that reference the method are unambiguous and are therefore updated to the new name.
      - Rename invoked from a method declaration with overloads: In this case, any references in nameof expressions are renamed only if the RenameOverloads option is set to true (e.g. when the user checks the "Rename overloads" checkbox in Inline Rename).
      - Rename invoked from a reference in a nameof expression: We always rename all overloads by automatically setting the RenameOverloads option to true and disabling Inline Rename's "Rename overloads" checkbox.
      8dbeb655
  22. 07 3月, 2015 1 次提交
  23. 06 3月, 2015 1 次提交
    • D
      Rename of VB Property Backing Fields · 407a2fdf
      David Poeschl 提交于
      Fixes #905
      
      Add rename support for VB property backing fields. We now correctly
      exclude the leading '_' from the rename process and allow rename to be
      invoked from references to the backing field.
      407a2fdf
  24. 15 1月, 2015 1 次提交
  25. 14 1月, 2015 1 次提交
  26. 07 1月, 2015 1 次提交
    • D
      Inline Rename in Linked Files · 4fffe945
      dpoeschl 提交于
      Inline Rename performs a rename operation on an initial solution to produce a new solution with all references renamed, conflicts resolved, etc. This new solution may contain linked documents with un-merged (and potentially conflicting) contents. This change applies this linked file merging step to present properly merged changes and rename tags.
      
      If a file on disk D.cs is linked in two Projects P1 and P2, then there are two documents D1 and D2, with their contents being equal. When a symbol is renamed, we have a new solution with documents D1' and D2'. We calculate the text changes between D1 & D1' (C1), and D2 & D2' (C2), and merge these changes C1 and C2 into a final set of changes which produces the new merged Documents, D1m and D2m, with their contents being equal. Each document D1' and D2' knows its rename information, such as the location of definitions, references, and resolved/unresolved conflicts. This information is mapped to D1m/D2m for display in the editor by tracking spans from D1' to D1m, and D2' to D2m. The final locations of these tracking spans is their location in the merged buffer contents. (changeset 1389424)
      4fffe945
  27. 07 10月, 2014 1 次提交
    • J
      Make much of the Workspaces layer Portable. · e76a29a4
      jasonmalinowski 提交于
      This change splits the Workspaces layer into two parts, mirroring the Portable/Desktop split that the compilers did. The core parts of the Workspaces layer (managing documents and projects, formatting, some refactoring, code fixes) is kept in the portable subset, with a few non-portable pieces remaining, notably MSBuild support.
      
      This change has a major impact on how MEF now works in Roslyn. Traditional MEF (“MEFv1”) is not portable, and so we must move the Workspaces layer over to using the Microsoft.Composition NuGet package (“MEFv2”) which is. The APIs are distinct in that each has its own namespace, but the concepts are more or less identical. It requires some care though: the workspaces layer is simple in that it only references MEFv2, but higher layers have to reference both versions to use metadata attributes. Exports using metadata attributes from the editor (say, ContentTypeAttribute) must use MEFv1 attributes to export, whereas exports for the workspaces layer must use MEFv2 attributes. The rule is subtle and yet simple, and so a diagnostic is provided which catches any offenses to prevent confusion.
      
      This also has some impact in how we create MEF hosts: if you wish to host just the base workspaces layer, we can use MEFv2 to compose everything. The HostServices implementation (MefV1HostServices) that consumes a MEFv1 ExportProvider. If you’re in Visual Studio, you can use this implementation to get the full set of host services provided in Visual Studio.
      
      Otherwise, most of the changes in here are minor: we react to some APIs that have been moved/renamed in the portable subset we are targeting, and also align our various exception helper utilities with the compiler’s precedent. (changeset 1349276)
      e76a29a4
  28. 22 7月, 2014 1 次提交
  29. 10 4月, 2014 1 次提交
    • M
      This change makes public means to access workspace and language services. · 7b62af6b
      mattwar 提交于
      FeaturePacks have changed to become HostServices.
      IWorkspaceServiceProvider has become HostWorkspaceServices
      ILanguageServiceProvider has become HostLanguageServices
      
      HostWorkspaceServices can be accessed directly from Workspace.Services.
      HostLanguageServices can be accessed directly from Project.LanguageServices.
      
      Some of the existing workspace and language services have been made public. (changeset 1226729)
      7b62af6b
  30. 25 3月, 2014 1 次提交
  31. 21 3月, 2014 1 次提交
  32. 19 3月, 2014 1 次提交