wudsn-ide/com.wudsn.ide.asm/schema/compilers.exsd
2021-09-23 02:36:10 +02:00

198 lines
7.1 KiB
XML

<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="com.wudsn.ide.lng" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
<appinfo>
<meta.schema plugin="com.wudsn.ide.lng" id="compilers" name="Compilers"/>
</appinfo>
<documentation>
This extension point allows for adding new assemblers and compilers to the WUDSN IDE.
</documentation>
</annotation>
<element name="extension">
<annotation>
<appinfo>
<meta.element />
</appinfo>
</annotation>
<complexType>
<sequence minOccurs="1" maxOccurs="unbounded">
<element ref="compiler"/>
</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="compiler">
<complexType>
<choice>
<sequence>
<element ref="supportedCPU" minOccurs="1" maxOccurs="unbounded"/>
</sequence>
<sequence>
</sequence>
</choice>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
The technical id of the compiler. Must consist of lower case letters or digits.
</documentation>
</annotation>
</attribute>
<attribute name="name" type="string" use="required">
<annotation>
<documentation>
Translatable name of the compiler. Typically contains only upper case letters.
</documentation>
<appinfo>
<meta.attribute translatable="true"/>
</appinfo>
</annotation>
</attribute>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
The name of the compiler class.
</documentation>
<appinfo>
<meta.attribute kind="java" basedOn="com.wudsn.ide.lng.compiler.Compiler:"/>
</appinfo>
</annotation>
</attribute>
<attribute name="version" type="string" use="required">
<annotation>
<documentation>
Supported (minimum) version of the compiler. All compiler directives and major compiler features up to this version have been incorporated into this version of WUDSN IDE.
</documentation>
</annotation>
</attribute>
<attribute name="homePageURL" type="string">
<annotation>
<documentation>
The absolute URL pointing to the homepage of the compiler where the latest version can be downloaded.
</documentation>
</annotation>
</attribute>
<attribute name="helpFilePaths" type="string">
<annotation>
<documentation>
The relative paths to the help documents. Multiple paths are separated by comma. Each path is evluated based on the absolute path of the compiler executable in the preferences.
</documentation>
</annotation>
</attribute>
<attribute name="defaultParameters" type="string" use="required">
<annotation>
<documentation>
The default compiler parameters which are use if not other parameters are specified in the preferences.
</documentation>
</annotation>
</attribute>
<attribute name="defaultHardware" use="required">
<annotation>
<documentation>
The default hardware which is assumed, if no source annotation is found.
</documentation>
</annotation>
<simpleType>
<restriction base="string">
<enumeration value="APPLE2">
</enumeration>
<enumeration value="ATARI2600">
</enumeration>
<enumeration value="ATARI7800">
</enumeration>
<enumeration value="ATARI8BIT">
</enumeration>
<enumeration value="C64">
</enumeration>
<enumeration value="NES">
</enumeration>
<enumeration value="TEST">
</enumeration>
</restriction>
</simpleType>
</attribute>
</complexType>
</element>
<element name="supportedCPU">
<complexType>
<attribute name="cpu">
<annotation>
<documentation>
</documentation>
</annotation>
<simpleType>
<restriction base="string">
<enumeration value="MOS6502">
</enumeration>
<enumeration value="MOS6502_ILLEGAL">
</enumeration>
<enumeration value="MOS65C02">
</enumeration>
<enumeration value="MOS6502_DTV">
</enumeration>
<enumeration value="MOS65816">
</enumeration>
</restriction>
</simpleType>
</attribute>
</complexType>
</element>
<annotation>
<appinfo>
<meta.section type="since"/>
</appinfo>
<documentation>
WUDSN IDE 1.1.0
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="apiinfo"/>
</appinfo>
<documentation>
To implement this extension point, you have to create a sub-class of com.wudsn.ide.lng.compiler.Compiler, a sub-class of com.wudsn.ide.lng.compiler.parser.CompilerSourceParser and a sub-class of com.wudsn.ide.lng.compiler.CompilerLogParser. In the constructor of the compiler you have to set the source parser instance. In the &quot;createLogParser&quot; method of the compiler you have to create a new instance of the corresponding log parser.
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="copyright"/>
</appinfo>
<documentation>
(c) 2009 Peter Dell
</documentation>
</annotation>
</schema>