1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00

sort: handle .sort(a.field > b.field)

This commit is contained in:
Alexander Medvednikov
2020-08-12 06:11:40 +02:00
parent 4bc0dde413
commit e5e31f7210
7 changed files with 55 additions and 14 deletions

View File

@@ -109,10 +109,10 @@ pub fn (mut cmd Command) parse(args []string) {
}
cmd.add_default_commands()
if cmd.sort_flags {
cmd.flags.sort()
cmd.flags.sort(a.name < b.name)
}
if cmd.sort_commands {
cmd.commands.sort()
cmd.commands.sort(a.name < b.name)
}
cmd.args = args[1..]
for i in 0 .. cmd.commands.len {
@@ -286,8 +286,3 @@ fn (cmds []Command) contains(name string) bool {
return false
}
fn (mut cmds []Command) sort() {
cmds.sort_with_compare(fn (a, b &Command) int {
return compare_strings(&a.name, &b.name)
})
}

View File

@@ -56,7 +56,7 @@ fn flag_should_be_set(cmd cli.Command) ? {
flag := cmd.flags.get_string('flag')?
assert flag == 'value'
}
fn test_if_flag_gets_set() {
mut cmd := cli.Command{
name: 'command'

View File

@@ -183,8 +183,3 @@ fn (flags []Flag) contains(name string) bool {
return false
}
fn (mut flags []Flag) sort() {
flags.sort_with_compare(fn (a, b &Flag) int {
return compare_strings(&a.name, &b.name)
})
}