#include <CscCommandMetadataBuilder.h>
Conscience's Command module requires knowing metadata of available commands. It requires knowledge of their inputs types / output types and other side metadata like COMMAND_ID In order to collect such metadata, this metadata builder will rely on command header files (.h / .hpp) It will parse command headers and retrieve :
- COMMAND_ID from the inline static const string COMMAND_ID field
- Input params and types from constructor (and follow type references tree)
- Output type from doExecute return type (which CscCommandExecutionResult subclass is used, and which generic type if user-defined object or list of objects)
- Documentation from class and constructor
- See also
- CscCommandMetadataCacheBuilder
-
CscCommandDataTypeNodeMetadata
-
CscCommandDataTypeMetadata
◆ CscCommandMetadataBuilder()
| conscience_core::bridging::commands::metadata::CscCommandMetadataBuilder::CscCommandMetadataBuilder |
( |
| ) |
|
◆ ~CscCommandMetadataBuilder()
| conscience_core::bridging::commands::metadata::CscCommandMetadataBuilder::~CscCommandMetadataBuilder |
( |
| ) |
|
|
virtual |
◆ generateAllCommandMetadataFromCommandHeadersDir()
| void conscience_core::bridging::commands::metadata::CscCommandMetadataBuilder::generateAllCommandMetadataFromCommandHeadersDir |
( |
const fs::path & |
commandsDir, |
|
|
const vector< fs::path > & |
excludedHeaderFiles, |
|
|
const optional< fs::path > & |
cachePath = {} |
|
) |
| |
- Parameters
-
| commandsDir | command headers to be parsed |
| excludedHeaderFiles | command headers to be ignored |
| cachePath | if not empty, cache will be read from this file, and refreshed with new commands metadata |
◆ generateCommandMetadataForHeader()
◆ generateCommandMetadataFromCommandHeaders()
| void conscience_core::bridging::commands::metadata::CscCommandMetadataBuilder::generateCommandMetadataFromCommandHeaders |
( |
const vector< fs::path > & |
commandsHeaders, |
|
|
const vector< fs::path > & |
excludedHeaderFiles, |
|
|
const optional< fs::path > & |
cachePath = {} |
|
) |
| |
- Parameters
-
| commandsHeaders | command headers to be parsed |
| excludedHeaderFiles | command headers to be ignored |
| cachePath | if not empty, cache will be read from this file, and refreshed with new commands metadata |
◆ getInstance()
◆ restoreCommandMetadataFromCacheFile()
| vector< fs::path > conscience_core::bridging::commands::metadata::CscCommandMetadataBuilder::restoreCommandMetadataFromCacheFile |
( |
const fs::path & |
cacheFile | ) |
|
- Returns
- unmodified header files
The documentation for this class was generated from the following files: