Development with Code Generation

From OpenPetra Wiki
Jump to navigation Jump to search

Tools

  • In csharp/ICT/PetraTools
  • uses CSParser to parse existing C# files
  • write code:
    • can comment generated code
    • can insert regions with name ManualCode (need endregion ManualCode as well)
  • TODO: write into Templates
  • Plugin writers for different output (Winforms, GTK, ASP.net)

YML

  • general definition: YML is shorter and easier to write and read than XML, but you can get the same structure than XML. This is achieved for example by not having opening and closing tags, but by using identation to define the hierarchy of elements.
  • specification: http://yaml.org/spec/1.2/
  • see a parser for YAML: http://yaml-net-parser.sourceforge.net/default.html
  • we have our own converter from yaml to xml: project Ict.Tools.CodeGeneration, Yml2Xml.cs, Ict.Tools.CodeGeneration.Yml2Xml
    • advantage: we can write short yaml code, but can use the comfort of the XML parser in .net to walk through the hierarchy
    • yml2xml maps the YAML into XML

XAML

  • TODO: XAML idea

Documentation YML for OpenPetra Forms

see also Documentation GUI generation with YAML and Documentation YAML for OpenPetra Forms for details