Daniel Grunwald
bf42e08dd4
Add support for IReadOnlyList<T>.
14 years ago
Daniel Grunwald
b491ea85c3
Rename Conversions to CSharpConversions.
14 years ago
Daniel Grunwald
3df0cd3946
Make CSharpAstResolver and Conversions thread-safe.
14 years ago
Daniel Grunwald
24d2d195f9
Use specialized method for MethodGroupConversion. icsharpcode/NRefactory#21
14 years ago
Daniel Grunwald
d2f2feb994
Remove the thread-local cache; it seems to cause massive memory leaks.
14 years ago
Daniel Grunwald
e5217c2c13
Fixed bug in 'BetterConversion' implementation - converting to Func<> delegates is better than converting to Action<> delegates.
14 years ago
Daniel Grunwald
7971ad21f9
Check IType.Kind instead of using SpecialType.X.Equals().
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
9d7c018fb2
Adjusted C# resolver to refactored type system.
14 years ago
Daniel Grunwald
f9916d89ef
WIP: Type system refactoring.
14 years ago
Daniel Grunwald
f631199013
Type system refactoring: split unresolved/resolved type systems.
14 years ago
Daniel Grunwald
a73d7ba8db
Added async/await support to the resolver.
14 years ago
Daniel Grunwald
a1a80b63c9
Fix StackOverflowException when subtyping does not terminate due to expansive inheritance.
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
7f11fe3be0
Fixed bugs that caused some nodes not to be resolved in a "resolve all" run.
14 years ago
Daniel Grunwald
f807e6166f
TypeSystemAstBuilder: when a type reference cannot be resolved but is a C# type reference, output the original C# code that was used to created the type reference.
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
7a2c59ae4a
Add GetMemberOptions.
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
b52a348373
More work on lambda expressions.
14 years ago
Daniel Grunwald
43b5897b21
Add support for user-defined operators.
14 years ago
Daniel Grunwald
37626e1bc7
Expose conversions as part of the ResolveResult.
14 years ago
Daniel Grunwald
f86a014b9c
Put MIT license into the file headers.
14 years ago
Daniel Grunwald
8c8caf76f6
Implemented type inference for implicitly typed lambdas.
14 years ago
Daniel Grunwald
6792a0c76a
Report which kind of conversion was found.
14 years ago
Daniel Grunwald
d59fd2bc56
C# Resolver: preparations for lambda support
14 years ago
Daniel Grunwald
bb2f93a24b
NRefactory bug fixes:
...
- Use IType.Equals() instead of == operator
- Change handling of partially parameterized types in IType.GetNestedTypes so that we don't leak type parameters from the wrong context
- Add support for unbound types to C# resolver (e.g. in attribute arguments)
- C# Parser: preserve variance modifier
- Ensure all interface members are marked as 'abstract'
- Add support for [TypeForwardedTo] and [ComImport] to CecilLoader.
14 years ago
Daniel Grunwald
daf0f21607
Fixed some bugs related to conversions of type parameters.
14 years ago
Daniel Grunwald
5ae4d6070a
Conversions: add support for user-defined implicit conversions.
14 years ago
Mike Krüger
6a85f0c50c
Renamed GetClass-> GetTypeDefinition;
14 years ago
Daniel Grunwald
eaee5bf5ee
Use static instances on KnownTypeReference for the built-in C# types.
15 years ago
Daniel Grunwald
dc8d4cadcb
Use (Namespace,Name) pair instead of FullName.
15 years ago
Daniel Grunwald
24eb146c74
Add 'CommonTypeInference'.
15 years ago
Daniel Grunwald
80a859c0cc
Add support for pointer types (implicit pointer conversion; operators defined on pointers).
15 years ago
Daniel Grunwald
9efef610b1
Rename AggregateTypeResolveContext to CompositeTypeResolveContext.
...
Rename DotNetName to ReflectionName.
Added ReflectionName-parser to ReflectionHelper.
Move the ReaderWriterLock synchronization from TypeStorage to SimpleProjectContent.
Added some documentation to the README.
15 years ago
Daniel Grunwald
f832db0de6
Use TypeCode instead of Type where possible; added more BinaryOperatorTests; added support for equality operators.
15 years ago
Daniel Grunwald
b46cfa7e29
Added CastTests.
...
Constant folding: fixed implicit conversions and casts to use C# semantics
15 years ago
Daniel Grunwald
8792c243cb
Added unit tests for unary operators, and implemented overload resolution.
15 years ago
Daniel Grunwald
db8619113e
Add C# resolver.
15 years ago
Daniel Grunwald
f3a8325390
Add BetterConversion logic to C# Conversions.
15 years ago
Daniel Grunwald
5c57f8fd0d
Add support for integer literal conversions.
15 years ago
Daniel Grunwald
e19cf3785c
Added unit tests for C# implicit conversions and fixed a few bugs.
15 years ago
Daniel Grunwald
26cc23846c
Added implicit conversion logic.
15 years ago