Выводы памяти

org.eclipse.debug.ui.memoryRenderings

3.1 - замена точке расширения memoryRenderingTypes, которая была экспериментальной в версии 3.0

Позволяет модулям добавлять различные способы вывода блоков памяти. Например, блок памяти можно вывести в виде символов ASCII.

<!ELEMENT extension (renderingType* | renderingBindings*)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT renderingType EMPTY>

<!ATTLIST renderingType

name  CDATA #REQUIRED

id    CDATA #REQUIRED

class CDATA #REQUIRED>

Этот элемент определяет тип вывода.



<!ELEMENT renderingBindings (enablement*)>

<!ATTLIST renderingBindings

renderingIds CDATA #IMPLIED

primaryId    CDATA #IMPLIED

class        CDATA #IMPLIED

defaultIds   CDATA #IMPLIED>

Связывает блоки памяти с доступными выводами.



Ниже приведен пример точки определения нового типа вывода и связи.

<extension point=

"org.eclipse.debug.ui.memoryRenderings"

>

<renderingType name=

"Пример вывода"

id=

"com.example.sampleRendering"

class=

"com.example.SampleRenderingTypeDelegate"

>

</renderingType>

<renderingBindings renderingIds=

"com.example.sampleRendering"

>

<enablement>

<instanceof value=

"com.example.SampleMemoryBlock"

/>

</enablement>

</renderingBindings>

</extension>

В примере выше определяется новый тип вывода, "Пример вывода". Класс com.example.SampleRenderingTypeDelegate реализует org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate и будет использован для создания выводов этого типа. Вывод связывается с экземплярами com.exmaple.SampleMemoryBlock.

  • Значение атрибута class должно быть полным именем класса Java, реализующего интерфейс org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate.
  • Значение атрибута class в элементе renderingBindings должно быть полным именем класса Java, реализующего интерфейс org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider.
  • Платформа отладки предоставляет следующие типы вывода:

  • Шестнадцатиричное (идентификатор: org.eclipse.debug.ui.rendering.raw_memory)
  • Символьное ASCII (идентификатор: org.eclipse.debug.ui.rendering.ascii)
  • Целое со знаком (идентификатор: org.eclipse.debug.ui.rendering.signedint)
  • Целое без знака (идентификатор: org.eclipse.debug.ui.rendering.unsignedint)

  • Платформа отладки предоставляет панель Память для отображения выводов.