aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/getopt/small/modchooser.h
diff options
context:
space:
mode:
authoramatanhead <amatanhead@yandex-team.ru>2022-02-10 16:50:04 +0300
committerDaniil Cherednik <dcherednik@yandex-team.ru>2022-02-10 16:50:04 +0300
commit8879605a63ac17539be5b3bd41b529791f4d4b02 (patch)
tree5739c7303cbe09d02b881e25bb294a4a173422a0 /library/cpp/getopt/small/modchooser.h
parent830fe7ae4073c2707f3f3138303ccc56052c0327 (diff)
downloadydb-8879605a63ac17539be5b3bd41b529791f4d4b02.tar.gz
Restoring authorship annotation for <amatanhead@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'library/cpp/getopt/small/modchooser.h')
-rw-r--r--library/cpp/getopt/small/modchooser.h142
1 files changed, 71 insertions, 71 deletions
diff --git a/library/cpp/getopt/small/modchooser.h b/library/cpp/getopt/small/modchooser.h
index 0a8de6d50b..95f5a5944e 100644
--- a/library/cpp/getopt/small/modchooser.h
+++ b/library/cpp/getopt/small/modchooser.h
@@ -1,7 +1,7 @@
#pragma once
-#include "last_getopt_opts.h"
-
+#include "last_getopt_opts.h"
+
#include <util/generic/map.h>
#include <util/generic/string.h>
#include <util/generic/vector.h>
@@ -60,12 +60,12 @@ public:
//! Set default mode (if not specified explicitly)
void SetDefaultMode(const TString& mode);
- void AddAlias(const TString& alias, const TString& mode);
-
+ void AddAlias(const TString& alias, const TString& mode);
+
//! Set main program description.
void SetDescription(const TString& descr);
- //! Set modes help option name (-? is by default)
+ //! Set modes help option name (-? is by default)
void SetModesHelpOption(const TString& helpOption);
//! Specify handler for '--version' parameter
@@ -83,7 +83,7 @@ public:
void DisableSvnRevisionOption();
void AddCompletions(TString progName, const TString& name = "completion", bool hidden = false, bool noCompletion = false);
-
+
/*! Run appropriate mode.
*
* In this method following things happen:
@@ -104,11 +104,11 @@ public:
struct TMode {
TString Name;
- TMainClass* Main;
+ TMainClass* Main;
TString Description;
bool Hidden;
bool NoCompletion;
- TVector<TString> Aliases;
+ TVector<TString> Aliases;
TMode()
: Main(nullptr)
@@ -116,24 +116,24 @@ public:
}
TMode(const TString& name, TMainClass* main, const TString& descr, bool hidden, bool noCompletion);
-
- // Full name includes primary name and aliases. Also, will add ANSI colors.
- size_t CalculateFullNameLen() const;
- TString FormatFullName(size_t pad) const;
+
+ // Full name includes primary name and aliases. Also, will add ANSI colors.
+ size_t CalculateFullNameLen() const;
+ TString FormatFullName(size_t pad) const;
};
- TVector<const TMode*> GetUnsortedModes() const {
- auto ret = TVector<const TMode*>(Reserve(UnsortedModes.size()));
- for (auto& mode : UnsortedModes) {
- ret.push_back(mode.Get());
- }
- return ret;
- }
-
- TVersionHandlerPtr GetVersionHandler() const;
-
- bool IsSvnRevisionOptionDisabled() const;
-
+ TVector<const TMode*> GetUnsortedModes() const {
+ auto ret = TVector<const TMode*>(Reserve(UnsortedModes.size()));
+ for (auto& mode : UnsortedModes) {
+ ret.push_back(mode.Get());
+ }
+ return ret;
+ }
+
+ TVersionHandlerPtr GetVersionHandler() const;
+
+ bool IsSvnRevisionOptionDisabled() const;
+
private:
//! Main program description.
TString Description;
@@ -142,10 +142,10 @@ private:
TString ModesHelpOption;
//! Wrappers around all modes.
- TVector<THolder<TMainClass>> Wrappers;
+ TVector<THolder<TMainClass>> Wrappers;
//! Modes
- TMap<TString, TMode*> Modes;
+ TMap<TString, TMode*> Modes;
TString DefaultMode;
@@ -165,51 +165,51 @@ private:
TString SeparationString;
//! Unsorted list of options
- TVector<THolder<TMode>> UnsortedModes;
-
- //! Mode that generates completions
- THolder<TMainClass> CompletionsGenerator;
+ TVector<THolder<TMode>> UnsortedModes;
+
+ //! Mode that generates completions
+ THolder<TMainClass> CompletionsGenerator;
};
-
-//! Mode class that allows introspecting its console arguments.
-class TMainClassArgs: public TMainClass {
-public:
+
+//! Mode class that allows introspecting its console arguments.
+class TMainClassArgs: public TMainClass {
+public:
int operator()(int argc, const char** argv) final;
-
-public:
- //! Run this mode.
- int Run(int argc, const char** argv);
-
- //! Get console arguments for this mode.
- const NLastGetopt::TOpts& GetOptions();
-
-protected:
- //! Fill given empty `TOpts` with options.
- virtual void RegisterOptions(NLastGetopt::TOpts& opts);
-
- //! Actual mode logic. Takes parsed options and returns exit code.
- virtual int DoRun(NLastGetopt::TOptsParseResult&& parsedOptions) = 0;
-
-private:
- TMaybe<NLastGetopt::TOpts> Opts_;
-};
-
-//! Mode class that uses sub-modes to dispatch commands further.
-class TMainClassModes: public TMainClass {
-public:
+
+public:
+ //! Run this mode.
+ int Run(int argc, const char** argv);
+
+ //! Get console arguments for this mode.
+ const NLastGetopt::TOpts& GetOptions();
+
+protected:
+ //! Fill given empty `TOpts` with options.
+ virtual void RegisterOptions(NLastGetopt::TOpts& opts);
+
+ //! Actual mode logic. Takes parsed options and returns exit code.
+ virtual int DoRun(NLastGetopt::TOptsParseResult&& parsedOptions) = 0;
+
+private:
+ TMaybe<NLastGetopt::TOpts> Opts_;
+};
+
+//! Mode class that uses sub-modes to dispatch commands further.
+class TMainClassModes: public TMainClass {
+public:
int operator()(int argc, const char** argv) final;
-
-public:
- //! Run this mode.
- int Run(int argc, const char** argv);
-
- //! Get sub-modes for this mode.
- const TModChooser& GetSubModes();
-
-protected:
- //! Fill given modchooser with sub-modes.
- virtual void RegisterModes(TModChooser& modes);
-
-private:
- TMaybe<TModChooser> Modes_;
-};
+
+public:
+ //! Run this mode.
+ int Run(int argc, const char** argv);
+
+ //! Get sub-modes for this mode.
+ const TModChooser& GetSubModes();
+
+protected:
+ //! Fill given modchooser with sub-modes.
+ virtual void RegisterModes(TModChooser& modes);
+
+private:
+ TMaybe<TModChooser> Modes_;
+};