Andrey on .NET | Выпущен Microsoft "Roslyn" September 2012 CTP

Выпущен Microsoft "Roslyn" September 2012 CTP

Как и было обещано, стал доступен для загрузки Microsoft "Roslyn" September 2012 CTP. Из ключевых моментов этого выпуска можно отметить обеспечение работы в Microsoft Visual Studio 2012 RTM и отказ от поддержки Visual Studio 2010. Кроме того, была улучшена поддержка возможностей C# и VB.

Новые поддерживаемые возможности C#

  • Инициализаторы коллекций (collection initializers);
  • Инициализаторы объектов (object initializers);
  • Внешние псевдонимы (extern aliases);
  • Деревья выражений (expression trees);
  • Многомерные массивы (multi-dimensional arrays);
  • Типы Nullable<T> (nullable types);
  • Переадресация типов(type forwarders);
  • Небезопасный код, кроме буферов фиксированного размера (Unsafe code, except fixed-size buffers).

Изменения, по сравнению с June 2012 CTP

Ниже приведен список наиболее значимых изменений API, сделанных с времени выхода June 2012 CTP:

Compiler API

  • Удален SyntaxTree.ParseCompilationUnit. Вместо него используйте ParseText или ParseFile.
  • SyntaxNode.GetText() и SyntaxNode.GetFullText() заменены методами ToString() и ToFullString().
  • AssemblyNameReference, AssemblyFileReference и AssemblyObjectReference замещены семейством классов, унаследованных от абстрактного типа MetadataReference. Для создания его экземпляров вызовите фабричный метод MetadataReference.CreateAssemblyReference() или воспользуйтесь конструкторами наследников.
  • Убрано свойство CompilationOptions.Default. Для замены используйте конструкторы CompilationOptions.
  • Control Flow Analysis API изменен для отображения начала и конца регионов вместо начальной и конечной точек TextSpan. Коллекции JumpsIntoRegion и JumpsOutOfRegion заменены, соответственно, на EntryPoints и ExitPoints.

Services API

Для того, чтобы убрать зависимости от редактора Visual Studio, некоторые API были перенесены из слоя Editor Services в слой Services:

  • Classification;
  • Code Actions;
  • Completion;
  • Rename.

Editor Services API

  • Убраны API, которые были приведены выше и перенесены в слой Services.

Известные проблемы

  • Нет Interactive в Visual Basic

Окно Interactive доступно только в C#. Поддержка Visual Basic появится в следующих версиях.

  • Не поддерживаемые возможности языков

Анализатор Roslyn полностью поддерживает C# 4 и Visual Basic 10. Однако, на данный момент, не все возможности реализованы в текущей версии компилятора Roslyn. С списком ограничений можно ознакомиться в сообщении на форуме MSDN.

Загрузка Microsoft "Roslyn" September 2012 CTP

Скачать Microsoft "Roslyn" September 2012 CTP можно со страницы на сайте Microsoft. Кроме того, для Nuget доступен установочный пакет Roslyn.

Добавить комментарий