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

Rebuild API shape #52079

Merged
merged 5 commits into from Mar 24, 2021
Merged

Rebuild API shape #52079

merged 5 commits into from Mar 24, 2021

Conversation

jaredpar
Copy link
Member

This breaks up BuildConstructor into a simple hierarchy with both
CSharp and Visual Basic implementations. The name CompilationFactory
was chosen after a bit of offline conversation and mostly due to this
representing a factory of sorts. As with all other API names it will be
reviewed before making this API officially public / shipping.

Note: there is no intended functional change with this PR, it is purely
just refactoring the API shape around.

This breaks up `BuildConstructor` into a simple hierarchy with both
CSharp and Visual Basic implementations. The name `CompilationFactory`
was chosen after a bit of offline conversation and mostly due to this
representing a factory of sorts. As with all other API names it will be
reviewed before making this API officially public / shipping.

Note: there is no intended functional change with this PR, it is purely
just refactoring the API shape around.
@jaredpar jaredpar added Area-Compilers New Language Feature - Rebuild Compiler ability to verify provenance of code via rebuild operations labels Mar 23, 2021
@jaredpar jaredpar requested review from a team as code owners March 23, 2021 15:17
@jaredpar
Copy link
Member Author

@dotnet/roslyn-compiler, @RikkiGibson PTAL

@RikkiGibson RikkiGibson self-assigned this Mar 23, 2021
src/Compilers/Core/Rebuild/CSharpCompilationFactory.cs Outdated Show resolved Hide resolved
src/Compilers/Core/Rebuild/CompilationFactory.cs Outdated Show resolved Hide resolved
src/Compilers/Core/Rebuild/CompilationFactory.cs Outdated Show resolved Hide resolved
src/Compilers/Core/Rebuild/CSharpCompilationFactory.cs Outdated Show resolved Hide resolved
src/Compilers/Core/Rebuild/CSharpCompilationFactory.cs Outdated Show resolved Hide resolved
src/Tools/BuildValidator/Program.cs Outdated Show resolved Hide resolved
jaredpar and others added 2 commits March 23, 2021 16:58
Co-authored-by: Rikki Gibson <rikkigibson@gmail.com>
@jaredpar
Copy link
Member Author

Responded to PR feedback

public override ParseOptions ParseOptions => CSharpParseOptions;
public override CompilationOptions CompilationOptions => CSharpCompilationOptions;
public CSharpParseOptions CSharpParseOptions { get; }
public CSharpCompilationOptions CSharpCompilationOptions { get; }
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good!

@jaredpar
Copy link
Member Author

@roslyn-compiler can I get a second review on this?

@jaredpar jaredpar merged commit 7fea27a into dotnet:main Mar 24, 2021
@ghost ghost added this to the Next milestone Mar 24, 2021
@jaredpar jaredpar deleted the factory branch March 24, 2021 14:26
@333fred 333fred mentioned this pull request Mar 25, 2021
333fred added a commit to 333fred/roslyn that referenced this pull request Mar 25, 2021
* upstream/main: (75 commits)
  Split BoundInterpolatedString into BoundInterpolatedString and BoundUnconvertedInterpolatedString (dotnet#52061)
  Combine VB comparers into one, and combine VB and C# comparers together (dotnet#51834)
  Use OptimizedVSCompletionList in LSP scenarios.
  F5 Hot Reload (dotnet#52101)
  Fix typescript shim
  Add tests for lazy syntax trees coming from the GeneratorDriver
  React to code review feedback.
  Simplify the lazy-initalization pattern used in GetRoot
  Remove an unnecessary override. (dotnet#52140)
  Update issue number (dotnet#52130)
  Enable CodeActions support for XAML using its own provider and CodeActionCache. The handlers are actually shared with Roslyn as is. (dotnet#52129)
  Add RestrictedIVT to dotnet watch to Features (dotnet#52087)
  Don't try to highlight operators (dotnet#52041)
  Use `null` instead of empty signature helps in LSP
  Use member type for relational pattern even in error cases (dotnet#51950)
  Update src/VisualStudio/Xaml/Impl/Implementation/LanguageServer/Extensions/SymbolExtensions.cs
  Use new QuickInfoUtilities helper
  Rebuild API shape (dotnet#52079)
  Added position parameter name
  Updated XAML QuickInfo to show more info like C# by using ISymbolDisplayService and adding more documentation parts.
  ...
@allisonchou allisonchou removed this from the Next milestone Mar 29, 2021
@allisonchou allisonchou added this to the 16.10.P2 milestone Mar 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Compilers New Language Feature - Rebuild Compiler ability to verify provenance of code via rebuild operations
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants