Zeth - Zerocash on Ethereum  0.8
Reference implementation of the Zeth protocol by Clearmatics
command.hpp
Go to the documentation of this file.
1 // Copyright (c) 2015-2022 Clearmatics Technologies Ltd
2 //
3 // SPDX-License-Identifier: LGPL-3.0+
4 
5 #ifndef __ZETH_LIBTOOL_COMMAND_HPP__
6 #define __ZETH_LIBTOOL_COMMAND_HPP__
7 
8 #include "libtool/subcommand.hpp"
9 
10 namespace libtool
11 {
12 
14 template<typename GlobalOptionsT> class command
15 {
16 public:
18  virtual void initialize_global_options(
19  boost::program_options::options_description &global,
20  boost::program_options::options_description &all_options) = 0;
21 
23  virtual void parse_global_options(
24  GlobalOptionsT &out_options,
25  const boost::program_options::variables_map &vm) = 0;
26 };
27 
28 } // namespace libtool
29 
30 #endif // __ZETH_LIBTOOL_COMMAND_HPP__
libtool::command::initialize_global_options
virtual void initialize_global_options(boost::program_options::options_description &global, boost::program_options::options_description &all_options)=0
Set up global options which are valid for all subcommands.
libtool
Utilities that are likely to be useful for command line tools.
Definition: command.hpp:10
libtool::command::parse_global_options
virtual void parse_global_options(GlobalOptionsT &out_options, const boost::program_options::variables_map &vm)=0
Parse the variables map to update the GlobalOptionsT object.
libtool::command
Represents a top-level command, implementing parsing of global options.
Definition: command.hpp:14
subcommand.hpp