67 lines
948 B
Plaintext
67 lines
948 B
Plaintext
include "types.skill"
|
|
|
|
@abstract
|
|
FieldLike with Annotations {
|
|
|
|
/**
|
|
* the comment provided by the user or null
|
|
*/
|
|
Comment comment;
|
|
|
|
/**
|
|
* The type of the field.
|
|
*/
|
|
Type type;
|
|
|
|
/**
|
|
* the skill name
|
|
*/
|
|
Identifier name;
|
|
}
|
|
|
|
Field extends FieldLike {
|
|
|
|
/**
|
|
* true, iff the field is an auto field
|
|
*/
|
|
bool isAuto;
|
|
}
|
|
|
|
/**
|
|
* a language custom field
|
|
*/
|
|
CustomField extends FieldLike {
|
|
|
|
/**
|
|
* the name of the language that treats this fields
|
|
*/
|
|
string language;
|
|
|
|
CustomFieldOption[] options;
|
|
|
|
/**
|
|
* the type name that will be used to create a language specific field type
|
|
*/
|
|
string typename;
|
|
}
|
|
|
|
/**
|
|
* an option passed to a custom field
|
|
*/
|
|
CustomFieldOption {
|
|
string name;
|
|
string[] arguments;
|
|
}
|
|
|
|
/**
|
|
* a view onto a field
|
|
*
|
|
* @note some components such as annotations must not be set by views
|
|
*/
|
|
FieldView extends FieldLike {
|
|
|
|
/**
|
|
* the viewed component
|
|
*/
|
|
FieldLike target;
|
|
} |