ALP User Documentation 0.7.0
Algebraic Programming User Documentation
properties.hpp
Go to the documentation of this file.
1
2/*
3 * Copyright 2021 Huawei Technologies Co., Ltd.
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
27#ifndef _H_GRB_PROPERTIES_BASE
28#define _H_GRB_PROPERTIES_BASE
29
31
32
33namespace grb {
34
51 template< enum Backend backend >
52 class Properties {
53
54#ifdef __DOXYGEN__
55
56 public:
57
72 static constexpr const bool writableCaptured = true;
73
84 static constexpr const bool isBlockingExecution = true;
85
99 static constexpr const bool isNonblockingExecution = !isBlockingExecution;
100#endif
101 };
102
103} // namespace grb
104
105#endif // end _H_GRB_PROPERTIES_BASE
106
This file contains a register of all backends that are either implemented, under implementation,...
Collection of various properties on the given ALP/GraphBLAS backend.
Definition: properties.hpp:52
static constexpr const bool isNonblockingExecution
Whether the given backend is non-blocking or is, instead, blocking.
Definition: properties.hpp:99
static constexpr const bool isBlockingExecution
Whether the given backend supports blocking execution or is, instead, non-blocking.
Definition: properties.hpp:84
static constexpr const bool writableCaptured
Whether a scalar, non-ALP/GraphBLAS object, may be captured by and written to by a lambda function th...
Definition: properties.hpp:72
The ALP/GraphBLAS namespace.
Definition: graphblas.hpp:452