<!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>
Этот элемент определяет тип вывода.
org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate
<!ELEMENT renderingBindings (enablement*)>
<!ATTLIST renderingBindings
renderingIds CDATA #IMPLIED
primaryId CDATA #IMPLIED
class CDATA #IMPLIED
defaultIds CDATA #IMPLIED>
Связывает блоки памяти с доступными выводами.
class
уже указан. class
уже указан. Клиенты должны следить за тем, чтобы был указан только один основной тип вывода для каждого блока памяти. org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider
, это допускает динамические связи выводов. Если этот атрибут указан, renderingIds
, defaultIds
и primaryId
должны быть опущены. class
уже указан. <!ELEMENT enablement (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Шаблонный корневой элемент. Этот элемент может использоваться внутри точки расширения для определения ее выражения enablement. Для объединения подэлементов выражения enablement используется операция and.
<!ELEMENT not (not | and | or | instanceof | test | systemTest | equals | count | with | resolve | adapt | iterate)>
Этот элемент представляет операцию НЕ над результатом вычисления выражения его подэлемента.
<!ELEMENT and (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Этот элемент представляет операцию И над результатом вычисления выражений всех его подэлементов.
<!ELEMENT or (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Этот элемент представляет операцию ИЛИ над результатом вычисления выражений всех его подэлементов.
<!ELEMENT instanceof EMPTY>
<!ATTLIST instanceof
value CDATA #REQUIRED>
Этот элемент позволяет проверить допустимость преобразования типа выбранного объекта к указанному типу. Выражение возвращает EvaluationResult.TRUE, если тип объекта является производным типом типа, указанного в значении атрибута. В противном случае возвращается EvaluationResult.FALSE.
<!ELEMENT test EMPTY>
<!ATTLIST test
property CDATA #REQUIRED
args CDATA #IMPLIED
value CDATA #IMPLIED>
Этот элемент используется для проверки состояния свойства выбранного объекта. Набор тестируемых свойств можно расширить с помощью точки расширения средства тестирования свойств. Выражение test возвращает EvaluationResult.NOT_LOADED, если средство тестирования свойств, выполняющее фактическую проверку, еще не загружено.
<!ELEMENT systemTest EMPTY>
<!ATTLIST systemTest
property CDATA #REQUIRED
value CDATA #REQUIRED>
Тестирует системное свойство, вызывая для этого метод System.getProperty и сравнивая результат со значением, указанным в атрибуте value.
<!ELEMENT equals EMPTY>
<!ATTLIST equals
value CDATA #REQUIRED>
Этот элемент применяется для выполнения проверки equals объекта в фокусе. Выражение возвращает EvaluationResult.TRUE, если объект равен значению атрибута value. В противном случае возвращается EvaluationResult.FALSE.
<!ELEMENT count EMPTY>
<!ATTLIST count
value CDATA #REQUIRED>
Этот элемент применяется для проверки числа элементов в наборе.
<!ELEMENT with (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST with
variable CDATA #REQUIRED>
Этот элемент изменяет проверяемый объект для всех своих подэлементов, заменяя его объектом, на который указывает переменная в атрибуте variable. Если разрешить переменную невозможно, то при вычислении выражения возбуждается ситуация ExpressionException. Для объединения подэлементов выражения with используется операция and.
<!ELEMENT resolve (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST resolve
variable CDATA #REQUIRED
args CDATA #IMPLIED>
Этот элемент изменяет проверяемый объект для всех своих подэлементов, заменяя его объектом, на который указывает переменная в атрибуте variable. Если разрешить переменную невозможно, то при вычислении выражения возбуждается ситуация ExpressionException. Для объединения подэлементов выражения with используется операция and.
<!ELEMENT adapt (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST adapt
type CDATA #REQUIRED>
Данный элемент используется для адаптации выбранного объекта к типу, указанному в атрибуте type. Если адаптер или указанный тип еще не загружены, выражение возвращает NOT_LOADED. Если имя типа вообще не существует, то при вычислении выражения возбуждается ситуация ExpressionException. Для объединения подэлементов выражения adapt используется операция and.
<!ELEMENT iterate (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST iterate
operator (or|and) >
Этот элемент используется для выполнения итераций с переменной, относящейся к типу java.util.Collection. Если тип выбранного объекта - не java.util.Collection, то при вычислении этого выражения возбуждается ситуация ExpressionException.
В примере выше определяется новый тип вывода, "Пример вывода". Класс<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
.
Платформа отладки предоставляет следующие типы вывода:
Платформа отладки предоставляет панель Память для отображения выводов.
Copyright (c) 2004, 2005 IBM Corporation и другие.
Все права защищены.
Эта программа и сопутствующие материалы распространяются на условиях Eclipse Public License v1.0, поставляемой вместе с продуктом и доступной на Web-сайте
http://www.eclipse.org/legal/epl-v10.html