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.
17 lines
1.4 KiB
17 lines
1.4 KiB
1 year ago
|
#pragma once
|
||
|
#include "ParseArgs.h"
|
||
|
#include "traits.h"
|
||
|
|
||
|
#if defined GENACTIONLIST
|
||
|
#define ADD_ACTION(actclass, actname, suptest) ADD ACTION CLASS: actclass
|
||
|
#else
|
||
|
#define ADD_ACTION(actclass, actname, suptest) \
|
||
|
class Action##actclass \
|
||
|
{ \
|
||
|
public: \
|
||
|
static constexpr const char* name = #actname; \
|
||
|
template<class Source> static constexpr bool IsSupported = (suptest); \
|
||
|
template<class Source> static MString DoAction(const CLArgs& args, Source& data); \
|
||
|
};
|
||
|
#endif
|