Changeset 448 for trunk


Ignore:
Timestamp:
07/30/15 14:05:17 (10 years ago)
Author:
epyon
Message:
  • algorithm/remove added
  • some namespace anti-adl fixes (should be everywhere?)
  • growing_storage range constructor
  • minor fix in gui_style


Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/nv/stl/algorithm.hh

    r446 r448  
    148148        }
    149149
     150        template < typename ForwardIterator, typename T >
     151        inline ForwardIterator remove( ForwardIterator first, ForwardIterator last, const T& value )
     152        {
     153                ForwardIterator next = ::nv::find( first, last, value );
     154                if ( next != last )
     155                {
     156                        first = next;
     157                        for ( ++first; first != last; ++first )
     158                                if ( !( *first == value ) )
     159                                        *next++ = ::nv::move( *first );
     160                }
     161                return next;
     162        }
     163
    150164        template < typename Iterator >
    151165        inline void iter_swap( Iterator a, Iterator b )
    152166        {
    153                 swap( *a, *b );
     167                ::nv::swap( *a, *b );
    154168        }
    155169
     
    158172        {
    159173                for ( ; ::nv::distance( first, --last ) > 0; ++first )
    160                         iter_swap( first, last );
     174                        ::nv::iter_swap( first, last );
    161175        }
    162176
     
    166180                if ( first == middle || middle == last )
    167181                        return first;
    168                 reverse( first, middle );
    169                 reverse( middle, last );
     182                ::nv::reverse( first, middle );
     183                ::nv::reverse( middle, last );
    170184                for ( ; first != middle && middle != last; ++first )
    171                         iter_swap( first, --last );
    172                 reverse( first, ( first == middle ? last : middle ) );
     185                        ::nv::iter_swap( first, --last );
     186                ::nv::reverse( first, ( first == middle ? last : middle ) );
    173187                return first;
    174188        }
     
    184198                {
    185199                        for ( j = i; j-- > first && comp( *i, *j ); );
    186                         if ( ++j != i ) rotate( j, i, i + 1 );
     200                        if ( ++j != i ) ::nv::rotate( j, i, i + 1 );
    187201                }
    188202        }
  • trunk/nv/stl/container/growing_storage.hh

    r438 r448  
    110110                }
    111111
     112                template< typename InputIterator >
     113                growing_storage( InputIterator first, InputIterator last )
     114                {
     115                        assign( first, last );
     116                }
     117
    112118                inline growing_storage& operator=( growing_storage&& other )
    113119                {
  • trunk/src/gui/gui_style.cc

    r444 r448  
    119119        lua::stack_guard guard( m_lua );
    120120        lua_getglobal( m_lua, "default" );
    121         int global = lua_gettop( m_lua );
    122121
    123122        // check id
Note: See TracChangeset for help on using the changeset viewer.