Daniel Grunwald
ee5d87a0f8
Add year to license headers.
13 years ago
Daniel Grunwald
4324311718
Use IMember.Specialize() instead of 'new SpecializedMember()', and remove unnecessary upcasts.
13 years ago
Mike Krüger
bcc014222b
ReducedMethod in CSharpInvocationResolveResult is now lazy.
13 years ago
Mike Krüger
a72b135df5
Changed C# invocation result that the reduced extension method has
...
it's own property.
13 years ago
Mike Krüger
8bd796eb7f
Revert "Revert "Implemented reduced method model.""
...
This reverts commit bdc1fde9d6
.
13 years ago
Mike Krüger
765d917d60
Revert "Revert "Implemented better way to handle extension method invocations.""
...
This reverts commit c26f61e813
.
13 years ago
Mike Krüger
c76240e934
Revert "Revert "[TypeSystem] Specialized method now contains a flag specifying the""
...
This reverts commit b758539431
.
13 years ago
Mike Krüger
b758539431
Revert "[TypeSystem] Specialized method now contains a flag specifying the"
...
This reverts commit bd1811cc18
.
Conflicts:
ICSharpCode.NRefactory.CSharp/Resolver/OverloadResolution.cs
13 years ago
Mike Krüger
c26f61e813
Revert "Implemented better way to handle extension method invocations."
...
This reverts commit d4afc75413
.
13 years ago
Mike Krüger
bdc1fde9d6
Revert "Implemented reduced method model."
...
This reverts commit aaf2b919f5
.
13 years ago
Mike Krüger
aaf2b919f5
Implemented reduced method model.
13 years ago
Mike Krüger
d4afc75413
Implemented better way to handle extension method invocations.
13 years ago
Mike Krüger
cb38702a55
Secured potential cast exception.
...
TODO: Work on a better representation of that case.
13 years ago
Mike Krüger
bd1811cc18
[TypeSystem] Specialized method now contains a flag specifying the
...
extension method mode.
There needs some distinction between extension methods calles foo.Ext
(); and Class.Ext(foo); even if it's the same method call - it's
different for code completion tooltips.
13 years ago
Daniel Grunwald
ba484d5a93
[OverloadResolution] Don't use specialized parameters of indexers or non-generic methods within generic methods for "more specific formal parameter" check; always use the original parameters like we do with generic methods.
13 years ago
Erik Källén
f186d27cc9
Return a CSharpInvocationResolveResult with the type overridden with Dynamic instead of a converted invocation
13 years ago
Daniel Grunwald
c1b2b13b5d
Ambiguous conversions don't cause overload resolution to pick a different overload.
13 years ago
Daniel Grunwald
27978f44c7
Add 'allowOptionalParameters' flag to MGRR.PerformOverloadResolution.
13 years ago
Daniel Grunwald
c403f389b7
Move the fix for #94 into CSharpConversions.IsConstraintConvertible.
...
Also added a couple of additional unit tests for constraint validation.
13 years ago
erikkallen
9c521f8992
Fixed issue with nullable types not being usable as generic arguments.
13 years ago
Daniel Grunwald
0b56b42bc8
Remove redundant call to ValidateMethodConstraints().
...
Fix demo application.
13 years ago
Daniel Grunwald
c3a31c9c81
Fix #92 : The resolver does not check type constraints on calls to generic methods
13 years ago
Daniel Grunwald
d6b4420940
Introduced NamedArgumentResolveResult.
13 years ago
Daniel Grunwald
731ddf7c39
Add ConversionResolveResult.CheckForOverflow
13 years ago
Daniel Grunwald
8d0abbe870
Fix icsharpcode/NRefactory#30 : Target of extension method invocation
14 years ago
Daniel Grunwald
777be39cca
Rewrite of the substitution logic in SpecializedMember.
...
Specializing an already-specialized member now produces the same result as performing the two specializations in a single step.
14 years ago
Daniel Grunwald
d338acc553
Fix icsharpcode/NRefactory#18 : ResolveResult for object creation
14 years ago
Daniel Grunwald
47d7d5adea
Fix icsharpcode/NRefactory#29 : NullReferenceException when using FindReferencedEntities navigator
14 years ago
Daniel Grunwald
b491ea85c3
Rename Conversions to CSharpConversions.
14 years ago
Daniel Grunwald
cfe807ab73
Fix "find references" for method group conversions in delegate creation expressions "new Action(MyMethod)"
14 years ago
Daniel Grunwald
9fea0d07fe
Implemented eligibility check for extension methods.
14 years ago
Daniel Grunwald
942b4f70ef
Move ConversionResoleResult to ICSharpCode.NRefactory.Semantics.
...
Boxing conversion for attribute arguments is now used consistently in C# type system and Cecil-loaded type system.
14 years ago
Daniel Grunwald
bfafe8b117
Fixed handling of constants in OverloadResolution.GetArgumentsWithConversions().
...
This fixes IAttribute.PositionalArguments when implicit numeric conversions are involved.
14 years ago
Daniel Grunwald
9af3c040f2
Fixed resolving compound assignment operators.
14 years ago
Daniel Grunwald
c4ce9344f0
Fixed bug when resolving base constructor calls.
14 years ago
Daniel Grunwald
9d7c018fb2
Adjusted C# resolver to refactored type system.
14 years ago
Daniel Grunwald
f631199013
Type system refactoring: split unresolved/resolved type systems.
14 years ago
Daniel Grunwald
69360a2c1c
Implemented constraint inheritance.
14 years ago
Daniel Grunwald
0c3d5e06d7
Fix bug in ParameterListComparer: the method signatures "Method<T>(T a)" and "Method<S>(S b)" were considered unequal.
14 years ago
Daniel Grunwald
b7a17c206e
Adjust unit tests to InvocationResolveResult changes.
14 years ago
Daniel Grunwald
b5b2408cbc
Move NRefactory.CSharp to separate assembly.
14 years ago
Daniel Grunwald
e37dc4b6c7
Move ResolveResults to NR.Semantics
14 years ago
Daniel Grunwald
47eb18363e
Reuse Conversions instance across multiple files by storing it in the CacheManager.
14 years ago
Daniel Grunwald
2be1569cc7
Add cache for implicit conversions for 25% performance boost.
...
Also did some improvements to interning.
14 years ago
Daniel Grunwald
ea3e312438
Implemented grouping overloads by declared type.
...
Return overrides in most-derived class (necessary for determining the correct parameter names/IsOptional value), but keep them in the group where the virtual/abstract base method was.
14 years ago
Daniel Grunwald
7a2c59ae4a
Add GetMemberOptions.
14 years ago
Daniel Grunwald
f79b0a77f3
Resolver: array create expressions
14 years ago
Daniel Grunwald
c9c204439f
Fix type inference and overload resolution when a class type parameter gets substituted by a method type parameter.
14 years ago
Daniel Grunwald
a1f613e274
ResolveVisitor: skip tokens and comments
...
Make the resolver's debug output more readable.
14 years ago
Daniel Grunwald
b52a348373
More work on lambda expressions.
14 years ago