$include_dir="/home/hyper-archives/boost-users/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-users] [range] iterator_range::size() requires a random access iterator?
From: Adam Merz (adammerz_at_[hidden])
Date: 2008-10-15 18:37:59
Why does boost::iterator_range::size() require a random access iterator? The
implementation is 'return m_End - m_Begin;' -- if this were changed to 'return
std::distance(m_Begin, m_End);' then size() would work with any iterator type.
This strikes me as an arbitrary limitation, or at the least a leaky abstraction.
Is there a rationale here?