ONE - On-device Neural Engine
Loading...
Searching...
No Matches
bino.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 __BINO_H__
18
#define __BINO_H__
19
20
#include <utility>
21
22
namespace
bino
23
{
24
25
template
<
typename
Callable>
class
UniformTransform
26
{
27
public
:
28
UniformTransform
(Callable &&cb) : f{
std
::forward<Callable>(cb)}
29
{
30
// DO NOTHING
31
}
32
33
public
:
34
template
<
typename
T>
35
auto
operator()
(
const
std::pair<T, T> &p)
const
36
->
decltype
(std::make_pair(std::declval<Callable>()(p.first),
37
std::declval<Callable>()(p.second)))
38
{
39
return
std::make_pair(f(p.first), f(p.second));
40
}
41
42
private
:
43
Callable f;
44
};
45
46
template
<
typename
Callable>
UniformTransform<Callable>
transform_both
(Callable &&f)
47
{
48
return
UniformTransform<Callable>
{std::forward<Callable>(f)};
49
}
50
51
// TODO Implement transform_both(f, g)
52
// TODO Implement transform_first(f)
53
// TODO Implement transform_second(f)
54
55
}
// namespace bino
56
57
#endif
// __BINO_H__
bino::UniformTransform
Definition
bino.h:26
bino::UniformTransform::operator()
auto operator()(const std::pair< T, T > &p) const -> decltype(std::make_pair(std::declval< Callable >()(p.first), std::declval< Callable >()(p.second)))
Definition
bino.h:35
bino::UniformTransform::UniformTransform
UniformTransform(Callable &&cb)
Definition
bino.h:28
bino
Definition
bino.h:23
bino::transform_both
UniformTransform< Callable > transform_both(Callable &&f)
Definition
bino.h:46
std
Definition
CircleExporterUtils.h:53
compiler
bino
include
bino.h
Generated by
1.9.8