ONE - On-device Neural Engine
Loading...
Searching...
No Matches
Use.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2019 Samsung Electronics Co., Ltd. All Rights Reserved
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
17
#ifndef __LOCO_IR_USE_H__
18
#define __LOCO_IR_USE_H__
19
20
#include "
loco/IR/Node.forward.h
"
21
22
namespace
loco
23
{
24
36
class
Use
final
37
{
38
public
:
43
Use
(
Node
*
user
) : _user{
user
}
44
{
45
// DO NOTHING
46
}
47
48
Use
(
const
Use
&) =
delete
;
49
Use
(
Use
&&) =
delete
;
50
51
~Use
()
52
{
53
// Unlink itself from the node
54
node
(
nullptr
);
55
}
56
57
public
:
58
Node
*
node
(
void
)
const
{
return
_node; }
59
void
node
(
Node
*
node
);
60
61
public
:
62
Node
*
user
(
void
)
const
{
return
_user; }
63
64
private
:
65
Node
*_node{
nullptr
};
66
Node *_user{
nullptr
};
67
};
68
69
}
// namespace loco
70
71
#endif
// __LOCO_IR_USE_H__
Node.forward.h
loco::Node
Logical unit of computation.
Definition
Node.h:54
loco::Use
The edge between a node definition and its user.
Definition
Use.h:37
loco::Use::user
Node * user(void) const
Definition
Use.h:62
loco::Use::node
Node * node(void) const
Definition
Use.h:58
loco::Use::Use
Use(const Use &)=delete
loco::Use::~Use
~Use()
Definition
Use.h:51
loco::Use::Use
Use(Use &&)=delete
loco::Use::Use
Use(Node *user)
Construct Use with its user.
Definition
Use.h:43
loco
Definition
LogHelper.cpp:20
compiler
loco
include
loco
IR
Use.h
Generated by
1.9.8