Mustache é um sistema de templates web com implementações disponíveis para diversas linguagens de programação, inclusive C++.
O bigode é descrito como um sistema sem lógica porque não possui nenhuma instrução de fluxo de controle, entretanto, tanto o loop quanto a avaliação condicional podem ser obtidos usando listas de processamento de tags de seção e funções anônimas (lambdas).
Esta biblioteca oferece suporte a todos os recursos atuais do Moustache:
Função de escape personalizada para uso fora do HTML
A facilidade já começa na instalação, basta:
git clone https://github.com/kainjow/Mustache
sudo install -v Mustache/mustache.hpp /usr/local/include/
rm -rf Mustache/
Crie um arquivo: main.cpp
:
#include <iostream>
#include <mustache.hpp>
int main(){
kainjow::mustache::mustache tmpl("Hello !");
std::cout << tmpl.render({"what", "World"}) << '\n';
}
Alternativamente você pode usar:
using namespace kainjow::mustache;
=}
Compile:
g++ main.cpp
Rode:
./a.out
Provável saída:
Hello World!
Caso queira efetuar testes antes:
git clone https://github.com/kainjow/Mustache
cd Mustache
sed -i "s/VERSION.*/VERSION $(cmake --version | grep -o [0-9].*))/g" CMakeLists.txt
cmake -B build .
cd build && make
./tests/mustache-unit-tests
Para mais informações acesse: https://github.com/kainjow/Mustache.
Alternativas a esse Mustache: