Kea 2.7.6
data.cc File Reference
#include <config.h>
#include <cc/data.h>
#include <util/bigints.h>
#include <cstring>
#include <cassert>
#include <climits>
#include <list>
#include <map>
#include <cstdio>
#include <iostream>
#include <iomanip>
#include <string>
#include <sstream>
#include <fstream>
#include <cerrno>
#include <boost/lexical_cast.hpp>
#include <cmath>
+ Include dependency graph for data.cc:

Go to the source code of this file.

Namespaces

namespace  isc
 Defines the logger used by the top-level component of kea-lfc.
 
namespace  isc::data
 

Functions

ElementPtr isc::data::copy (ConstElementPtr from, int level=100)
 Copy the data up to a nesting level.
 
void isc::data::extend (const std::string &container, const std::string &extension, ElementPtr &element, ElementPtr &other, HierarchyDescriptor &hierarchy, std::string key, size_t idx=0, bool alter=false)
 Extends data by adding the specified 'extension' elements from 'other' inside the 'container' element (recursively).
 
bool isc::data::isEquivalent (ConstElementPtr a, ConstElementPtr b)
 Compares the data with other using unordered lists.
 
bool isc::data::isNull (ConstElementPtr p)
 Checks whether the given ElementPtr is a NULL pointer.
 
void isc::data::merge (ElementPtr element, ConstElementPtr other)
 Merges the data from other into element.
 
void isc::data::mergeDiffAdd (ElementPtr &element, ElementPtr &other, HierarchyDescriptor &hierarchy, std::string key, size_t idx=0)
 Merges the diff data by adding the missing elements from 'other' to 'element' (recursively).
 
void isc::data::mergeDiffDel (ElementPtr &element, ElementPtr &other, HierarchyDescriptor &hierarchy, std::string key, size_t idx=0)
 Merges the diff data by removing the data present in 'other' from 'element' (recursively).
 
bool isc::data::operator!= (const Element &a, const Element &b)
 
bool isc::data::operator< (Element const &a, Element const &b)
 
std::ostream & isc::data::operator<< (std::ostream &out, const Element &e)
 Insert the Element as a string into stream.
 
std::ostream & isc::data::operator<< (std::ostream &out, const Element::Position &pos)
 Insert Element::Position as a string into stream.
 
bool isc::data::operator== (const Element &a, const Element &b)
 
void isc::data::prettyPrint (ConstElementPtr element, std::ostream &out, unsigned indent=0, unsigned step=2)
 Pretty prints the data into stream.
 
std::string isc::data::prettyPrint (ConstElementPtr element, unsigned indent=0, unsigned step=2)
 Pretty prints the data into string.
 
ConstElementPtr isc::data::removeIdentical (ConstElementPtr a, ConstElementPtr b)
 Create a new ElementPtr from the first ElementPtr, removing all values that are equal in the second.
 
void isc::data::removeIdentical (ElementPtr a, ConstElementPtr b)
 Remove all values from the first ElementPtr that are equal in the second.