diff options
| author | krasimir <krasimir@chalmers.se> | 2015-11-19 13:18:19 +0000 |
|---|---|---|
| committer | krasimir <krasimir@chalmers.se> | 2015-11-19 13:18:19 +0000 |
| commit | 9f9b23d0dddd3b61e4289cfbcf08241deddc65de (patch) | |
| tree | fea7f97a8c55e97ed30493cc464b14ff095ed751 /src/runtime/c/pgf/expr.c | |
| parent | fe7397efe4403f94797203e6bf00daa95d749618 (diff) | |
added mkInt and mkFloat in the Haskell binding to make it easy to create literal expressions
Diffstat (limited to 'src/runtime/c/pgf/expr.c')
| -rw-r--r-- | src/runtime/c/pgf/expr.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/runtime/c/pgf/expr.c b/src/runtime/c/pgf/expr.c index 3482e0b11..d579027aa 100644 --- a/src/runtime/c/pgf/expr.c +++ b/src/runtime/c/pgf/expr.c @@ -112,6 +112,36 @@ pgf_expr_string(GuString str, GuPool* pool) lit); } +PgfExpr +pgf_expr_int(int val, GuPool* pool) +{ + PgfLiteral lit; + PgfLiteralInt* plit = + gu_new_variant(PGF_LITERAL_INT, + PgfLiteralInt, + &lit, pool); + plit->val = val; + return gu_new_variant_i(pool, + PGF_EXPR_LIT, + PgfExprLit, + lit); +} + +PgfExpr +pgf_expr_float(double val, GuPool* pool) +{ + PgfLiteral lit; + PgfLiteralFlt* plit = + gu_new_variant(PGF_LITERAL_FLT, + PgfLiteralFlt, + &lit, pool); + plit->val = val; + return gu_new_variant_i(pool, + PGF_EXPR_LIT, + PgfExprLit, + lit); +} + typedef struct PgfExprParser PgfExprParser; typedef enum { |
