Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends
YAML_PM::Node Class Reference

#include <node.h>

Inheritance diagram for YAML_PM::Node:
Inheritance graph
[legend]

List of all members.

Public Member Functions

Iterator begin () const
void Clear ()
std::auto_ptr< NodeClone () const
int Compare (const Node &rhs) const
void EmitEvents (EventHandler &eventHandler) const
void EmitEvents (AliasManager &am, EventHandler &eventHandler) const
Iterator end () const
template<typename T >
const NodeFindValue (const T &key) const
const NodeFindValue (const char *key) const
const NodeFindValue (char *key) const
const Mark GetMark () const
bool GetScalar (std::string &s) const
bool IsAliased () const
 Node ()
template<typename T >
const Nodeoperator[] (const T &key) const
const Nodeoperator[] (const char *key) const
const Nodeoperator[] (char *key) const
template<typename T >
bool Read (T &value) const
std::size_t size () const
const std::string & Tag () const
template<typename T >
const T to () const
NodeType::value Type () const
 ~Node ()

Private Types

typedef std::map< Node *, Node
*, ltnode
node_map
typedef std::vector< Node * > node_seq

Private Member Functions

void Append (Node &node)
NodeCreateNode ()
const NodeFindAtIndex (std::size_t i) const
template<typename T >
const NodeFindValueForKey (const T &key) const
template<typename T >
const NodeGetValue (const T &key) const
void Init (NodeType::value type, const Mark &mark, const std::string &tag)
void Insert (Node &key, Node &value)
void MarkAsAliased ()
 Node (NodeOwnership &owner)
void SetScalarData (const std::string &data)

Private Attributes

node_map m_mapData
Mark m_mark
std::auto_ptr< NodeOwnershipm_pOwnership
std::string m_scalarData
node_seq m_seqData
std::string m_tag
NodeType::value m_type

Friends

struct _FindFromNodeAtIndex
class NodeBuilder
class NodeOwnership
bool operator< (const Node &n1, const Node &n2)
YAML_CPP_API Emitteroperator<< (Emitter &out, const Node &node)
template<typename T >
YAML_CPP_API enable_if
< is_scalar_convertible< T >
>::type 
operator>> (const Node &node, T &value)

Detailed Description

Definition at line 33 of file node.h.


Member Typedef Documentation

typedef std::map<Node *, Node *, ltnode> YAML_PM::Node::node_map [private]

Definition at line 123 of file node.h.

typedef std::vector<Node *> YAML_PM::Node::node_seq [private]

Definition at line 122 of file node.h.


Constructor & Destructor Documentation

Definition at line 21 of file node.cpp.

Definition at line 29 of file node.cpp.

YAML_PM::Node::Node ( NodeOwnership owner) [explicit, private]

Definition at line 25 of file node.cpp.


Member Function Documentation

void YAML_PM::Node::Append ( Node node) [private]

Definition at line 127 of file node.cpp.

Definition at line 141 of file node.cpp.

Definition at line 34 of file node.cpp.

std::auto_ptr< Node > YAML_PM::Node::Clone ( ) const

Definition at line 54 of file node.cpp.

int YAML_PM::Node::Compare ( const Node rhs) const

Definition at line 226 of file node.cpp.

Definition at line 49 of file node.cpp.

void YAML_PM::Node::EmitEvents ( EventHandler eventHandler) const

Definition at line 62 of file node.cpp.

void YAML_PM::Node::EmitEvents ( AliasManager am,
EventHandler eventHandler 
) const

Definition at line 70 of file node.cpp.

Definition at line 159 of file node.cpp.

const Node * YAML_PM::Node::FindAtIndex ( std::size_t  i) const [private]

Definition at line 194 of file node.cpp.

template<typename T >
const Node * YAML_PM::Node::FindValue ( const T &  key) const [inline]

Definition at line 29 of file nodeimpl.h.

const Node * YAML_PM::Node::FindValue ( const char *  key) const [inline]

Definition at line 68 of file nodeimpl.h.

const Node * YAML_PM::Node::FindValue ( char *  key) const [inline]

Definition at line 72 of file nodeimpl.h.

template<typename T >
const Node * YAML_PM::Node::FindValueForKey ( const T &  key) const [inline, private]

Definition at line 44 of file nodeimpl.h.

const Mark YAML_PM::Node::GetMark ( ) const [inline]

Definition at line 51 of file node.h.

bool YAML_PM::Node::GetScalar ( std::string &  s) const

Definition at line 201 of file node.cpp.

template<typename T >
const Node & YAML_PM::Node::GetValue ( const T &  key) const [inline, private]

Definition at line 57 of file nodeimpl.h.

void YAML_PM::Node::Init ( NodeType::value  type,
const Mark mark,
const std::string &  tag 
) [private]

Definition at line 108 of file node.cpp.

void YAML_PM::Node::Insert ( Node key,
Node value 
) [private]

Definition at line 133 of file node.cpp.

bool YAML_PM::Node::IsAliased ( ) const

Definition at line 44 of file node.cpp.

void YAML_PM::Node::MarkAsAliased ( ) [private]

Definition at line 116 of file node.cpp.

template<typename T >
const Node & YAML_PM::Node::operator[] ( const T &  key) const [inline]

Definition at line 64 of file nodeimpl.h.

const Node & YAML_PM::Node::operator[] ( const char *  key) const [inline]

Definition at line 76 of file nodeimpl.h.

const Node & YAML_PM::Node::operator[] ( char *  key) const [inline]

Definition at line 80 of file nodeimpl.h.

template<typename T >
bool YAML_PM::Node::Read ( T &  value) const [inline]

Definition at line 68 of file nodereadimpl.h.

void YAML_PM::Node::SetScalarData ( const std::string &  data) [private]

Definition at line 121 of file node.cpp.

std::size_t YAML_PM::Node::size ( ) const

Definition at line 178 of file node.cpp.

const std::string& YAML_PM::Node::Tag ( ) const [inline]

Definition at line 85 of file node.h.

template<typename T >
const T YAML_PM::Node::to ( ) const [inline]

Definition at line 16 of file nodeimpl.h.

Definition at line 47 of file node.h.


Friends And Related Function Documentation

friend struct _FindFromNodeAtIndex [friend]

Definition at line 106 of file node.h.

friend class NodeBuilder [friend]

Definition at line 37 of file node.h.

friend class NodeOwnership [friend]

Definition at line 36 of file node.h.

bool operator< ( const Node n1,
const Node n2 
) [friend]

Definition at line 265 of file node.cpp.

YAML_CPP_API Emitter& operator<< ( Emitter out,
const Node node 
) [friend]

Definition at line 219 of file node.cpp.

template<typename T >
YAML_CPP_API enable_if<is_scalar_convertible<T> >::type operator>> ( const Node node,
T &  value 
) [friend]

Definition at line 23 of file nodeimpl.h.


Member Data Documentation

Definition at line 128 of file node.h.

Definition at line 119 of file node.h.

std::auto_ptr<NodeOwnership> YAML_PM::Node::m_pOwnership [private]

Definition at line 117 of file node.h.

std::string YAML_PM::Node::m_scalarData [private]

Definition at line 126 of file node.h.

Definition at line 127 of file node.h.

std::string YAML_PM::Node::m_tag [private]

Definition at line 120 of file node.h.

Definition at line 125 of file node.h.


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


upstream_src
Author(s):
autogenerated on Mon Oct 6 2014 10:27:44