Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- @nsURI MM=http://www.eclipse.org/uml2/5.0.0/UML
- query ModelToFile =
- self.contenu().writeTo('C:/Users/Benlahbib/Bilan.txt')
- ;
- helper
- def : contenu() : String =
- self.entete()
- +self.body()
- ;
- helper
- def : entete() : String =
- 'le nombre de package est : ' + MM!Package.allInstances()->size() + '\n\n'
- ;
- helper def : body() : String = '\n\n' +
- MM!Package.allInstances()->iterate(elem; acc: String = '' |
- acc + 'le nom du package est : ' + elem.name + '\n' + elem.class(elem.name) + '\n\n') + '\n'
- ;
- helper context MM!Package def : class(packagenom : String) : String =
- MM!Class.allInstances()->iterate(elem; acc : String = '' |
- acc + if elem.package.name = packagenom then
- 'le nom de la classe est : ' + elem.name + '\n' + elem.attribut() + '\n' + elem.methode() + '\n'
- else
- ''
- endif)
- ;
- helper context MM!Class def : attribut() : String =
- self.ownedAttribute->iterate(elem; acc : String = 'les attributs : ' |
- acc + '(' + elem.name + ' : ' + elem.genereType() + '),'
- ) + '\n'
- ;
- helper context MM!Class def : methode(): String =
- self.ownedOperation->iterate(elem; acc : String = 'les methodes : ' |
- acc + '(' + elem.name + ' : ' + elem.genereTypeOper() + '),'
- ) + '\n'
- ;
- helper
- context MM!Property def : genereType() : String =
- if self.type.oclIsUndefined() then
- 'Object '
- else if self.type.name = 'Real' then
- 'Double '
- else
- self.type.name + ' '
- endif
- endif
- ;
- helper
- context MM!Operation def : genereTypeOper() : String =
- if self.type.oclIsUndefined() then
- 'Object '
- else if self.type.name = 'Real' then
- 'Double '
- else
- self.type.name + ' '
- endif
- endif
- ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement