You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22 lines
460 B
22 lines
460 B
#pragma once |
|
#include "actiondep.h" |
|
#include "merrors.h" |
|
|
|
using michlib::message; |
|
using michlib::Error; |
|
|
|
template<class T> |
|
concept MirrorSupported = requires(T t, const CLArgs& args) { |
|
{ |
|
t.Mirror(args) |
|
} -> std::convertible_to<Error>; |
|
}; |
|
|
|
ADD_ACTION(Mirror, mirror, MirrorSupported<Source>); |
|
|
|
template<class D> MString ActionMirror::DoAction(const CLArgs& args, D& data) |
|
{ |
|
auto res = data.Mirror(args); |
|
if(!res) return "Mirroring failed"; |
|
return ""; |
|
};
|
|
|