![]() |
![]() |
![]() |
Rasqal RDF Query Library Manual | ![]() |
---|---|---|---|---|
rasqal_variable; rasqal_variable* rasqal_new_variable (rasqal_query *rq, unsigned char *name, rasqal_literal *value); rasqal_variable* rasqal_new_variable_typed (rasqal_query *rq, rasqal_variable_type type, unsigned char *name, rasqal_literal *value); void rasqal_free_variable (rasqal_variable *v); void rasqal_variable_print (rasqal_variable *v, FILE *fh); void rasqal_variable_set_value (rasqal_variable *v, rasqal_literal *l); enum rasqal_variable_type;
A class to hold a variable with optional name and a
rasqal_literal value. The name is not required for SPARQL
anonymous variables, when constructed with
rasqal_new_variable_typed()
and type RASQAL_VARIABLE_TYPE_ANONYMOUS.
typedef struct { const unsigned char *name; rasqal_literal* value; int offset; rasqal_variable_type type; } rasqal_variable;
Binding between a variable name and a value.
Includes internal field offset
for recording the offset into the
(internal) rasqal_query variables array.
const unsigned char *name ; |
Variable name. |
rasqal_literal *value ; |
Variable value or NULL if unbound. |
int offset ; |
Internal. |
rasqal_variable_type type ; |
Variable type. |
rasqal_variable* rasqal_new_variable (rasqal_query *rq, unsigned char *name, rasqal_literal *value);
Constructor - Create a new Rasqal normal variable.
The variable must be associated with a query, since variable names are only significant with a single query.
This creates a regular variable that can be returned of type RASQAL_VARIABLE_TYPE_NORMAL. Use rasqal_new_variable_typed to create other variables.
The name
and value
become owned by the rasqal_variable structure
rq : |
rasqal_query to associate the variable with |
name : |
variable name |
value : |
variable rasqal_literal value (or NULL) |
Returns : | a new rasqal_variable or NULL on failure. |
rasqal_variable* rasqal_new_variable_typed (rasqal_query *rq, rasqal_variable_type type, unsigned char *name, rasqal_literal *value);
Constructor - Create a new typed Rasqal variable.
The variable must be associated with a query, since variable names are only significant with a single query.
The name
and value
become owned by the rasqal_variable structure
rq : |
rasqal_query to associate the variable with |
type : |
variable type defined by enumeration rasqal_variable_type |
name : |
variable name |
value : |
variable rasqal_literal value (or NULL) |
Returns : | a new rasqal_variable or NULL on failure. |
void rasqal_free_variable (rasqal_variable *v);
Destructor - Destroy a Rasqal variable object.
v : |
rasqal_variable object |
void rasqal_variable_print (rasqal_variable *v, FILE *fh);
Print a Rasqal variable in a debug format.
The print debug format may change in any release.
v : |
the rasqal_variable object |
fh : |
the FILE* handle to print to |
void rasqal_variable_set_value (rasqal_variable *v, rasqal_literal *l);
Set the value of a Rasqal variable.
The variable value is an input parameter and is copied in, not shared. If the variable value is NULL, any existing value is deleted.
v : |
the rasqal_variable object |
l : |
the rasqal_literal value to set (or NULL) |