Section & unless( bool const skip ) { if ( skip ) { if ( segments.empty() ) throw std::runtime_error( "Curve::unless() called, but no segment present" ); segments.pop_back(); } return *this; }