summaryrefslogtreecommitdiffstats
path: root/sinksh/syntax_modules/sink_drop.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'sinksh/syntax_modules/sink_drop.cpp')
-rw-r--r--sinksh/syntax_modules/sink_drop.cpp24
1 files changed, 14 insertions, 10 deletions
diff --git a/sinksh/syntax_modules/sink_drop.cpp b/sinksh/syntax_modules/sink_drop.cpp
index 3b9a817..2353ed1 100644
--- a/sinksh/syntax_modules/sink_drop.cpp
+++ b/sinksh/syntax_modules/sink_drop.cpp
@@ -35,10 +35,23 @@
35namespace SinkDrop 35namespace SinkDrop
36{ 36{
37 37
38bool drop(const QStringList &args, State &state);
39
40Syntax::List syntax()
41{
42 Syntax drop("drop", QObject::tr("Drop all caches of a resource."), &SinkDrop::drop, Syntax::NotInteractive);
43 drop.addPositionalArgument({.name = "resource", .help = "Id(s) of the resource(s) to drop", .required = true, .variadic = true});
44
45 drop.completer = &SinkshUtils::resourceOrTypeCompleter;
46 return Syntax::List() << drop;
47}
48
49REGISTER_SYNTAX(SinkDrop)
50
38bool drop(const QStringList &args, State &state) 51bool drop(const QStringList &args, State &state)
39{ 52{
40 if (args.isEmpty()) { 53 if (args.isEmpty()) {
41 state.printError(QObject::tr("Please provide at least one resource to drop.")); 54 state.printError(syntax()[0].usage());
42 return false; 55 return false;
43 } 56 }
44 57
@@ -57,13 +70,4 @@ bool drop(const QStringList &args, State &state)
57 return false; 70 return false;
58} 71}
59 72
60Syntax::List syntax()
61{
62 Syntax drop("drop", QObject::tr("Drop all caches of a resource."), &SinkDrop::drop, Syntax::NotInteractive);
63 drop.completer = &SinkshUtils::resourceOrTypeCompleter;
64 return Syntax::List() << drop;
65}
66
67REGISTER_SYNTAX(SinkDrop)
68
69} 73}