## tmpl-expr

tmpl-expr

## Functions

TmplExpr * | tmpl_expr_from_string ()
TmplExpr * | tmpl_expr_ref ()
void | tmpl_expr_unref ()
gboolean | tmpl_expr_eval ()
TmplExpr * | tmpl_expr_new_boolean ()
TmplExpr * | tmpl_expr_new_getattr ()
TmplExpr * | tmpl_expr_new_setattr ()
TmplExpr * | tmpl_expr_new_require ()
TmplExpr * | tmpl_expr_new_simple ()
TmplExpr * | tmpl_expr_new_string ()
TmplExpr * | tmpl_expr_new_number ()
TmplExpr * | tmpl_expr_new_gi_call ()
TmplExpr * | tmpl_expr_new_fn_call ()
TmplExpr * | tmpl_expr_new_user_fn_call ()
TmplExpr * | tmpl_expr_new_flow ()
TmplExpr * | tmpl_expr_new_symbol_ref ()
TmplExpr * | tmpl_expr_new_symbol_assign ()

## Description

## Functions

### tmpl_expr_from_string ()

    TmplExpr *
    tmpl_expr_from_string (const gchar *str,
                           GError **error);

### tmpl_expr_ref ()

    TmplExpr *
    tmpl_expr_ref (TmplExpr *expr);

### tmpl_expr_unref ()

    void
    tmpl_expr_unref (TmplExpr *expr);

### tmpl_expr_eval ()

    gboolean
    tmpl_expr_eval (TmplExpr *expr,
                    TmplScope *scope,
                    GValue *return_value,
                    GError **error);

### tmpl_expr_new_boolean ()

    TmplExpr *
    tmpl_expr_new_boolean (gboolean value);

### tmpl_expr_new_getattr ()

    TmplExpr *
    tmpl_expr_new_getattr (TmplExpr *left,
                           const gchar *attr);

### tmpl_expr_new_setattr ()

    TmplExpr *
    tmpl_expr_new_setattr (TmplExpr *left,
                           const gchar *attr,
                           TmplExpr *right);

### tmpl_expr_new_require ()

    TmplExpr *
    tmpl_expr_new_require (const gchar *typelib,
                           const gchar *version);

### tmpl_expr_new_simple ()

    TmplExpr *
    tmpl_expr_new_simple (TmplExprType type,
                          TmplExpr *left,
                          TmplExpr *right);

### tmpl_expr_new_string ()

    TmplExpr *
    tmpl_expr_new_string (const gchar *value,
                          gssize length);

### tmpl_expr_new_number ()

    TmplExpr *
    tmpl_expr_new_number (gdouble value);

### tmpl_expr_new_gi_call ()

    TmplExpr *
    tmpl_expr_new_gi_call (TmplExpr *left,
                           const gchar *name,
                           TmplExpr *params);

### tmpl_expr_new_fn_call ()

    TmplExpr *
    tmpl_expr_new_fn_call (TmplExprBuiltin builtin,
                           TmplExpr *param);

### tmpl_expr_new_user_fn_call ()

    TmplExpr *
    tmpl_expr_new_user_fn_call (const gchar *name,
                                TmplExpr *param);

### tmpl_expr_new_flow ()

    TmplExpr *
    tmpl_expr_new_flow (TmplExprType type,
                        TmplExpr *condition,
                        TmplExpr *primary,
                        TmplExpr *secondary);

### tmpl_expr_new_symbol_ref ()

    TmplExpr *
    tmpl_expr_new_symbol_ref (const gchar *symbol);

### tmpl_expr_new_symbol_assign ()

    TmplExpr *
    tmpl_expr_new_symbol_assign (const gchar *symbol,
                                 TmplExpr *right);

## Types and Values