Nix 2.17.0
Nix, the purely functional package manager; stable external interfaces
Loading...
Searching...
No Matches
nix_api_expr.h File Reference

Main entry for the libexpr C bindings. More...

#include "nix_api_store.h"
#include "nix_api_util.h"

Go to the source code of this file.

Typedefs

typedef struct State State
 
typedef void Value
 

Functions

nix_err nix_libexpr_init (nix_c_context *context)
 Initializes the Nix expression evaluator. More...
 
nix_err nix_expr_eval_from_string (nix_c_context *context, State *state, const char *expr, const char *path, Value *value)
 Parses and evaluates a Nix expression from a string. More...
 
nix_err nix_value_call (nix_c_context *context, State *state, Value *fn, Value *arg, Value *value)
 Calls a Nix function with an argument. More...
 
nix_err nix_value_force (nix_c_context *context, State *state, Value *value)
 Forces the evaluation of a Nix value. More...
 
nix_err nix_value_force_deep (nix_c_context *context, State *state, Value *value)
 Forces the deep evaluation of a Nix value. More...
 
Statenix_state_create (nix_c_context *context, const char **searchPath, Store *store)
 Creates a new Nix state. More...
 
void nix_state_free (State *state)
 Frees a Nix state. More...
 
nix_err nix_gc_incref (nix_c_context *context, const void *object)
 Increase the GC refcount. More...
 
nix_err nix_gc_decref (nix_c_context *context, const void *object)
 Decrease the GC refcount. More...
 
void nix_gc_now ()
 Trigger the garbage collector manually. More...
 
void nix_gc_register_finalizer (void *obj, void *cd, void(*finalizer)(void *obj, void *cd))
 Register a callback that gets called when the object is garbage collected. More...
 

Detailed Description

Main entry for the libexpr C bindings.