#include <iostream>
#include <string>
#include <unordered_map>
#include <utility>
#include <vector>
#include <ast.h>
#include <buffer.h>
#include <driver/array.h>
#include <stmt.h>
#include <tensor.h>
Go to the source code of this file.
|
| std::ostream & | freetensor::operator<< (std::ostream &os, const FuncParam &p) |
| |
| std::ostream & | freetensor::operator<< (std::ostream &os, const FuncRet &r) |
| |
| template<class Tbody , class Tparams , class Treturns , class Tclosure > |
| Func | freetensor::makeFunc (const std::string &name, Tparams &¶ms, Treturns &&returns, Tbody &&body) |
| |
| template<class Tbody > |
| Func | freetensor::makeFunc (const std::string &name, const std::vector< FuncParam > ¶ms, const std::vector< FuncRet > &returns, Tbody &&body) |
| |
| Func | freetensor::deepCopy (const Func &func) |
| |
◆ DEFINE_PASS_FOR_FUNC
| #define DEFINE_PASS_FOR_FUNC |
( |
|
pass | ) |
|
Value: template <typename... T> Func pass(const Func &func, T &&...args) { \
return makeFunc(func->name_, func->params_, func->returns_, \
pass(func->body_, std::forward<T>(args)...)); \
}