Skip to content
This repository has been archived by the owner on Nov 8, 2021. It is now read-only.

This project consists in designing a code generator. This code generator should be able to generate a C state machine from a plantuml file.

License

Brinfer/StateMachineCodeGenerator

Repository files navigation

StateMachineCodeGenerator

This project consists in designing a code generator. This code generator should be able to generate a C state machine from a plantuml file.

Test

It is possible to test the current state of the project, a test plantuml file is provided (it's a simple traffic light state machine). Run the this Xtend file, a header and a source file in C will be generated in fr.eseo.idm.state_machine_code_generator.language/src/fr/eseo/idm/state_machine_code_generator/language/gen/src/ folder.

TO-DO List

  • Create a model, see the model file
  • Generate resources and display them in HTML format, see the file to create the ressource and the file to display in HTML
  • Generate a C state machine the parser which is responsible for parsing the plantuml file and creating instances according to the model, and giving these instances to the generator which will create the source and header files in C.
    • Support different Action
    • Support differnet Event
    • Support differente State
    • Support <<choice>> states
    • Generate compilable and executable code
      • Generate source file
      • Generate header file
    • Ignore @startuml and @enduml
    • Ignore comment in the plantuml file
    • Support arguments in the action functions
    • Ability to create states without having to declare them at the beginning of the file

Authors

  • GAUTIER Pierre-Louis
  • JOUFFRIEAU Timothée

About

This project consists in designing a code generator. This code generator should be able to generate a C state machine from a plantuml file.

Topics

Resources

License

Stars

Watchers

Forks