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
- Fixed exceptions when doozer/condition evaluator is not found.
- Context menus can now use sub menu builders
Context menu in text editor now shows items from the class member bookmarks.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@432 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Fixed bug when closing form designer while the property pad was active.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@399 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Add new GotoDialog (replaces GotoLineNumberDialog).
The GotoDialog accepts line numbers, class names and file names. (Examples: "120", "MainClass", "Main.cs, 120")
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@357 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
Fixed SD2-376: Debugger: Menu consistency.
Added caching to SearchClassReturnType (dramatically improves code completion performance in classes that have many base types like XmlView).
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@336 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Added "bookmark" for classes.
Added support for finding references to classes and renaming classes.
Renamed the Erbauer/Auswerter classes.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@260 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Made debugger addin lazy-loading.
Fixed bug in MarkerStrategy causing parts of removed markers still being rendered.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@243 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Fixed bug in CodeCompletionListView (when entering a name that did not exist in the list, the ListView didn't remove the current selection but selected the first entry).
Made MessageService.ShowError use the ExceptionBox in release builds.
Made ExceptionBox link to the mailing list instead of the bugs forum.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@227 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Included revision number in splash screen.
Made ReflectionClass load custom attributes.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@223 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
Added support for ImportProjectItems.
Reworked NRefactory to use List<AttributeSection> instead of ArrayList for attributes and List<ParameterDeclarationExpression> instead of ArrayList for parameter declarations.
Added Ctrl+'.' debug code completion.
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@220 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61