You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Stefan Pranger d93d184d5d updated readme 3 months ago
..
LICENSE.txt adding cpptemplate library 8 years ago
README.rst update cpptemplate to slightly fixed version 8 years ago
cpptempl.cpp update cpptemplate to slightly fixed version 8 years ago
cpptempl.h Added virtual destructors in cpptempl 6 years ago
cpptempl_test.cpp adding cpptemplate library 8 years ago
unit_testing.h adding cpptemplate library 8 years ago

README.rst

cpptempl

=================
This is a template engine for C++.

Copyright
==================
Author: Ryan Ginstrom
MIT License

Syntax
=================

Variables::

{$variable_name}

Loops::

{% for person in people %}Name: {$person.name}{% endfor %}

If::

{% if person.name == "Bob" %}Full name: Robert{% endif %}


Usage
=======================

Define a template::

string text = "{% if item %}{$item}{% endif %}\n"
"{% if thing %}{$thing}{% endif %}" ;

Set up data::

cpptempl::data_map data ;
data["item"] = "aaa" ;
data["thing"] = "bbb" ;

Parse the template and data::

string result = cpptempl::parse(text, data) ;

Lists, nested maps
========================

Example::

cpptempl::data_map person_data ;
person_data["name"] = "Bob" ;
person_data["occupation"] = "Plumber" ;

cpptempl::data_map content ;
content["person"] = person_data ;
content["friends"].push_back("Alice") ;
content["friends"].push_back("Bob") ;