package solarsystem; public class @this.name@ @ //note: if the class inherits from a parent class, this relationship must be written, if existVariable(this.parent) { @extends @this.parent.name@ @ } @{ @ //note: declaration of all attributes, foreach i in this.listOfAttributes { @ private @getType<"JAVA">(i.type)@ _@getVariableName(i.name, i.type)@; @ } @ public @this.name@() {} // accessors: @ //note: accessors to each attribute, foreach i in this.listOfAttributes { local sVariableName = getVariableName(i.name, i.type); @ public @getType<"JAVA">(i.type)@ get@normalizeIdentifier(i.name)@() { return _@sVariableName@; } public void set@normalizeIdentifier(i.name)@(@getType<"JAVA">(i.type)@ @sVariableName@) { _@sVariableName@ = @sVariableName@; } @ } @ // methods: @ //note: declaration of all methods, foreach i in this.listOfMethods { @ public @ if existVariable(i.type) { @@getType<"JAVA">(i.type)@@ } else { @void@ } @ @i.name@(@ foreach j in i.listOfParameters { if !first(j) { @, @ } @@getParameterType<"JAVA">(j.type, j.mode)@ @getVariableName(j.name, j.type)@@ } @) { @ setProtectedArea(getMethodID(i)); @ } @ } @}