[Uml-devel] mmgen update

Andrew Sutton ansutton at kent.edu
Sun Feb 23 13:38:07 UTC 2003


i just committed a bunch of changes to the metamodel generator. if you build 
and run it (if it builds) you can generate an implementation of UML and the 
MOF. i haven't finished fixing the CWM XMI specification yet. mmgen *will* 
crash on the CWM 1.0 XMI spec.

directions:
- build
- run mmgen
- open a file (mmgen/xmi/*.xmi)
- quit
- look in your current directory for a dir called Model1.4 or UML1.4 depending 
on which you opened

if you generate UML, notice that its about 90,000 lines of code. here's what's 
there:

- generation of directory structure (organized by packages)
- generation of package implementations (references to all contained extents)
- generation of all interfaces
- generation of class proxy extents (included with the interface definition, 
e.g. UML::Namespace and UML::NamespaceClass)
- generation of interface implementations (UML::NamespaceImpl)
- generation of the RefFeatured interface for each Impl class
- some other reflective functions
- some preliminary primitive type generation stuff - i'm not entirely sure how 
i want this to work yet - still figuring it out.

what's not done:
- lots of reflective interfaces
- no associations
- need to figure out good heuristics for dependencies (#includes)

aside from that, the implementation seems fairly correct - i haven't compiled 
any of the generated code yet so i don't know for certain. there's always 
design issues that will need to be tweaked - oh. and this is absolutely the 
ugliest code i've ever written. it truly is a hack job. oh well. its getting 
the job done.

enjoy

andy




More information about the umbrello-devel mailing list