| Line |
Branch |
Decision |
Call |
Exec |
Source |
| 1 |
|
|
|
|
#include "Expression.h" |
| 2 |
|
|
|
|
|
| 3 |
|
|
|
|
using namespace Chrysalis; |
| 4 |
|
|
|
|
|
| 5 |
|
|
|
13 |
ExpressionValue::operator double() const { |
| 6 |
|
|
1/1
|
13 |
return value; |
| 7 |
|
|
|
|
} |
| 8 |
|
|
|
|
|
| 9 |
|
|
1/1
|
3 |
Expression::Expression(const std::string& name, args::number&& expression) |
| 10 |
|
|
16/16
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
✓ Call 3 invoked.
✓ Call 4 invoked.
✓ Call 5 invoked.
✓ Call 6 invoked.
✓ Call 7 invoked.
✓ Call 8 invoked.
✓ Call 9 invoked.
✓ Call 10 invoked.
✓ Call 11 invoked.
✓ Call 12 invoked.
✓ Call 13 invoked.
✓ Call 14 invoked.
✓ Call 15 invoked.
|
3 |
: BaseNamedElement(name), expression_(std::move(expression)) {} |
| 11 |
|
|
|
|
|
| 12 |
|
|
|
3 |
std::expected<ExpressionValue, Error> Expression::calculate() const { |
| 13 |
1/2
✓ Branch 10 taken 3 times.
✗ Branch 11 not taken.
|
|
13/16
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
✓ Call 3 invoked.
✓ Call 4 invoked.
✓ Call 5 invoked.
✓ Call 6 invoked.
✓ Call 7 invoked.
✓ Call 8 invoked.
✓ Call 9 invoked.
✓ Call 12 invoked.
✓ Call 13 invoked.
✓ Call 14 invoked.
✗ Call 15 not invoked.
✗ Call 16 not invoked.
✗ Call 17 not invoked.
|
6 |
return expression_->get().transform([](const double value) { |
| 14 |
|
|
|
3 |
return ExpressionValue{value}; |
| 15 |
1/2
✓ Branch 4 taken 3 times.
✗ Branch 5 not taken.
|
|
4/4
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
✓ Call 3 invoked.
|
9 |
}); |
| 16 |
|
|
|
|
} |
| 17 |
|
|
|
|
|