| Line |
Branch |
Decision |
Call |
Exec |
Source |
| 1 |
|
|
|
|
#ifndef CHRYSALIS_BASEVALIDARGUMENT_H |
| 2 |
|
|
|
|
#define CHRYSALIS_BASEVALIDARGUMENT_H |
| 3 |
|
|
|
|
|
| 4 |
|
|
|
|
#include "BaseArgument.h" |
| 5 |
|
|
|
|
|
| 6 |
|
|
|
|
/** @defgroup Arguments Arguments |
| 7 |
|
|
|
|
* @{ |
| 8 |
|
|
|
|
*/ |
| 9 |
|
|
|
|
namespace Chrysalis { |
| 10 |
|
|
|
|
template<typename T> |
| 11 |
|
|
|
|
class Argument: public BaseArgument<T> { |
| 12 |
|
|
|
|
PROVIDE_SERIALIZATION_ACCESS_T(Argument) |
| 13 |
|
|
|
|
public: |
| 14 |
1/2
✓ Branch 10 taken 784 times.
✗ Branch 11 not taken.
|
|
12/17
✓ 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 not invoked.
✗ Call 13 not invoked.
✗ Call 14 not invoked.
✗ Call 15 not invoked.
✗ Call 16 not invoked.
|
1156 |
explicit Argument(const T& value): value_(value) {} |
| 15 |
|
|
|
|
|
| 16 |
|
|
|
1161 |
[[nodiscard]] std::expected<T, Error> get() const override { |
| 17 |
|
|
6/6
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
✓ Call 3 invoked.
✓ Call 4 invoked.
✓ Call 5 invoked.
|
1161 |
return value_; |
| 18 |
|
|
|
|
} |
| 19 |
|
|
|
2 |
void set(const T& value) { |
| 20 |
|
|
5/5
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
✓ Call 3 invoked.
✓ Call 4 invoked.
|
2 |
value_ = value; |
| 21 |
|
|
|
2 |
} |
| 22 |
|
|
|
|
private: |
| 23 |
|
|
|
|
T value_; |
| 24 |
|
|
|
|
}; |
| 25 |
3/7
✓ Branch 3 taken 244 times.
✓ Branch 4 taken 520 times.
✗ Branch 5 not taken.
✓ Branch 9 taken 520 times.
✗ Branch 10 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
|
|
10/12
✓ 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 11 invoked.
✗ Call 14 not invoked.
✗ Call 15 not invoked.
|
7168 |
SERIALIZE_DERIVED_CONSTRUCTION_T(Argument, BaseArgument, value_) |
| 26 |
|
|
|
|
namespace args { |
| 27 |
|
|
|
|
using name = std::unique_ptr<Argument<std::string>>; |
| 28 |
|
|
|
|
} |
| 29 |
|
|
|
|
} |
| 30 |
|
|
|
|
/**@}*/ |
| 31 |
|
|
|
|
|
| 32 |
|
|
|
|
#endif // CHRYSALIS_BASEVALIDARGUMENT_H |
| 33 |
|
|
|
|
|