target.hpp 563 Bytes
Newer Older
Paul's avatar
Paul committed
1
2
#ifndef MIGRAPH_GUARD_MIGRAPHLIB_TARGET_HPP
#define MIGRAPH_GUARD_MIGRAPHLIB_TARGET_HPP
Paul's avatar
Paul committed
3
4
5
6
7
8

#include <string>
#include <functional>
#include <memory>
#include <type_traits>
#include <utility>
Paul's avatar
Paul committed
9
#include <vector>
Paul's avatar
Paul committed
10
#include <migraph/context.hpp>
Paul's avatar
Paul committed
11
#include <migraph/pass.hpp>
Paul's avatar
Paul committed
12

Paul's avatar
Paul committed
13
namespace migraph {
Paul's avatar
Paul committed
14
15
16
17
18
19

struct program;

<%
interface('target',
    virtual('name', returns='std::string', const=True),
Paul's avatar
Paul committed
20
    virtual('get_passes', ctx='context&', returns='std::vector<pass>', const=True),
Paul's avatar
Paul committed
21
    virtual('get_context', returns='context', const=True)
Paul's avatar
Paul committed
22
23
24
)
%>

Paul's avatar
Paul committed
25
} // namespace migraph
Paul's avatar
Paul committed
26
27

#endif