Started writing new iterators

This commit is contained in:
Jesse Beder
2011-09-09 16:17:59 -05:00
parent 7bbf712c36
commit ff1a8fc59a
8 changed files with 87 additions and 8 deletions

View File

@@ -60,6 +60,49 @@ namespace YAML
m_scalar = scalar;
}
// size/iterator
std::size_t node_data::size() const
{
return 0;
}
const_iterator node_data::begin(shared_memory_holder pMemory) const
{
switch(m_type) {
case ValueType::Sequence: return const_iterator(pMemory, m_sequence.begin());
case ValueType::Map: return const_iterator(pMemory, m_map.begin());
default: return const_iterator();
}
}
iterator node_data::begin(shared_memory_holder pMemory)
{
switch(m_type) {
case ValueType::Sequence: return iterator(pMemory, m_sequence.begin());
case ValueType::Map: return iterator(pMemory, m_map.begin());
default: return iterator();
}
}
const_iterator node_data::end(shared_memory_holder pMemory) const
{
switch(m_type) {
case ValueType::Sequence: return const_iterator(pMemory, m_sequence.end());
case ValueType::Map: return const_iterator(pMemory, m_map.end());
default: return const_iterator();
}
}
iterator node_data::end(shared_memory_holder pMemory)
{
switch(m_type) {
case ValueType::Sequence: return iterator(pMemory, m_sequence.end());
case ValueType::Map: return iterator(pMemory, m_map.end());
default: return iterator();
}
}
// sequence
void node_data::append(node& node, shared_memory_holder /* pMemory */)
{
if(m_type != ValueType::Sequence)