sysrepo  2.12.0
YANG-based system repository for all-around configuration management.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
values.h
Go to the documentation of this file.
1 
17 #ifndef SYSREPO_VALUES_H_
18 #define SYSREPO_VALUES_H_
19 
20 #include <stdio.h>
21 
22 #include "../sysrepo.h"
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
56 int sr_new_val(const char *xpath, sr_val_t **value);
57 
64 int sr_new_values(size_t value_cnt, sr_val_t **values);
65 
73 int sr_realloc_values(size_t old_value_cnt, size_t new_value_cnt, sr_val_t **values);
74 
81 int sr_val_set_xpath(sr_val_t *value, const char *xpath);
82 
90 int sr_val_build_xpath(sr_val_t *value, const char *format, ...);
91 
99 int sr_val_set_str_data(sr_val_t *value, sr_val_type_t type, const char *string_val);
100 
109 int sr_val_build_str_data(sr_val_t *value, sr_val_type_t type, const char *format, ...);
110 
118 int sr_dup_val(const sr_val_t *value, sr_val_t **value_dup);
119 
128 int sr_equal_val(const sr_val_t *value1, const sr_val_t *value2);
129 
138 int sr_dup_values(const sr_val_t *values, size_t count, sr_val_t **values_dup);
139 
145 int sr_print_val(const sr_val_t *value);
146 
153 int sr_print_val_fd(int fd, const sr_val_t *value);
154 
161 int sr_print_val_stream(FILE *stream, const sr_val_t *value);
162 
170 int sr_print_val_mem(char **mem_p, const sr_val_t *value);
171 
179 char *sr_val_to_str(const sr_val_t *value);
180 
192 int sr_val_to_buff(const sr_val_t *value, char buffer[], size_t size);
193 
207 int sr_tree_to_val(const struct lyd_node *data, const char *path, sr_val_t **value);
208 
222 int sr_tree_to_values(const struct lyd_node *data, const char *xpath, sr_val_t **values, size_t *value_cnt);
223 
226 #ifdef __cplusplus
227 }
228 #endif
229 
230 #endif /* SYSREPO_VALUES_H_ */
int sr_tree_to_values(const struct lyd_node *data, const char *xpath, sr_val_t **values, size_t *value_cnt)
Finds subtree from given struct lyd_node type data tree and converts it to sr_val_t.
char * sr_val_to_str(const sr_val_t *value)
Converts value to string representation.
int sr_print_val_stream(FILE *stream, const sr_val_t *value)
Print sysrepo value to the specified output file stream.
sr_val_type_t
Possible types of a data element stored in the sysrepo datastore.
int sr_dup_values(const sr_val_t *values, size_t count, sr_val_t **values_dup)
Duplicate values (with or without Sysrepo memory context) into a new array with memory context...
int sr_print_val_mem(char **mem_p, const sr_val_t *value)
Print sysrepo value into a newly allocated memory buffer. The caller is expected to eventually free t...
int sr_val_build_xpath(sr_val_t *value, const char *format,...)
Set/change xpath of a Sysrepo value to a new one, built from a format string and a variable arguments...
int sr_val_set_str_data(sr_val_t *value, sr_val_type_t type, const char *string_val)
Store data of string type into the Sysrepo value data.
int sr_val_build_str_data(sr_val_t *value, sr_val_type_t type, const char *format,...)
Store data of string type into the Sysrepo value data. The actual data will be built from the a forma...
int sr_print_val(const sr_val_t *value)
Print sysrepo value to STDOUT.
int sr_equal_val(const sr_val_t *value1, const sr_val_t *value2)
Check if two sr_val_t values are equal. They are considered unequal if their type, origin, xpath, default flag, or actual value differ.
int sr_realloc_values(size_t old_value_cnt, size_t new_value_cnt, sr_val_t **values)
Reallocate an array of sysrepo values.
int sr_tree_to_val(const struct lyd_node *data, const char *path, sr_val_t **value)
Finds single node from given struct lyd_node type data tree and converts it to sr_val_t.
int sr_dup_val(const sr_val_t *value, sr_val_t **value_dup)
Duplicate value (with or without Sysrepo memory context) into a new instance with memory context...
int sr_print_val_fd(int fd, const sr_val_t *value)
Print sysrepo value to the specified file descriptor.
int sr_val_to_buff(const sr_val_t *value, char buffer[], size_t size)
Converts value to string and prints it to the provided buffer including terminating NULL byte...
int sr_val_set_xpath(sr_val_t *value, const char *xpath)
Set/change xpath of a Sysrepo value.
int sr_new_val(const char *xpath, sr_val_t **value)
Allocate an instance of Sysrepo value.
int sr_new_values(size_t value_cnt, sr_val_t **values)
Allocate an array of sysrepo values.
Structure that contains value of an data element stored in the sysrepo datastore. ...