Replaced most ToLower() and ToUpper() calls with ToLowerInvariant() and ToUpperInvariant(), or with string.Equals(, StringComparison.OrdinalIgnoreCase). This fixes file name comparisons in cultures with different ToLower/ToUpper rules.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@988 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
TypeResolutionService now searches for types using the code completion cache and loads the correct assembly when it is required by the designer.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@964 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Fixed SD2-523: Opening a new solution should close previously opened files
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@730 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Advantages:
- faster than reflection
- referenced libraries do not need to be looked up during code completion (only when generating the cache)
-> fixes SD2-444 ReflectionOnlyAssemblyResolve is not used when an assembly is only needed inside inner classes
--> Code completion for VB's My-namespace works again
- Assemblies do not need to be hold in RAM (they are now loaded in a separate AppDomain)
-> no more locking problems
-> less memory consumption
Disadvantages:
- higher memory-consumption because currently the file is loaded at once (previously the data was lazy-loaded using Reflection)
-> but there are some optimizations possible (reusing string and DefaultParameter instances) and lazy-loading could be reimplemented similar to what Fidalgo does with its CCDB.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@524 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
- do not load xml documentation keys into memory but load only the hash code and keep everything else cached on disk.
- made Dom's region a value-type.
- do not create a SortedList<string, IReturnType> for every using statement but only when the using statements actually uses aliases.
Overall SD should use ca. 10 MB RAM less when working on a big solution like SharpDevelop.sln.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@468 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
- code completion does not show members of base class when some interface of the class does not exist
- when referenced assemblies had inter-dependencies (Assembly A depends on B), code completion on properties in A that used a type in B would not work.
ReflectionParameter: Read "ref/out/params" modifier correctly.
ReflectionProjectContent: Use ReflectionLoad also for GAC assemblies specified by partial name.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@348 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
For example, when using a library compiled against .NET 1.0; but only .NET 2.0 is installed, redirect the ReflectionOnlyAssemblyResolve event to load the .NET 2.0 version of System.dll instead.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@344 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Made forms designer capable of loading classes that don't use fully qualified names for the fields.
Added solution that includes unit tests.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@330 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Files from command line arguments are opened instead of the start page.
Made GetWorkbench() in ParserUpdateThread thread-safe. (fixes NullReferenceException when closing files while the parser thread is running).
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@234 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Currently, only "go to base class" is available for overridden methods, which jumps to the method that was overridden.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@146 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
This removes the need to save the NRefactory-CompilationUnit in the Tag property of the AST-CompilationUnit.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@138 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Fixed bug regarding FileSystemWatcher to prevent crash when file was changed externally.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@136 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Also, GetCorLibProjectContent() is now called directly after startup (so the classes are loaded while the user chooses the project)
Fixed output path of some addins in release build.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@132 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Fixed solution loading to first create all project contents and then create the references to each other.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@130 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Fixed bug in InsightDataProviders.
Added unit test for CC lookup of a method with multiple overloads.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@83 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Currently it is used for code completion and method insight.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@72 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61