privat/nit — pull request #760 by R4PaSs (2014-09-19 21:06:19+00:00)
Title: Model uml

Introducing a new tool `nituml` for the generation of UML diagrams from a Nit code base.

For now, it supports the generation of a class diagram from an endpoint based on the flattened class hierarchy and the generation of a package diagram from a module, showing all the introduced and refined classes using a colour scheme (will be changed as it is as ugly as it might be misleading for the end-user).

How to use :
`nituml --diagram class [-p] lib/standard/standard.nit` => generates a class diagram in dot format for the stdlib
`nituml --diagram package [-p] lib/standard/string.nit` => generates a package diagram for the string module, showing local intros and redefs of classes/methods

Example of diagram :
`nituml --diagram class lib/standard/kernel.nit`
![kernel](https://cloud.githubusercontent.com/assets/1444825/4342041/f600a4ea-403f-11e4-8720-3bd27d9802c7.png)
`nituml --diagram package lib/standard/queue.nit`
![str](https://cloud.githubusercontent.com/assets/1444825/4342100/bfb83398-4040-11e4-84e0-c83896748f87.png)

TODO :
* [ ] Generate associations between classes
* [ ] Eventually generate a diagram for a new Nit project as it could be used for model-first design approaches