Warp++ offers C++ tools for creating web-based applications.
The software's unique design philosophy depends on two fundamental principles: variable replacement and repeater. The approach is geared towards avoiding html generation at the application level, making it possible to redo an entire web application's look and feel by exclusively modifying the html data source file.
Warp++ achieves dynamic html regeneration by using generic processing instructions. These processing instructions are used to delimit a data repeater and for variable replacement. The process starts with the HTMLTemplate program's execution, which loads the specified file(s) and parses the contents accordingly.
This distribution includes two classes, the base class (SAXParser) and its derived class (HTMLStream). The SAXParser's methods resemble those of the sax parser class in Xerces from the apache project. Upon the other hand, the HTMLStream class handles all the tag events from the SAXParser class with overridden techniques.
Importantly, SAXParser provides regeneration of dynamic html data based on an html file and a general data query. It does not tie into a DOM engine, unlike Xerces, and still not yet a real SAX engine. The reference app in the subdirectory showcases how a CGI library like Cgicc can be integrated with HTMLTemplate.
Overall, Warp++ is an excellent software development tool that combines elegance and simplicity. It provides a practical and efficient method for building scalable web applications in C++ and filling the gap left by other managed platforms.