16#ifndef LIEF_ELF_SYSV_HASH_H
17#define LIEF_ELF_SYSV_HASH_H
23#include "LIEF/Object.hpp"
24#include "LIEF/visibility.h"
56 return buckets_.size();
61 return chains_.size();
65 const std::vector<uint32_t>&
buckets()
const {
70 const std::vector<uint32_t>&
chains()
const {
74 void nchain(uint32_t nb) {
78 void accept(
Visitor& visitor)
const override;
80 LIEF_API
friend std::ostream& operator<<(std::ostream& os,
const SysvHash& sysvhash);
83 std::vector<uint32_t> buckets_;
84 std::vector<uint32_t> chains_;
Class which represents an ELF binary.
Definition ELF/Binary.hpp:59
Class which takes an ELF::Binary object and reconstructs a valid binary.
Definition ELF/Builder.hpp:51
Class which parses and transforms an ELF file into a ELF::Binary object.
Definition ELF/Parser.hpp:45
Class which represents the SYSV hash for the symbols resolution.
Definition SysvHash.hpp:39
uint32_t nbucket() const
Return the number of buckets used.
Definition SysvHash.hpp:55
uint32_t nchain() const
Return the number of chain used.
Definition SysvHash.hpp:60
const std::vector< uint32_t > & chains() const
Chains values.
Definition SysvHash.hpp:70
const std::vector< uint32_t > & buckets() const
Buckets values.
Definition SysvHash.hpp:65
Definition Visitor.hpp:219
LIEF namespace.
Definition Abstract/Binary.hpp:32