Skip to content

Latest commit

 

History

History
57 lines (39 loc) · 907 Bytes

README.md

File metadata and controls

57 lines (39 loc) · 907 Bytes

jsonexpr for C

This document describes using jsonexpr with C. For the language overview, see the main page.

Installation

$ make
$ sudo make PREFIX=/usr/local install

Example

#include <stdlib.h>
#include "je/je.h"

int main() {
    JE_VAL* result = NULL;
    JE_COMPILED* compiled = je_compile(
        "PRINT(\"I have \" + LEN(grades) + \" students\");"
        "PRINT(\"Alice's grade is \" + grades.alice);"
    );

    je_setSymbols(compiled,
        "{"
        "  \"grades\" : {"
        "    \"alice\" : \"A\","
        "    \"bob\"   : \"B\","
        "  }"
        "}"
    );

    result = je_evalc(compiled);

    JE_ValDelete(result);
    je_free(compiled);

    return 0;
}

Output:

I have 2 students
Alice's grade is A

License

Apache 2.0