syntax defineFieldDefiner
{
case #{ defineFieldDefiner ?type:name ; }:
Fragment newName
= new IdentifierFragment
(type.getName() + “Field");
return #{
syntax ?newName {
case #{ ??newName ?:name = ?:expression ; }:
return #{
??type ?name = ?expression ; }
} };
}
=>
defineFieldDefiner int;
=>
syntax intField {
case #{ intField ?:name = ?:expression ; }:
return #{ int ?name = ?expression ; }
}