modernize-use-override

This commit is contained in:
Serge Lamikhov-Center 2021-08-26 12:57:31 +03:00
parent 4a84319bb8
commit da4f857e07
4 changed files with 46 additions and 46 deletions

View File

@ -101,7 +101,7 @@ template <class T> class elf_header_impl : public elf_header
}
//------------------------------------------------------------------------------
bool load( std::istream& stream )
bool load( std::istream& stream ) override
{
stream.seekg( 0 );
stream.read( reinterpret_cast<char*>( &header ), sizeof( header ) );
@ -110,7 +110,7 @@ template <class T> class elf_header_impl : public elf_header
}
//------------------------------------------------------------------------------
bool save( std::ostream& stream ) const
bool save( std::ostream& stream ) const override
{
stream.seekp( 0 );
stream.write( reinterpret_cast<const char*>( &header ),

View File

@ -85,7 +85,7 @@ template <class T> class section_impl : public section
}
//------------------------------------------------------------------------------
~section_impl() { delete[] data; }
~section_impl() override { delete[] data; }
//------------------------------------------------------------------------------
// Section info functions
@ -100,16 +100,16 @@ template <class T> class section_impl : public section
ELFIO_GET_ACCESS( Elf64_Addr, address, header.sh_addr );
//------------------------------------------------------------------------------
Elf_Half get_index() const { return index; }
Elf_Half get_index() const override { return index; }
//------------------------------------------------------------------------------
std::string get_name() const { return name; }
std::string get_name() const override { return name; }
//------------------------------------------------------------------------------
void set_name( std::string name ) { this->name = name; }
void set_name( std::string name ) override { this->name = name; }
//------------------------------------------------------------------------------
void set_address( Elf64_Addr value )
void set_address( Elf64_Addr value ) override
{
header.sh_addr = value;
header.sh_addr = ( *convertor )( header.sh_addr );
@ -117,13 +117,13 @@ template <class T> class section_impl : public section
}
//------------------------------------------------------------------------------
bool is_address_initialized() const { return is_address_set; }
bool is_address_initialized() const override { return is_address_set; }
//------------------------------------------------------------------------------
const char* get_data() const { return data; }
const char* get_data() const override { return data; }
//------------------------------------------------------------------------------
void set_data( const char* raw_data, Elf_Word size )
void set_data( const char* raw_data, Elf_Word size ) override
{
if ( get_type() != SHT_NOBITS ) {
delete[] data;
@ -141,13 +141,13 @@ template <class T> class section_impl : public section
}
//------------------------------------------------------------------------------
void set_data( const std::string& str_data )
void set_data( const std::string& str_data ) override
{
return set_data( str_data.c_str(), (Elf_Word)str_data.size() );
}
//------------------------------------------------------------------------------
void append_data( const char* raw_data, Elf_Word size )
void append_data( const char* raw_data, Elf_Word size ) override
{
if ( get_type() != SHT_NOBITS ) {
if ( get_size() + size < data_size ) {
@ -173,7 +173,7 @@ template <class T> class section_impl : public section
}
//------------------------------------------------------------------------------
void append_data( const std::string& str_data )
void append_data( const std::string& str_data ) override
{
return append_data( str_data.c_str(), (Elf_Word)str_data.size() );
}
@ -184,10 +184,10 @@ template <class T> class section_impl : public section
ELFIO_GET_SET_ACCESS( Elf64_Off, offset, header.sh_offset );
//------------------------------------------------------------------------------
void set_index( Elf_Half value ) { index = value; }
void set_index( Elf_Half value ) override { index = value; }
//------------------------------------------------------------------------------
void load( std::istream& stream, std::streampos header_offset )
void load( std::istream& stream, std::streampos header_offset ) override
{
std::fill_n( reinterpret_cast<char*>( &header ), sizeof( header ),
'\0' );
@ -218,7 +218,7 @@ template <class T> class section_impl : public section
//------------------------------------------------------------------------------
void save( std::ostream& stream,
std::streampos header_offset,
std::streampos data_offset )
std::streampos data_offset ) override
{
if ( 0 != get_index() ) {
header.sh_offset = data_offset;
@ -250,10 +250,10 @@ template <class T> class section_impl : public section
}
//------------------------------------------------------------------------------
size_t get_stream_size() const { return stream_size; }
size_t get_stream_size() const override { return stream_size; }
//------------------------------------------------------------------------------
void set_stream_size( size_t value ) { stream_size = value; }
void set_stream_size( size_t value ) override { stream_size = value; }
//------------------------------------------------------------------------------
private:

View File

@ -79,7 +79,7 @@ template <class T> class segment_impl : public segment
}
//------------------------------------------------------------------------------
virtual ~segment_impl() { delete[] data; }
~segment_impl() override { delete[] data; }
//------------------------------------------------------------------------------
// Section info functions
@ -100,13 +100,13 @@ template <class T> class segment_impl : public segment
void set_stream_size( size_t value ) { stream_size = value; }
//------------------------------------------------------------------------------
Elf_Half get_index() const { return index; }
Elf_Half get_index() const override { return index; }
//------------------------------------------------------------------------------
const char* get_data() const { return data; }
const char* get_data() const override { return data; }
//------------------------------------------------------------------------------
Elf_Half add_section_index( Elf_Half sec_index, Elf_Xword addr_align )
Elf_Half add_section_index( Elf_Half sec_index, Elf_Xword addr_align ) override
{
sections.emplace_back( sec_index );
if ( addr_align > get_align() ) {
@ -117,16 +117,16 @@ template <class T> class segment_impl : public segment
}
//------------------------------------------------------------------------------
Elf_Half add_section( section* psec, Elf_Xword addr_align )
Elf_Half add_section( section* psec, Elf_Xword addr_align ) override
{
return add_section_index( psec->get_index(), addr_align );
}
//------------------------------------------------------------------------------
Elf_Half get_sections_num() const { return (Elf_Half)sections.size(); }
Elf_Half get_sections_num() const override { return (Elf_Half)sections.size(); }
//------------------------------------------------------------------------------
Elf_Half get_section_index_at( Elf_Half num ) const
Elf_Half get_section_index_at( Elf_Half num ) const override
{
if ( num < sections.size() ) {
return sections[num];
@ -140,7 +140,7 @@ template <class T> class segment_impl : public segment
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
void set_offset( Elf64_Off value )
void set_offset( Elf64_Off value ) override
{
ph.p_offset = value;
ph.p_offset = ( *convertor )( ph.p_offset );
@ -148,16 +148,16 @@ template <class T> class segment_impl : public segment
}
//------------------------------------------------------------------------------
bool is_offset_initialized() const { return is_offset_set; }
bool is_offset_initialized() const override { return is_offset_set; }
//------------------------------------------------------------------------------
const std::vector<Elf_Half>& get_sections() const { return sections; }
const std::vector<Elf_Half>& get_sections() const override { return sections; }
//------------------------------------------------------------------------------
void set_index( Elf_Half value ) { index = value; }
void set_index( Elf_Half value ) override { index = value; }
//------------------------------------------------------------------------------
void load( std::istream& stream, std::streampos header_offset )
void load( std::istream& stream, std::streampos header_offset ) override
{
stream.seekg( 0, stream.end );
@ -188,7 +188,7 @@ template <class T> class segment_impl : public segment
//------------------------------------------------------------------------------
void save( std::ostream& stream,
std::streampos header_offset,
std::streampos data_offset )
std::streampos data_offset ) override
{
ph.p_offset = data_offset;
ph.p_offset = ( *convertor )( ph.p_offset );

View File

@ -26,6 +26,15 @@ THE SOFTWARE.
#include <cstdint>
#include <ostream>
#define ELFIO_GET_ACCESS_DECL( TYPE, NAME ) virtual TYPE get_##NAME() const = 0
#define ELFIO_SET_ACCESS_DECL( TYPE, NAME ) \
virtual void set_##NAME( TYPE value ) = 0
#define ELFIO_GET_SET_ACCESS_DECL( TYPE, NAME ) \
virtual TYPE get_##NAME() const = 0; \
virtual void set_##NAME( TYPE value ) = 0
#define ELFIO_GET_ACCESS( TYPE, NAME, FIELD ) \
TYPE get_##NAME() const { return ( *convertor )( FIELD ); }
@ -35,23 +44,14 @@ THE SOFTWARE.
FIELD = value; \
FIELD = ( *convertor )( FIELD ); \
}
#define ELFIO_GET_SET_ACCESS( TYPE, NAME, FIELD ) \
TYPE get_##NAME() const { return ( *convertor )( FIELD ); } \
void set_##NAME( TYPE value ) \
{ \
FIELD = value; \
FIELD = ( *convertor )( FIELD ); \
#define ELFIO_GET_SET_ACCESS( TYPE, NAME, FIELD ) \
TYPE get_##NAME() const override { return ( *convertor )( FIELD ); } \
void set_##NAME( TYPE value ) override \
{ \
FIELD = value; \
FIELD = ( *convertor )( FIELD ); \
}
#define ELFIO_GET_ACCESS_DECL( TYPE, NAME ) virtual TYPE get_##NAME() const = 0
#define ELFIO_SET_ACCESS_DECL( TYPE, NAME ) \
virtual void set_##NAME( TYPE value ) = 0
#define ELFIO_GET_SET_ACCESS_DECL( TYPE, NAME ) \
virtual TYPE get_##NAME() const = 0; \
virtual void set_##NAME( TYPE value ) = 0
namespace ELFIO {
//------------------------------------------------------------------------------