LIEF: Library to Instrument Executable Formats
Version 0.17.4
Toggle main menu visibility
Loading...
Searching...
No Matches
install
linux
x86_64
sdk
static
include
LIEF
Abstract
Abstract/hash.hpp
Go to the documentation of this file.
1
/* Copyright 2017 - 2025 R. Thomas
2
* Copyright 2017 - 2025 Quarkslab
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
#ifndef LIEF_ABSTRACT_HASH_H
17
#define LIEF_ABSTRACT_HASH_H
18
19
#include "
LIEF/visibility.h
"
20
#include "
LIEF/hash.hpp
"
21
22
namespace
LIEF
{
23
class
Binary
;
24
class
Header
;
25
class
Relocation
;
26
class
Object
;
27
28
class
LIEF_API
AbstractHash
:
public
LIEF::Hash
{
29
public
:
30
static
LIEF::Hash::value_type
hash
(
const
Object
& obj);
31
32
public
:
33
using
LIEF::Hash::Hash
;
34
using
LIEF::Hash::visit
;
35
36
public
:
37
void
visit
(
const
Binary
& binary)
override
;
38
void
visit
(
const
Header
& header)
override
;
39
void
visit
(
const
Section
& section)
override
;
40
void
visit
(
const
Symbol
& symbol)
override
;
41
void
visit
(
const
Relocation
& relocation)
override
;
42
void
visit
(
const
Function
& function)
override
;
43
44
~AbstractHash
()
override
;
45
};
46
47
}
48
49
#endif
LIEF::AbstractHash
Definition
Abstract/hash.hpp:28
LIEF::AbstractHash::visit
void visit(const Header &header) override
Method to visit a LIEF::Header.
LIEF::AbstractHash::visit
void visit(const Function &function) override
Method to visit a LIEF::Function.
LIEF::AbstractHash::visit
void visit(const Section §ion) override
Method to visit a LIEF::Section.
LIEF::AbstractHash::visit
void visit(const Relocation &relocation) override
Method to visit a LIEF::Relocation.
LIEF::AbstractHash::~AbstractHash
~AbstractHash() override
LIEF::AbstractHash::visit
void visit(const Binary &binary) override
Method to visit a LIEF::Binary.
LIEF::AbstractHash::hash
static LIEF::Hash::value_type hash(const Object &obj)
LIEF::AbstractHash::visit
void visit(const Symbol &symbol) override
Method to visit a LIEF::Symbol.
LIEF::Binary
Generic interface representing a binary executable.
Definition
Abstract/Binary.hpp:59
LIEF::Function
Class that represents a function in the binary.
Definition
Abstract/Function.hpp:29
LIEF::Hash
Definition
hash.hpp:31
LIEF::Hash::Hash
Hash()
LIEF::Hash::value_type
size_t value_type
Definition
hash.hpp:33
LIEF::Hash::visit
virtual void visit(const Object &)
LIEF::Header
Definition
Abstract/Header.hpp:40
LIEF::Object
Definition
Object.hpp:25
LIEF::Relocation
Class which represents an abstracted Relocation.
Definition
Abstract/Relocation.hpp:27
LIEF::Section
Class which represents an abstracted section.
Definition
Abstract/Section.hpp:29
LIEF::Symbol
This class represents a symbol in an executable format.
Definition
Abstract/Symbol.hpp:28
hash.hpp
LIEF
LIEF namespace.
Definition
Abstract/Binary.hpp:40
visibility.h
LIEF_API
#define LIEF_API
Definition
visibility.h:41
Generated by
1.17.0