From 733b3e16fc99420a169ecb803bf8c999b07c4a41 Mon Sep 17 00:00:00 2001 From: mattirn Date: Tue, 19 Nov 2019 19:50:48 +0100 Subject: [PATCH] Builtins: do not create a new NullCompleters use NullCompleter.INSTANCE --- .../src/main/java/org/jline/builtins/Builtins.java | 14 +++++++------- .../main/java/org/jline/builtins/Completers.java | 2 ++ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/builtins/src/main/java/org/jline/builtins/Builtins.java b/builtins/src/main/java/org/jline/builtins/Builtins.java index 088821937..e2428decb 100644 --- a/builtins/src/main/java/org/jline/builtins/Builtins.java +++ b/builtins/src/main/java/org/jline/builtins/Builtins.java @@ -389,25 +389,25 @@ private List lessCompleter(String name) { private List historyCompleter(String name) { List completers = new ArrayList<>(); completers.add(new ArgumentCompleter(new StringsCompleter(name) - , new OptionCompleter(new NullCompleter() + , new OptionCompleter(NullCompleter.INSTANCE , this::commandOptions , 1) )); completers.add(new ArgumentCompleter(new StringsCompleter(name) - , new StringsCompleter(Arrays.asList("-A", "-W", "-R", "-AI", "-RI", "-WI")), new FilesCompleter(workDir.get(), true), new NullCompleter())); + , new StringsCompleter(Arrays.asList("-A", "-W", "-R", "-AI", "-RI", "-WI")), new FilesCompleter(workDir.get(), true), NullCompleter.INSTANCE)); return completers; } private List widgetCompleter(String name) { List completers = new ArrayList<>(); completers.add(new ArgumentCompleter(new StringsCompleter(name) - , new OptionCompleter(new NullCompleter() + , new OptionCompleter(NullCompleter.INSTANCE , this::commandOptions , 1) )); completers.add(new ArgumentCompleter(new StringsCompleter(name) , new StringsCompleter("-A"), new StringsCompleter(() -> allWidgets()) - , new StringsCompleter(() -> reader.getWidgets().keySet()), new NullCompleter())); + , new StringsCompleter(() -> reader.getWidgets().keySet()), NullCompleter.INSTANCE)); completers.add(new ArgumentCompleter(new StringsCompleter(name) , new StringsCompleter("-D"), new StringsCompleter(() -> reader.getWidgets().keySet()))); return completers; @@ -416,7 +416,7 @@ private List widgetCompleter(String name) { private List keymapCompleter(String name) { List completers = new ArrayList<>(); completers.add(new ArgumentCompleter(new StringsCompleter(name) - , new OptionCompleter(new NullCompleter() + , new OptionCompleter(NullCompleter.INSTANCE , this::commandOptions , 1) )); @@ -426,7 +426,7 @@ private List keymapCompleter(String name) { private List setvarCompleter(String name) { List completers = new ArrayList<>(); completers.add(new ArgumentCompleter(new StringsCompleter(name) - , new StringsCompleter(() -> reader.getVariables().keySet()), new NullCompleter())); + , new StringsCompleter(() -> reader.getVariables().keySet()), NullCompleter.INSTANCE)); return completers; } @@ -447,7 +447,7 @@ private List unsetoptCompleter(String name) { private List ttopCompleter(String name) { List completers = new ArrayList<>(); completers.add(new ArgumentCompleter(new StringsCompleter(name) - , new OptionCompleter(new NullCompleter() + , new OptionCompleter(NullCompleter.INSTANCE , this::commandOptions , 1) )); diff --git a/builtins/src/main/java/org/jline/builtins/Completers.java b/builtins/src/main/java/org/jline/builtins/Completers.java index c724a2b57..15d4cb660 100644 --- a/builtins/src/main/java/org/jline/builtins/Completers.java +++ b/builtins/src/main/java/org/jline/builtins/Completers.java @@ -792,6 +792,8 @@ public void complete(LineReader reader, final ParsedLine commandLine, List