Errors

fort::myrmidon::OverlappingIdentification

class OverlappingIdentification : public runtime_error

Exception when two Identification overlaps in time.

Two Identification overlaps in time if they have overlapping boundary and they either use the same TagID or targets the same Ant. This is an invariant condition that should never happen and modification that will break this invariant will throw this exception.

fort::myrmidon::FixableError

class FixableError : public runtime_error

Represents an error that could be potentially fixed.

Fixing the error will have most certainly drawbacks, otherwise it would be simpler not to raise anything and clear things up internally.

Subclassed by fort::myrmidon::FixableErrors

Public Types

typedef std::unique_ptr<FixableError> Ptr

A pointer to the error.

Public Functions

virtual std::string FixDescription() const noexcept = 0

Description of the fix.

Returns:

the description of the fix.

virtual void Fix() = 0

Fix the error.

typedef std::vector<FixableError::Ptr> fort::myrmidon::FixableErrorList

A list of FixableError.

class FixableErrors : public fort::myrmidon::FixableError

A collection of FixableError as a FixableError.

If you really need to see all the nifty detail, you can use Errors()

Public Functions

const FixableErrorList &Errors() const noexcept

Access indiviudal FixableError.

Returns:

the individual FixableError of this FixableErrors

virtual std::string FixDescription() const noexcept override

Description of the fix.

Returns:

the description of the fix.

virtual void Fix() override

Fix the error.