Example #1
0
    //! The function performs formatting of the extracted scope stack in forward direction
    void format_forward(stream_type& strm, value_type const& scopes) const
    {
        value_type::const_iterator it, end = scopes.end();
        if (m_depth > 0)
        {
            value_type::size_type const scopes_to_iterate = (std::min)(m_depth, scopes.size());
            it = scopes.end();
            std::advance(it, -static_cast< value_type::difference_type >(scopes_to_iterate));
        }
        else
        {
            it = scopes.begin();
        }

        if (it != end)
        {
            if (it != scopes.begin())
                strm << m_incomplete_marker;

            m_element_formatter(strm, *it);
            for (++it; it != end; ++it)
            {
                strm << m_delimiter;
                m_element_formatter(strm, *it);
            }
        }
    }
Example #2
0
 size_t get_origin(size_t i) const {
     return std::find(
                oneLineNotation.begin(),
                oneLineNotation.end(),
                i
            ) - oneLineNotation.begin();
 }
Example #3
0
 static void encode(util::OctetStream& output, value_type const& value)
 {
     output.append(value.begin(), value.end());
 }