• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

daisytuner / sdfglib / 16069945621

04 Jul 2025 08:56AM UTC coverage: 64.375% (-0.2%) from 64.606%
16069945621

push

github

web-flow
Merge pull request #137 from daisytuner/clang-format

runs clang-format on codebase

609 of 827 new or added lines in 63 files covered. (73.64%)

46 existing lines in 30 files now uncovered.

8578 of 13325 relevant lines covered (64.38%)

177.24 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

60.0
/src/data_flow/tasklet.cpp
1
#include "sdfg/data_flow/tasklet.h"
2

3
#include "sdfg/symbolic/symbolic.h"
4

5
namespace sdfg {
6
namespace data_flow {
7

8
Tasklet::Tasklet(
380✔
9
    size_t element_id,
10
    const DebugInfo& debug_info,
11
    const graph::Vertex vertex,
12
    DataFlowGraph& parent,
13
    const TaskletCode code,
14
    const std::pair<std::string, sdfg::types::Scalar>& output,
15
    const std::vector<std::pair<std::string, sdfg::types::Scalar>>& inputs,
16
    const symbolic::Condition& condition
17
)
18
    : CodeNode(element_id, debug_info, vertex, parent), code_(code), output_(output), inputs_(inputs),
760✔
19
      condition_(condition) {};
760✔
20

21
TaskletCode Tasklet::code() const { return this->code_; };
772✔
22

23
const std::vector<std::pair<std::string, sdfg::types::Scalar>>& Tasklet::inputs() const { return this->inputs_; };
447✔
24

25
std::vector<std::pair<std::string, sdfg::types::Scalar>>& Tasklet::inputs() { return this->inputs_; };
233✔
26

27
const std::pair<std::string, sdfg::types::Scalar>& Tasklet::output() const { return this->output_; };
595✔
28

29
const std::pair<std::string, sdfg::types::Scalar>& Tasklet::input(size_t index) const { return this->inputs_[index]; };
455✔
30

31
const sdfg::types::Scalar& Tasklet::input_type(const std::string& input) const {
×
NEW
32
    return std::find_if(
×
NEW
33
               this->inputs_.begin(),
×
NEW
34
               this->inputs_.end(),
×
NEW
35
               [&input](const std::pair<std::string, sdfg::types::Scalar>& p) { return p.first == input; }
×
NEW
36
    )->second;
×
37
};
38

39
bool Tasklet::needs_connector(size_t index) const {
229✔
40
    // Is non-constant, if starts with _in prefix
41
    if (this->inputs_[index].first.compare(0, 3, "_in") == 0) {
229✔
42
        return true;
17✔
43
    }
44
    return false;
212✔
45
};
229✔
46

47
const sdfg::types::Scalar& Tasklet::output_type() const { return this->output_.second; };
×
48

49
const symbolic::Condition& Tasklet::condition() const { return this->condition_; };
×
50

51
symbolic::Condition& Tasklet::condition() { return this->condition_; };
10✔
52

53
bool Tasklet::is_conditional() const { return !symbolic::is_true(this->condition_); };
246✔
54

NEW
55
std::unique_ptr<DataFlowNode> Tasklet::clone(size_t element_id, const graph::Vertex vertex, DataFlowGraph& parent)
×
56
    const {
NEW
57
    return std::unique_ptr<Tasklet>(new Tasklet(
×
NEW
58
        element_id, this->debug_info_, vertex, parent, this->code_, this->output_, this->inputs_, this->condition_
×
59
    ));
UNCOV
60
};
×
61

62
void Tasklet::replace(const symbolic::Expression& old_expression, const symbolic::Expression& new_expression) {
2✔
63
    this->condition_ = symbolic::subs(this->condition_, old_expression, new_expression);
2✔
64
};
2✔
65

66
} // namespace data_flow
67
} // namespace sdfg
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc