C++ Debugger Visualizers: отображение типов в отладчике из Boost, wxWidgets, TinyXML и TinyXML2

в 13:22, , рубрики: boost, c++, Debugger Visualizers, Visual Studio, visual studio 2012, wxWidgets, метки: , , , ,

imageС незапамятных времен в Visual Studio существовала возможность написания визуализаторов для своих C++ типов, что позволяет изменить способ отображения типов в окнах отображающих содержимое переменных в отладчике (такие как auto, watch, locals и всплывающие подсказки для переменных). В Visual Studio 2012 появилась возможность в расширениях к Visual Studio распространять визуализаторы в новом формате natvis.

Были конвертированы старые визуализаторы для Boost'а и мои старые для TinyXML, а также добавил новые визуализаторы для Boost, wxWidgets и TinyXML2. Получилось в итоге расширение к Visual Studio 2012 — C++ Debugger Visualizers

Список поддерживаемых типов:

  • Boost library
    • boost::shared_ptr, boost::weak_ptr, boost::intrusive_ptr, boost::shared_array, boost::scoped_ptr, boost::scoped_array
    • boost::ptr_array, boost::ptr_vector, boost::ptr_list, boost::ptr_deque, boost::ptr_map, boost::ptr_set, boost::ptr_multimap, boost::ptr_multiset
    • boost::array, boost::dynamic_bitset, boost::circular_buffer
    • boost::unordered_map, boost::unordered_set, boost::unordered_multimap, boost::unordered_multiset
    • boost::container::basic_string, boost::container::deque, boost::container::vector
    • boost::optional, boost::any, boost::variant
    • boost::filesystem::path, boost::filesystem::directory_entry, boost::filesystem::file_status
    • boost::posix_time::ptime, boost::posix_time::time_duration
    • boost::regex
    • boost::interprocess::offset_ptr
    • boost::tribool
    • boost::unique_lock
    • boost::uuids::uuid
  • wxWidgets library: wxPoint, wxSize, wxRect, wxDateTime, wxLongLong, wxString, wxArrayString, wxDir, wxFileName
  • TinyXML library: TiXmlNode, TiXmlElement, TiXmlAttribute
  • TinyXML2 library: XMLNode, XMLElement, XMLAttribute
  • HRESULT for DirectX

Ссылки по теме:

Автор: KindDragon

Поделиться

* - обязательные к заполнению поля