sirEdit/sirSpec/fields.skill

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;
}