Loading...
Searching...
No Matches
xpath1.0.c File Reference

ietf-yang-types xpath1.0 type plugin. More...

`#include "plugins_types.h"`
`#include <assert.h>`
`#include <stdint.h>`
`#include <stdlib.h>`
`#include <string.h>`
`#include "libyang.h"`
`#include "compat.h"`
`#include "ly_common.h"`
`#include "xml.h"`
`#include "xpath.h"`
Include dependency graph for xpath1.0.c:

Go to the source code of this file.

## Macros

#define | _GNU_SOURCE

## Functions

LIBYANG_API_DEF LY_ERR | lyplg_type_dup_xpath10 (const struct ly_ctx *ctx, const struct lyd_value *original, struct lyd_value *dup)
| Implementation of lyplg_type_dup_clb for the ietf-yang-types xpath1.0 type.
LIBYANG_API_DEF void | lyplg_type_free_xpath10 (const struct ly_ctx *ctx, struct lyd_value *value)
| Implementation of lyplg_type_free_clb for the ietf-yang-types xpath1.0 type.
LIBYANG_API_DEF const void * | lyplg_type_print_xpath10 (const struct ly_ctx *ctx, const struct lyd_value *value, LY_VALUE_FORMAT format, void *prefix_data, ly_bool *dynamic, size_t *value_len)
| Implementation of lyplg_type_print_clb for the ietf-yang-types xpath1.0 type.
LIBYANG_API_DEF LY_ERR | lyplg_type_print_xpath10_value (const struct lyd_value_xpath10 *xp_val, LY_VALUE_FORMAT format, void *prefix_data, char **str_value, struct ly_err_item **err)
| Print xpath1.0 value in the specific format.
LIBYANG_API_DEF LY_ERR | lyplg_type_store_xpath10 (const struct ly_ctx *ctx, const struct lysc_type *type, const void *value, size_t value_len, uint32_t options, LY_VALUE_FORMAT format, void *prefix_data, uint32_t hints, const struct lysc_node *ctx_node, struct lyd_value *storage, struct lys_glob_unres *UNUSED(unres), struct ly_err_item **err)
LIBYANG_API_DEF LY_ERR | lyplg_type_xpath10_print_token (const char *token, uint16_t tok_len, ly_bool is_nametest, const struct lys_module **context_mod, const struct ly_ctx *resolve_ctx, LY_VALUE_FORMAT resolve_format, const void *resolve_prefix_data, LY_VALUE_FORMAT get_format, void *get_prefix_data, char **token_p, struct ly_err_item **err)
| Print xpath1.0 token in the specific format.

## Variables

const struct lyplg_type_record | plugins_xpath10 []
| Plugin information for xpath1.0 type implementation.

## Detailed Description

ietf-yang-types xpath1.0 type plugin.

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

Copyright (c) 2021 - 2023 CESNET, z.s.p.o.

This source code is licensed under BSD 3-Clause License (the "License"). You may not use this file except in compliance with the License. You may obtain a copy of the License at

    https://opensource.org/licenses/BSD-3-Clause

Definition in file xpath1.0.c.

## Macro Definition Documentation

## _GNU_SOURCE

#define _GNU_SOURCE

Definition at line 15 of file xpath1.0.c.

## Function Documentation

## lyplg_type_store_xpath10()

LIBYANG_API_DEF LY_ERR lyplg_type_store_xpath10 | ( | const struct ly_ctx * | ctx,
|  | const struct lysc_type * | type,
|  | const void * | value,
|  | size_t | value_len,
|  | uint32_t | options,
|  | LY_VALUE_FORMAT | format,
|  | void * | prefix_data,
|  | uint32_t | hints,
|  | const struct lysc_node * | ctx_node,
|  | struct lyd_value * | storage,
|  | struct lys_glob_unres * | UNUSEDunres,
|  | struct ly_err_item ** | err
| ) |  |

Definition at line 246 of file xpath1.0.c.

## Variable Documentation

## plugins_xpath10

const struct lyplg_type_record plugins_xpath10[]

Initial value:
= {
{
.module = "ietf-yang-types",
.revision = "2013-07-15",
.name = "xpath1.0",
.plugin.id = "libyang 2 - xpath1.0, version 1",
.plugin.store = lyplg_type_store_xpath10,
.plugin.validate = lyplg_type_validate_xpath10,
.plugin.compare = lyplg_type_compare_simple,
.plugin.sort = lyplg_type_sort_simple,
.plugin.print = lyplg_type_print_xpath10,
.plugin.duplicate = lyplg_type_dup_xpath10,
.plugin.free = lyplg_type_free_xpath10,
.plugin.lyb_data_len = -1,
},
{0}
}
lyplg_type_sort_simple
LIBYANG_API_DEF int lyplg_type_sort_simple(const struct ly_ctx *ctx, const struct lyd_value *val1, const struct lyd_value *val2)
Implementation of lyplg_type_sort_clb for a generic simple type.
lyplg_type_compare_simple
LIBYANG_API_DECL LY_ERR lyplg_type_compare_simple(const struct ly_ctx *ctx, const struct lyd_value *val1, const struct lyd_value *val2)
Implementation of lyplg_type_compare_clb for a generic simple type.
lyplg_type_dup_xpath10
LIBYANG_API_DEF LY_ERR lyplg_type_dup_xpath10(const struct ly_ctx *ctx, const struct lyd_value *original, struct lyd_value *dup)
Implementation of lyplg_type_dup_clb for the ietf-yang-types xpath1.0 type.
Definition xpath1.0.c:479
lyplg_type_free_xpath10
LIBYANG_API_DEF void lyplg_type_free_xpath10(const struct ly_ctx *ctx, struct lyd_value *value)
Implementation of lyplg_type_free_clb for the ietf-yang-types xpath1.0 type.
Definition xpath1.0.c:511
lyplg_type_print_xpath10
LIBYANG_API_DEF const void * lyplg_type_print_xpath10(const struct ly_ctx *ctx, const struct lyd_value *value, LY_VALUE_FORMAT format, void *prefix_data, ly_bool *dynamic, size_t *value_len)
Implementation of lyplg_type_print_clb for the ietf-yang-types xpath1.0 type.
Definition xpath1.0.c:440
lyplg_type_store_xpath10
LIBYANG_API_DEF LY_ERR lyplg_type_store_xpath10(const struct ly_ctx *ctx, const struct lysc_type *type, const void *value, size_t value_len, uint32_t options, LY_VALUE_FORMAT format, void *prefix_data, uint32_t hints, const struct lysc_node *ctx_node, struct lyd_value *storage, struct lys_glob_unres *UNUSED(unres), struct ly_err_item **err)
Definition xpath1.0.c:246

Plugin information for xpath1.0 type implementation.

Note that external plugins are supposed to use:

LYPLG_TYPES = {

Definition at line 533 of file xpath1.0.c.