Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #3739
Previously, constructors and methods are both represented by
MethodProvider
, which is quite inconvenience in some cases that we want to get theReturnType
out from a method, we will have to cast theSignature
toMethodSignature
.A new type
ConstructorProvider
is introduced in this PR to represent ctors only and now theSignature
type isMethodSignature
inMethodProvider
which only represents the normal methods.Considering that ctors and methods are similar, we may add a common base type to
MethodProvider
andConstructorProvider
, such asMethodBaseProvider
just like howMethodSignature
andConstructorSignature
do.But currently I did not see any use case that requires to add ctors and methods into the same list, therefore this PR does not add that, and we could always add that part later.