15#ifndef LIEF_OBJC_IVAR_H
16#define LIEF_OBJC_IVAR_H
54 template <
typename RefT>
60 Iterator(std::unique_ptr<details::IVarIt> impl);
87 return static_cast<const Iterator*
>(
this)->
operator*();
91 std::unique_ptr<details::IVarIt> impl_;
95 IVar(std::unique_ptr<details::IVar> impl);
105 std::unique_ptr<details::IVar> impl_;
pointer operator->() const
Definition IVar.hpp:49
Iterator(Iterator &&) noexcept
details::IVarIt implementation
Definition IVar.hpp:43
std::unique_ptr< IVar > operator*() const
std::ptrdiff_t difference_type
Definition IVar.hpp:40
std::unique_ptr< IVar > & reference
Definition IVar.hpp:42
std::bidirectional_iterator_tag iterator_category
Definition IVar.hpp:38
Iterator operator--(int)
Definition IVar.hpp:72
Iterator operator++(int)
Definition IVar.hpp:78
PointerProxy operator->() const
Definition IVar.hpp:86
Iterator(const Iterator &)
std::unique_ptr< IVar > value_type
Definition IVar.hpp:39
This class represents an instance variable (ivar)
Definition IVar.hpp:34
std::string mangled_type() const
Type of the instance var in its mangled representation ([29i])
IVar(std::unique_ptr< details::IVar > impl)
std::string name() const
Name of the instance variable.
LIEF namespace.
Definition Abstract/Binary.hpp:32
#define LIEF_API
Definition visibility.h:41