Class Function

class Function

Public Functions

Function(const std::string name, const std::vector<NamedArg> &arg_types, const Type ret_type, const bool always_inline)
const std::string &name() const
const std::vector<NamedArg> &arg_types() const
Argument *arg(const size_t idx) const
Type ret_type() const
const std::vector<std::unique_ptr<Instruction>> &body() const
const std::vector<std::unique_ptr<Constant>> &constants() const
bool always_inline() const
template<typename Tp, typename ...Args>
Value *add(Args&&... args)
template<typename Tp, typename ...Args>
Value *addConstant(Args&&... args)

Private Members

const std::string name_
const std::vector<NamedArg> arg_types_
const Type ret_type_
std::vector<std::unique_ptr<Instruction>> body_
const bool always_inline_
std::vector<std::unique_ptr<Argument>> arguments_
std::vector<std::unique_ptr<Constant>> constants_
struct NamedArg

Public Members

std::string name
Type type