11#ifndef __JSONV_PATH_HPP_INCLUDED__
12#define __JSONV_PATH_HPP_INCLUDED__
26enum class path_element_kind :
unsigned char
32JSONV_PUBLIC std::ostream& operator<<(std::ostream&,
const path_element_kind&);
34JSONV_PUBLIC std::string to_string(
const path_element_kind&);
51 path_element_kind
kind()
const;
53 std::size_t index()
const;
55 const std::string& key()
const;
66 storage(std::size_t
idx);
67 storage(std::string&& key);
72 path_element_kind _kind;
82 public detail::generic_container<std::vector<path_element>>
89 path(storage_type elements);
An adapter for enumeration types.
Represents an exact path in some JSON structure.
path()
Creates a new, empty path.
path(storage_type elements)
Creates a path with the provided elements.
static path create(std::string_view specification)
Create a path from a string definition.
Copyright (c) 2014-2020 by Travis Gockel.
#define JSONV_PUBLIC
This function or class is part of the public API for JSON Voorhees.
Copyright (c) 2014 by Travis Gockel.
kind
Describes the kind of data a value holds.