15#ifndef LIEF_OBJC_METHOD_H
16#define LIEF_OBJC_METHOD_H
51 template <
typename RefT>
57 Iterator(std::unique_ptr<details::MethodIt> impl);
84 return static_cast<const Iterator*
>(
this)->
operator*();
88 std::unique_ptr<details::MethodIt> impl_;
92 Method(std::unique_ptr<details::Method> impl);
108 std::unique_ptr<details::Method> impl_;
Definition ObjC/Method.hpp:42
pointer operator->() const
Definition ObjC/Method.hpp:46
Definition ObjC/Method.hpp:33
Iterator(Iterator &&) noexcept
std::ptrdiff_t difference_type
Definition ObjC/Method.hpp:37
Iterator(const Iterator &)
std::unique_ptr< Method > value_type
Definition ObjC/Method.hpp:36
std::unique_ptr< Method > operator*() const
Iterator operator++(int)
Definition ObjC/Method.hpp:75
std::bidirectional_iterator_tag iterator_category
Definition ObjC/Method.hpp:35
details::MethodIt implementation
Definition ObjC/Method.hpp:40
std::unique_ptr< Method > & reference
Definition ObjC/Method.hpp:39
Iterator operator--(int)
Definition ObjC/Method.hpp:69
PointerProxy operator->() const
Definition ObjC/Method.hpp:83
This class represents an Objective-C Method.
Definition ObjC/Method.hpp:31
bool is_instance() const
Whether it's an instance method.
Method(std::unique_ptr< details::Method > impl)
std::string name() const
Name of the method.
std::string mangled_type() const
Prototype of the method in its mangled representation (e.g. @16@0:8)
uintptr_t address() const
Virtual address where this method is implemented in the binary.
LIEF namespace.
Definition Abstract/Binary.hpp:32
#define LIEF_API
Definition visibility.h:41