sysrepo  1.4.168
YANG datastore
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
xpath.h File Reference

Sysrepo helpers for node's address manipulation. More...

#include <stdbool.h>
#include "../sysrepo.h"
Include dependency graph for xpath.h:

Go to the source code of this file.

Data Structures

struct  sr_xpath_ctx_s
 State of xpath parsing. User must not modify nor rely on the content of the structure. More...
 

Typedefs

typedef struct sr_xpath_ctx_s sr_xpath_ctx_t
 State of xpath parsing. User must not modify nor rely on the content of the structure. More...
 

Functions

char * sr_xpath_next_node (char *xpath, sr_xpath_ctx_t *state)
 The function returns a pointer to the following node. If xpath is not NULL returns the first node name, otherwise returns the subsequent node according to the state. More...
 
char * sr_xpath_last_node (char *xpath, sr_xpath_ctx_t *state)
 Returns pointer to the last node. More...
 
char * sr_xpath_next_node_with_ns (char *xpath, sr_xpath_ctx_t *state)
 Same as sr_xpath_next_node with the difference that namespace is included in result if present in xpath. More...
 
char * sr_xpath_next_key_name (char *xpath, sr_xpath_ctx_t *state)
 Returns the name of the next key at the current level in processed xpath. More...
 
char * sr_xpath_next_key_value (char *xpath, sr_xpath_ctx_t *state)
 Returns the value of the next key at the current level in processed xpath. More...
 
char * sr_xpath_node (char *xpath, const char *node_name, sr_xpath_ctx_t *state)
 Returns a pointer to the node specified by name. It searches from the beginning of the xpath, returns first match. Can be used to jump at the desired node xpath and subsequent analysis of key values. More...
 
char * sr_xpath_node_rel (char *xpath, const char *node_name, sr_xpath_ctx_t *state)
 Similar to sr_xpath_node. The difference is that search start at current node according to the state. More...
 
char * sr_xpath_node_idx (char *xpath, size_t index, sr_xpath_ctx_t *state)
 Returns node specified by index starting at the begin of expression. First node has index 0. More...
 
char * sr_xpath_node_idx_rel (char *xpath, size_t index, sr_xpath_ctx_t *state)
 Return node specified by index. Following node has index zero. More...
 
char * sr_xpath_node_key_value (char *xpath, const char *key, sr_xpath_ctx_t *state)
 Looks up the value for the key at the current level in xpath. More...
 
char * sr_xpath_node_key_value_idx (char *xpath, size_t index, sr_xpath_ctx_t *state)
 Looks up the value for the key at the current level in xpath specified by index. First key has index zero. More...
 
char * sr_xpath_key_value (char *xpath, const char *node_name, const char *key_name, sr_xpath_ctx_t *state)
 Looks up the value of the key in a node specified by name. More...
 
char * sr_xpath_key_value_idx (char *xpath, size_t node_index, size_t key_index, sr_xpath_ctx_t *state)
 Looks up the value of the key in a node specified by index. First node has index zero. More...
 
char * sr_xpath_node_name (const char *xpath)
 Returns pointer to the string after the last slash in xpath (node name). More...
 
bool sr_xpath_node_name_eq (const char *xpath, const char *node_str)
 Compares string after the last slash in xpath (node name) with provided string. More...
 
void sr_xpath_recover (sr_xpath_ctx_t *state)
 Recovers the xpath string to the original state (puts back the character that was replaced by termination zero). More...
 

Detailed Description

Sysrepo helpers for node's address manipulation.

Author
Michal Vasko mvask.nosp@m.o@ce.nosp@m.snet..nosp@m.cz

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Definition in file xpath.h.