独自のビルダーを構築するには、まず New -> jmbaseLanguage.builders.SimpleBuilders を呼び出す必要があります。次に、階層に参加する各オブジェクトタイプに対してビルダーを定義します。これらのビルダーは独自のプロパティと子を保持し、それらから要求されたデータ構造を構築します。先ほどの「家のビルド」の例に従うには、以下のサンプルを確認してください。
builders houseBuilders extends <no extendsBuilder> {
root builder house() extends <no extends> {
type: House
create: new House()
child address {
attach parent.locate(child);
}
child room {
attach parent.rooms.add(child);
}
property inhabitants : int {
set parent.moveIn(value);
}
property type : HouseType {
set parent.houseType = value;
}
}
builder address() extends <no extends> {
type: Address
create: new Address()
<<children>>
property street : string {
set parent.street = value;
}
property number : string {
set parent.number = value;
}
property city : string {
set parent.city = value;
}
property zipCode : string {
set parent.zipCode = value;
}
}
builder room() extends <no extends> {
type: Room
create: new Room()
<<children>>
property name : string {
set parent.name = value;
}
property size : int {
set parent.size = value;
}
}
builder room(string name, int size) extends <no extends> {
type: Room
create: new Room(name, size)
<<children>>
<<properties>>
}
}