MySQL 8.3.0
Source Code Documentation
Json_path_clone Class Referencefinal

A lightweight path expression. More...

#include <json_path.h>

Inheritance diagram for Json_path_clone:
[legend]

Public Member Functions

 Json_path_clone (PSI_memory_key key)
 
bool append (const Json_path_leg *leg)
 Add a path leg to the end of this cloned path. More...
 
void clear ()
 Resets this to an empty path with no legs. More...
 
- Public Member Functions inherited from Json_seekable_path
size_t leg_count () const
 Return the number of legs in this searchable path. More...
 
Json_path_iterator begin () const
 Get an iterator pointing to the first path leg. More...
 
Json_path_iterator end () const
 Get an iterator pointing just past the last path leg. More...
 
const Json_path_leglast_leg () const
 Get a pointer to the last path leg. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Json_seekable_path
 Json_seekable_path (PSI_memory_key key)
 
- Protected Attributes inherited from Json_seekable_path
Json_path_leg_pointers m_path_legs
 An array of pointers to the legs of the JSON path. More...
 

Detailed Description

A lightweight path expression.

This exists so that paths can be cloned from the path legs of other paths without allocating heap memory to copy those legs into. This class does not own the memory of the Json_path_leg objects pointed to by Json_seekable_path::m_path_legs, it just points to Json_path_leg objects that belong to a Json_path instance.

Constructor & Destructor Documentation

◆ Json_path_clone()

Json_path_clone::Json_path_clone ( PSI_memory_key  key)
inlineexplicit

Member Function Documentation

◆ append()

bool Json_path_clone::append ( const Json_path_leg leg)
inline

Add a path leg to the end of this cloned path.

Parameters
[in]legthe leg to add
Returns
false on success, true on error

◆ clear()

void Json_path_clone::clear ( )
inline

Resets this to an empty path with no legs.


The documentation for this class was generated from the following file: