| <?xml version='1.0' encoding='UTF-8'?> |
| <!-- Schema file written by PDE --> |
| <schema targetNamespace="org.eclipse.cdt.codan.ui" xmlns="http://www.w3.org/2001/XMLSchema"> |
| <annotation> |
| <appinfo> |
| <meta.schema plugin="org.eclipse.cdt.codan.ui" id="checkers" name="Code Analysis Checkers"/> |
| </appinfo> |
| <documentation> |
| Define chckers for Code Analysis framework. |
| </documentation> |
| </annotation> |
| |
| <element name="extension"> |
| <annotation> |
| <appinfo> |
| <meta.element /> |
| </appinfo> |
| </annotation> |
| <complexType> |
| <sequence minOccurs="1" maxOccurs="unbounded"> |
| <choice> |
| <element ref="checker"/> |
| <element ref="category"/> |
| </choice> |
| </sequence> |
| <attribute name="point" type="string" use="required"> |
| <annotation> |
| <documentation> |
| |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="id" type="string"> |
| <annotation> |
| <documentation> |
| |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="name" type="string"> |
| <annotation> |
| <documentation> |
| |
| </documentation> |
| <appinfo> |
| <meta.attribute translatable="true"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="checker"> |
| <annotation> |
| <documentation> |
| Checker Element. Sets id, name and class that implements checker |
| </documentation> |
| </annotation> |
| <complexType> |
| <sequence minOccurs="0" maxOccurs="unbounded"> |
| <choice> |
| <element ref="problem"/> |
| </choice> |
| </sequence> |
| <attribute name="id" type="string" use="required"> |
| <annotation> |
| <documentation> |
| Checker id. |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="class" type="string" use="required"> |
| <annotation> |
| <documentation> |
| Checker class. Must implement IChecker. |
| </documentation> |
| <appinfo> |
| <meta.attribute kind="java" basedOn=":org.eclipse.cdt.codan.core.model.IChecker"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| <attribute name="name" type="string"> |
| <annotation> |
| <documentation> |
| User Friendly name of the chcker or error. Would be display to enable/disable an error. |
| </documentation> |
| <appinfo> |
| <meta.attribute translatable="true"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="problem"> |
| <annotation> |
| <documentation> |
| Problem description (Error, Warning, Info produced by a checker) |
| </documentation> |
| </annotation> |
| <complexType> |
| <attribute name="id" type="string" use="required"> |
| <annotation> |
| <documentation> |
| Error id. Should be prefixed by plugin name in general. |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="name" type="string"> |
| <annotation> |
| <documentation> |
| User Friendly name of the error. Would be display to enable/disable an error. |
| </documentation> |
| <appinfo> |
| <meta.attribute translatable="true"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| <attribute name="defaultSeverity" use="default" value="Warning"> |
| <annotation> |
| <documentation> |
| |
| </documentation> |
| </annotation> |
| <simpleType> |
| <restriction base="string"> |
| <enumeration value="Error"> |
| </enumeration> |
| <enumeration value="Warning"> |
| </enumeration> |
| <enumeration value="Info"> |
| </enumeration> |
| </restriction> |
| </simpleType> |
| </attribute> |
| <attribute name="category" type="string"> |
| <annotation> |
| <documentation> |
| |
| </documentation> |
| <appinfo> |
| <meta.attribute kind="identifier" basedOn="org.eclipse.cdt.codan.core.checkers/category/@id"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="category"> |
| <complexType> |
| <attribute name="id" type="string" use="required"> |
| <annotation> |
| <documentation> |
| |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="name" type="string" use="required"> |
| <annotation> |
| <documentation> |
| |
| </documentation> |
| <appinfo> |
| <meta.attribute translatable="true"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| <attribute name="parentCategory" type="string"> |
| <annotation> |
| <documentation> |
| |
| </documentation> |
| <appinfo> |
| <meta.attribute kind="identifier" basedOn="org.eclipse.cdt.codan.core.checkers/category/@id"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="since"/> |
| </appinfo> |
| <documentation> |
| 1.0 |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="examples"/> |
| </appinfo> |
| <documentation> |
| The following is an example of a single checker definition: |
| <p> |
| <pre> |
| <extension |
| point="org.eclipse.cdt.codan.ui.checkers"> |
| <checker |
| class="org.aaa.AssignmentInConditionChecker" |
| id="org.aaa.AssignmentInConditionChecker" |
| name="Possible Assignment in Condition instead of comparision"> |
| </checker> |
| </extension> |
| </pre> |
| </p> |
| The following is an example of a checker that produces two types of errors: |
| <p> |
| <pre> |
| <extension |
| point="org.eclipse.cdt.codan.ui.checkers"> |
| |
| <checker |
| class="org.aaa.NullPointerDereferenceChecker" |
| id="org.aaa.NullPointerDereferenceChecker" |
| name="Null Pointer Dereference checker"> |
| <problem id="org.aaa.npe_must" name="Null Pointer Dereference"/ defaultSeverity="Error"> |
| <problem id="org.aaa.npe_may" name="Possible Null Pointer Dereference"/> |
| </checker> |
| </extension> |
| </pre> |
| </p> |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="apiinfo"/> |
| </appinfo> |
| <documentation> |
| [Enter API information here.] |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="implementation"/> |
| </appinfo> |
| <documentation> |
| [Enter information about supplied implementation of this extension point.] |
| </documentation> |
| </annotation> |
| |
| |
| </schema> |