Ken Webb 2010-04-17T13:42:43Z
TreeJava is an EMFText extension to Java. It allows you to define tree structures inside Java code. The TreeJava code is parsed by EMFText, and transformed to a model. The model can then be written out as syntactically correct Java code. The EMFText TreeJava example is:
package treejava;
class PrintSimpleTree {
public static void main(String[] args) {
House myHouse = #House SweetHome > (
#Room
#Room Kitchen > (
#Door
#Door
)
#Room
#Room > (
#Door
)
#Room > (
#Door
#Door
)
);
}
}
The EMFText generated Java is:
package treejava;
class PrintSimpleTree {
public static void main (String [] args ) {
House myHouse = new House ( "SweetHome" ,
new Room ( ) ,
new Room ( "Kitchen" ,
new Door ( ) ,
new Door ( )
) ,
new Room ( ) ,
new Room (
new Door ( )
) ,
new Room (
new Door ( ) ,
new Door ( )
)
) ;
}
}
Xholon typically uses XML to define composite structure hierarchies. An equivalent Xholon XML tree is:
<?xml version="1.0" encoding="UTF-8"?>
<PrintSimpleTree>
<House roleName="SweetHome">
<Room/>
<Room roleName="Kitchen">
<Door/>
<Door/>
</Room>
<Room/>
<Room>
<Door/>
</Room>
<Room>
<Door/>
<Door/>
</Room>
</House>
</PrintSimpleTree>