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

daisytuner / sdfglib / 17698271146

13 Sep 2025 03:06PM UTC coverage: 60.505% (+1.2%) from 59.335%
17698271146

push

github

web-flow
Merge pull request #219 from daisytuner/stdlib-nodes

stdlib Library Nodes and ConstantNodes

640 of 1885 new or added lines in 107 files covered. (33.95%)

107 existing lines in 40 files now uncovered.

9443 of 15607 relevant lines covered (60.5%)

106.96 hits per line

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

86.49
/src/codegen/dispatchers/while_dispatcher.cpp
1
#include "sdfg/codegen/dispatchers/while_dispatcher.h"
2

3
namespace sdfg {
4
namespace codegen {
5

6
WhileDispatcher::WhileDispatcher(
2✔
7
    LanguageExtension& language_extension,
8
    StructuredSDFG& sdfg,
9
    structured_control_flow::While& node,
10
    InstrumentationPlan& instrumentation_plan
11
)
12
    : NodeDispatcher(language_extension, sdfg, node, instrumentation_plan), node_(node) {
2✔
13

14
      };
2✔
15

16
void WhileDispatcher::dispatch_node(
1✔
17
    PrettyPrinter& main_stream, PrettyPrinter& globals_stream, CodeSnippetFactory& library_snippet_factory
18
) {
19
    main_stream << "while (1)" << std::endl;
1✔
20
    main_stream << "{" << std::endl;
1✔
21

22
    main_stream.setIndent(main_stream.indent() + 4);
1✔
23
    SequenceDispatcher dispatcher(language_extension_, sdfg_, node_.root(), instrumentation_plan_);
1✔
24
    dispatcher.dispatch(main_stream, globals_stream, library_snippet_factory);
1✔
25
    main_stream.setIndent(main_stream.indent() - 4);
1✔
26

27
    main_stream << "}" << std::endl;
1✔
28
};
1✔
29

30
BreakDispatcher::BreakDispatcher(
2✔
31
    LanguageExtension& language_extension,
32
    StructuredSDFG& sdfg,
33
    structured_control_flow::Break& node,
34
    InstrumentationPlan& instrumentation_plan
35
)
36
    : NodeDispatcher(language_extension, sdfg, node, instrumentation_plan), node_(node) {
2✔
37

38
      };
2✔
39

40
void BreakDispatcher::dispatch_node(
1✔
41
    PrettyPrinter& main_stream, PrettyPrinter& globals_stream, CodeSnippetFactory& library_snippet_factory
42
) {
43
    main_stream << "break;" << std::endl;
1✔
44
};
1✔
45

46
ContinueDispatcher::ContinueDispatcher(
2✔
47
    LanguageExtension& language_extension,
48
    StructuredSDFG& sdfg,
49
    structured_control_flow::Continue& node,
50
    InstrumentationPlan& instrumentation_plan
51
)
52
    : NodeDispatcher(language_extension, sdfg, node, instrumentation_plan), node_(node) {
2✔
53

54
      };
2✔
55

56
void ContinueDispatcher::dispatch_node(
1✔
57
    PrettyPrinter& main_stream, PrettyPrinter& globals_stream, CodeSnippetFactory& library_snippet_factory
58
) {
59
    main_stream << "continue;" << std::endl;
1✔
60
};
1✔
61

62
ReturnDispatcher::ReturnDispatcher(
2✔
63
    LanguageExtension& language_extension,
64
    StructuredSDFG& sdfg,
65
    structured_control_flow::Return& node,
66
    InstrumentationPlan& instrumentation_plan
67
)
68
    : NodeDispatcher(language_extension, sdfg, node, instrumentation_plan), node_(node) {
2✔
69

70
      };
2✔
71

72
void ReturnDispatcher::dispatch_node(
1✔
73
    PrettyPrinter& main_stream, PrettyPrinter& globals_stream, CodeSnippetFactory& library_snippet_factory
74
) {
75
    if (node_.unreachable()) {
1✔
NEW
76
        main_stream << "/* unreachable return */" << std::endl;
×
NEW
77
        return;
×
78
    }
79

80
    if (symbolic::is_nullptr(symbolic::symbol(node_.data()))) {
1✔
NEW
81
        main_stream << "return " << this->language_extension_.expression(symbolic::symbol(node_.data())) << ";"
×
NEW
82
                    << std::endl;
×
NEW
83
    } else {
×
84
        main_stream << "return " << node_.data() << ";" << std::endl;
1✔
85
    }
86
};
1✔
87

88
} // namespace codegen
89
} // 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

© 2026 Coveralls, Inc