pkg://jd_2.0.0~beta080418.orig.tar.gz:513216/
jd-2.0.0-beta080418/
src/
xml/domlist.cpp
downloads
// License GPL2
//#define _DEBUG
#include "jddebug.h"
#include "domlist.h"
using namespace XML;
DomList::DomList()
{
}
DomList::~DomList()
{
}
// std::list< Dom* > が代入された場合
DomList& DomList::operator =( const std::list< Dom* >& list )
{
m_list = list;
return *this;
}
// 添字によるアクセス
Dom* DomList::operator []( const unsigned int n )
{
if( ! this || m_list.empty() || n > m_list.size() ) return 0;
size_t count = 0;
std::list< Dom* >::iterator it = m_list.begin();
while( it != m_list.end() )
{
if( count == n ) return *it;
++count;
++it;
}
return 0;
}
// 以下 std::list の主なメンバ関数
std::list< Dom* >::iterator DomList::begin()
{
return m_list.begin();
}
std::list< Dom* >::reverse_iterator DomList::rbegin()
{
return m_list.rbegin();
}
std::list< Dom* >::iterator DomList::end()
{
return m_list.end();
}
std::list< Dom* >::reverse_iterator DomList::rend()
{
return m_list.rend();
}
size_t DomList::size() const
{
return m_list.size();
}
size_t DomList::max_size() const
{
return m_list.max_size();
}
bool DomList::empty() const
{
return m_list.empty();
}
// 参照ではなくポインタを返す
Dom* DomList::front()
{
if( m_list.empty() ) return 0;
return *m_list.begin();
}
// 参照ではなくポインタを返す
Dom* DomList::back()
{
if( m_list.empty() ) return 0;
return *m_list.end();
}
void DomList::push_front( Dom* dom )
{
m_list.push_front( dom );
}
void DomList::push_back( Dom* dom )
{
m_list.push_back( dom );
}
void DomList::pop_front()
{
m_list.pop_front();
}
void DomList::pop_back()
{
m_list.pop_back();
}
std::list< Dom* >::iterator DomList::insert( std::list< Dom* >::iterator it, Dom* dom )
{
return m_list.insert( it, dom );
}
std::list< Dom* >::iterator DomList::erase( std::list< Dom* >::iterator it )
{
return erase( it );
}
void DomList::clear()
{
m_list.clear();
}
void DomList::splice( std::list< Dom* >::iterator it, DomList& domlist )
{
m_list.splice( it, domlist.m_list );
}
void DomList::remove( Dom* dom )
{
m_list.remove( dom );
}
void DomList::unique()
{
m_list.unique();
}
void DomList::merge( DomList& domlist )
{
m_list.merge( domlist.m_list );
}
void DomList::sort()
{
m_list.sort();
}
void DomList::reverce()
{
m_list.reverse();
}
void DomList::swap( DomList& domlist )
{
m_list.swap( domlist.m_list );
}