Daniel Grunwald
5670248de8
Add 'FullTypeName' struct, and use it to represent type names.
...
Contains some breaking API changes:
- Renamed 'FullNameAndTypeParameterCount' to 'TopLevelTypeName'.
- IAssembly.GetTypeDefinition(string, string, int) -> IAssembly.GetTypeDefinition(TopLevelTypeName)
- IAssembly.GetTypeDefinition(IUnresolvedTypeDefinition) -> IAssembly.GetTypeDefinition(FullTypeName)
- GetClassTypeReference now supports nested types
13 years ago
Daniel Grunwald
31474555b2
Avoid looking for inner classes when resolving a class constraint.
13 years ago
Mike Krüger
3dbba420eb
[Resolver] Fixed infinite loop issue when a type inherits from type
...
parameter.
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
a00495c22b
Test that demonstrates that a generic method cannot be invoked with a nullable type argument.
13 years ago
erikkallen
d857a8ba8d
Test demonstrating issue with duplicate using directive.
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
16aa0c6c28
Rename IParsedFile -> IUnresolvedFile to make clear it belongs to the unresolved type system.
13 years ago
Daniel Grunwald
9a9485a49d
Add ProjectReference class to NRefactory to simplify creating the type system for a solution with multiple projects.
13 years ago
Daniel Grunwald
62a8b20208
Fix icsharpcode/NRefactory#89 : explicit conversion of array to generic IList fails when array covariance is used.
13 years ago
Daniel Grunwald
087aee7fe8
Simplify parser API.
13 years ago
Daniel Grunwald
26409db2bb
Implemented explicit conversions - invalid casts now resolve to Conversion.None.
13 years ago
Daniel Grunwald
eaba9798d3
Rename 'cu' to 'syntaxTree'.
13 years ago
Daniel Grunwald
979fa91a2e
Fix icsharpcode/NRefactory#88 : implicit conversion between type parameters.
...
Convert from T to U where T : class, U. Only T is known to be a reference type; U is not.
C# still classifies the conversion as a reference conversion.
13 years ago
Daniel Grunwald
273178a141
Rename CompilationUnit to SyntaxTree.
13 years ago
Erik Källén
0af0137bdb
Use NamedArgumentResolveResult for dynamic invocations.
13 years ago
Daniel Grunwald
cc37a7179d
TypeSystemAstBuilder: do not specify accessibility on accessors unless necessary.
...
Ported some SD4 unit tests to NR5.
13 years ago
Daniel Grunwald
d6b4420940
Introduced NamedArgumentResolveResult.
13 years ago
Daniel Grunwald
60607bcc65
Fix icsharpcode/NRefactory#86 : method declaration with attributes fails to resolve since 2926e24
.
13 years ago
Erik Källén
ecd3de7ece
Implementation of feature
13 years ago
Erik Källén
ce5a42c4ee
Tests for the improved dynamic handling.
13 years ago
Daniel Grunwald
ea5e36c836
Fix icsharpcode/NRefactory#60 : Implicit type parameter conversion
13 years ago
Daniel Grunwald
93e2def893
Fix #75 : conversion between delegate types
13 years ago
Daniel Grunwald
ed0e4c5197
Fixed conversions from "dynamic" - these only exist from expressions, not from the type (this was causing subtle issues with type inference).
13 years ago
Daniel Grunwald
5592e889ab
Fixed bug when passing an extension method as a method group to a generic function.
13 years ago
Daniel Grunwald
cc35fcc606
Revert f01a4b2
and 58c4ec8
.
...
Fixed small issue in CSharpResolver.GetExtensionMethods: when type parameters are provided explicitly, use the specialized method for the eligibility check.
13 years ago
Mike Krüger
58c4ec8010
[Resolver] Fixed type inference use case.
...
Daniel: The fix may not be correct - it's hard to tell which side
effects that change will cause.
13 years ago
Simon Lindgren
4acb9b8ff6
[Resolver] Don't check the location of value parameters in accessors.
...
(Revert remaining parts of revision e60567ab86
)
13 years ago
Daniel Grunwald
e62a04692b
Fixed resolving compile-time operations on enum types with an underlying type smaller than int. (always use unchecked context for the cast back to enum)
13 years ago
Daniel Grunwald
459a2ef9f5
Fixed bug resolving indexer parameter declarations (was introduced with #66 [ 9476183
]).
13 years ago
Erik Källén
0bf9891a8e
ResolveResults for dynamic expressions
13 years ago
Daniel Grunwald
585ae50c2f
CSharpAstResolver: don't return the same ResolveResult for two different nodes.
...
(make clones when using caches)
Closes icsharpcode/NRefactory#46 .
13 years ago
Mike Krüger
fbc1cfd0c9
Fixed some failing unit tests.
13 years ago
Erik Källén
0fec8d3474
Failing test that demonstrates that explicit user-defined conversions don't work.
13 years ago
Erik Källén
1363faf788
Tests demonstrating issues with parameter identity in accessors.
13 years ago
erikkallen
74adaba0e5
Test demonstrating problem with nesting anonymous objects.
13 years ago
Simon Lindgren
e60567ab86
[Resolver] Give the value parameter a domregion close to the setter or adder.
...
Previously the value parameters were given the start and end location (0, 0) which was problematic for the
FindReferences class which uses this information to decide if two variables are the same when finding references.
13 years ago
Mike Krüger
293af2e2c9
[Resolver] Fixed resolve at location bug.
13 years ago
Daniel Grunwald
282d3c3423
Fix icsharpcode/NRefactory#32 : ResolveResult for anonymous type creation
13 years ago
Mike Krüger
1ade7c4996
[Resolver] Fixed using statement.
13 years ago
Daniel Grunwald
4fe7c72b16
Fixed context for determining accessibility of protected inner classes when resolving a base type reference (NameLookupTests.InheritFromProtectedInnerClassTest)
13 years ago
Mike Krüger
f7fb29804d
Implemented better solution for the array initializer workaround hack.
13 years ago
Mike Krüger
121c786499
Removed duplicate unit test.
13 years ago
Mike Krüger
f5b7f574b3
[UnitTest] Added failing unit test.
13 years ago
Mike Krüger
89be9aad27
[UnitTest] Enabled broken unit test.
13 years ago
Mike Krüger
7a69c6544b
Fixed Issue #38 : Parser Regression in ObjectCreate initialization
13 years ago
Mike Krüger
ef726be8c9
[UnitTests] Disabled broken tests.
13 years ago
Mike Krüger
0581a41bf2
Ignored failing unit test.
13 years ago
Mike Krüger
2eb61acc51
Added failing unit test.
...
I assume that the problem is that B has a inner lass B.Foo - sicne it
works when Foobar inherits just from 'Foo'.
13 years ago
Daniel Grunwald
4f47170535
Fixed type inference bug introduced in 2e40a34
- array covariance was ignored.
14 years ago