Class CompletionMatcherImpl

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private boolean caseInsensitive  
      protected java.util.function.Predicate<java.lang.String> exact  
      protected java.util.List<java.util.function.Function<java.util.Map<java.lang.String,​java.util.List<Candidate>>,​java.util.Map<java.lang.String,​java.util.List<Candidate>>>> matchers  
      private java.util.Map<java.lang.String,​java.util.List<Candidate>> matching  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected boolean camelMatch​(java.lang.String word, int i, java.lang.String candidate, int j)  
      void compile​(java.util.Map<LineReader.Option,​java.lang.Boolean> options, boolean prefix, CompletingParsedLine line, boolean caseInsensitive, int errors, java.lang.String originalGroupName)
      Compiles completion matcher functions
      protected void defaultMatchers​(java.util.Map<LineReader.Option,​java.lang.Boolean> options, boolean prefix, CompletingParsedLine line, boolean caseInsensitive, int errors, java.lang.String originalGroupName)
      Default JLine matchers
      Candidate exactMatch()  
      java.lang.String getCommonPrefix()  
      private java.lang.String getCommonStart​(java.lang.String str1, java.lang.String str2, boolean caseInsensitive)  
      java.util.List<Candidate> matches​(java.util.List<Candidate> candidates)  
      protected void reset​(boolean caseInsensitive)  
      protected java.util.function.Function<java.util.Map<java.lang.String,​java.util.List<Candidate>>,​java.util.Map<java.lang.String,​java.util.List<Candidate>>> simpleMatcher​(java.util.function.Predicate<java.lang.String> predicate)  
      private java.util.Map<java.lang.String,​java.util.List<Candidate>> sort​(java.util.List<Candidate> candidates)  
      protected java.util.function.Function<java.util.Map<java.lang.String,​java.util.List<Candidate>>,​java.util.Map<java.lang.String,​java.util.List<Candidate>>> typoMatcher​(java.lang.String word, int errors, boolean caseInsensitive, java.lang.String originalGroupName)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • exact

        protected java.util.function.Predicate<java.lang.String> exact
      • matchers

        protected java.util.List<java.util.function.Function<java.util.Map<java.lang.String,​java.util.List<Candidate>>,​java.util.Map<java.lang.String,​java.util.List<Candidate>>>> matchers
      • matching

        private java.util.Map<java.lang.String,​java.util.List<Candidate>> matching
      • caseInsensitive

        private boolean caseInsensitive
    • Constructor Detail

      • CompletionMatcherImpl

        public CompletionMatcherImpl()
    • Method Detail

      • reset

        protected void reset​(boolean caseInsensitive)
      • compile

        public void compile​(java.util.Map<LineReader.Option,​java.lang.Boolean> options,
                            boolean prefix,
                            CompletingParsedLine line,
                            boolean caseInsensitive,
                            int errors,
                            java.lang.String originalGroupName)
        Description copied from interface: CompletionMatcher
        Compiles completion matcher functions
        Specified by:
        compile in interface CompletionMatcher
        Parameters:
        options - LineReader options
        prefix - invoked by complete-prefix or expand-or-complete-prefix widget
        line - The parsed line within which completion has been requested
        caseInsensitive - if completion is case insensitive or not
        errors - number of errors accepted in matching
        originalGroupName - value of JLineReader variable original-group-name
      • matches

        public java.util.List<Candidate> matches​(java.util.List<Candidate> candidates)
        Specified by:
        matches in interface CompletionMatcher
        Parameters:
        candidates - list of candidates
        Returns:
        a map of candidates that completion matcher matches
      • getCommonPrefix

        public java.lang.String getCommonPrefix()
        Specified by:
        getCommonPrefix in interface CompletionMatcher
        Returns:
        a common prefix of matched candidates
      • defaultMatchers

        protected void defaultMatchers​(java.util.Map<LineReader.Option,​java.lang.Boolean> options,
                                       boolean prefix,
                                       CompletingParsedLine line,
                                       boolean caseInsensitive,
                                       int errors,
                                       java.lang.String originalGroupName)
        Default JLine matchers
      • simpleMatcher

        protected java.util.function.Function<java.util.Map<java.lang.String,​java.util.List<Candidate>>,​java.util.Map<java.lang.String,​java.util.List<Candidate>>> simpleMatcher​(java.util.function.Predicate<java.lang.String> predicate)
      • typoMatcher

        protected java.util.function.Function<java.util.Map<java.lang.String,​java.util.List<Candidate>>,​java.util.Map<java.lang.String,​java.util.List<Candidate>>> typoMatcher​(java.lang.String word,
                                                                                                                                                                                                 int errors,
                                                                                                                                                                                                 boolean caseInsensitive,
                                                                                                                                                                                                 java.lang.String originalGroupName)
      • camelMatch

        protected boolean camelMatch​(java.lang.String word,
                                     int i,
                                     java.lang.String candidate,
                                     int j)
      • sort

        private java.util.Map<java.lang.String,​java.util.List<Candidate>> sort​(java.util.List<Candidate> candidates)
      • getCommonStart

        private java.lang.String getCommonStart​(java.lang.String str1,
                                                java.lang.String str2,
                                                boolean caseInsensitive)