diff options
Diffstat (limited to 'sinksh/syntax_modules/sink_clear.cpp')
-rw-r--r-- | sinksh/syntax_modules/sink_clear.cpp | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/sinksh/syntax_modules/sink_clear.cpp b/sinksh/syntax_modules/sink_clear.cpp index e676dd6..536e9df 100644 --- a/sinksh/syntax_modules/sink_clear.cpp +++ b/sinksh/syntax_modules/sink_clear.cpp | |||
@@ -35,10 +35,25 @@ | |||
35 | namespace SinkClear | 35 | namespace SinkClear |
36 | { | 36 | { |
37 | 37 | ||
38 | bool clear(const QStringList &args, State &state); | ||
39 | |||
40 | Syntax::List syntax() | ||
41 | { | ||
42 | Syntax clear("clear", QObject::tr("Clears the local cache of one or more resources (be careful!)"), &SinkClear::clear, Syntax::NotInteractive); | ||
43 | |||
44 | clear.addPositionalArgument({.name = "resource", .help = "The resource to clear"}); | ||
45 | |||
46 | clear.completer = &SinkshUtils::resourceCompleter; | ||
47 | |||
48 | return Syntax::List() << clear; | ||
49 | } | ||
50 | |||
51 | REGISTER_SYNTAX(SinkClear) | ||
52 | |||
38 | bool clear(const QStringList &args, State &state) | 53 | bool clear(const QStringList &args, State &state) |
39 | { | 54 | { |
40 | if (args.isEmpty()) { | 55 | if (args.isEmpty()) { |
41 | state.printError(QObject::tr("Please provide at least one resource to clear.")); | 56 | state.printError(syntax()[0].usage()); |
42 | return false; | 57 | return false; |
43 | } | 58 | } |
44 | for (const auto &resource : args) { | 59 | for (const auto &resource : args) { |
@@ -50,14 +65,4 @@ bool clear(const QStringList &args, State &state) | |||
50 | return true; | 65 | return true; |
51 | } | 66 | } |
52 | 67 | ||
53 | Syntax::List syntax() | ||
54 | { | ||
55 | Syntax clear("clear", QObject::tr("Clears the local cache of one or more resources (be careful!)"), &SinkClear::clear, Syntax::NotInteractive); | ||
56 | clear.completer = &SinkshUtils::resourceCompleter; | ||
57 | |||
58 | return Syntax::List() << clear; | ||
59 | } | ||
60 | |||
61 | REGISTER_SYNTAX(SinkClear) | ||
62 | |||
63 | } | 68 | } |