radare2/shlr/spp
Anton Kochkov d71823d4be Fix typo
2017-10-09 17:23:10 +08:00
..
p Update spp again for windows this time 2017-10-09 10:53:52 +02:00
BUGS Add spp to r2 utils build (#6334) 2016-12-18 09:46:10 +01:00
config.def.h Fix #8653 - Fix spp build for iOS and enhance ios-sdk.sh 2017-10-09 01:56:44 +02:00
LICENSE Add spp to r2 utils build (#6334) 2016-12-18 09:46:10 +01:00
main.c Fix #8653 - Fix spp build for iOS and enhance ios-sdk.sh 2017-10-09 01:56:44 +02:00
Makefile Update spp from git and fix integration with rasm2 2016-12-19 03:07:52 +01:00
r_api.c Update spp from git and fix integration with rasm2 2016-12-19 03:07:52 +01:00
r_api.h Fix AppVeyor build 2017-10-09 11:56:38 +08:00
README.md Add spp to r2 utils build (#6334) 2016-12-18 09:46:10 +01:00
spp.c Fix #8653 - Fix spp build for iOS and enhance ios-sdk.sh 2017-10-09 01:56:44 +02:00
spp.h Fix typo 2017-10-09 17:23:10 +08:00

spp

Author: pancake <pancakenopcodeorg> License: MIT

Description

SPP stands for Simple Pre-Processor.

The primary use of spp is as a templating language, with similarities to PHP and CPP. Allowing to embed scripts in any language in some specific places of the document.

Configuration

SPP binary can be configured by changing the values in the config.h file, this way you can specify which preprocessors you want to include in the parser.

# Edit the config.h file before typing 'make'

See config.def.h as an example

Build

$ make

Installation

$ make install PREFIX=/usr

Embedding

There are no embedding issues with the MIT license and the amount if code is pretty low (~400 LOC), and use the apis:

struct Proc p = {0};
spp_proc_set (&p, "sh", 99);
char *res = spp_eval(&p, "hello {{echo orld}}"
printf ("(%s)\n", res);