Class ConfusionProbabilityRule

    • Field Detail

      • confSetCache

        private static final com.google.common.cache.LoadingCache<java.lang.String,​java.util.Map<java.lang.String,​java.util.List<ConfusionPair>>> confSetCache
      • wordToPairs

        private final java.util.Map<java.lang.String,​java.util.List<ConfusionPair>> wordToPairs
      • grams

        private final int grams
      • language

        private final Language language
      • exceptions

        private final java.util.List<java.lang.String> exceptions
    • Constructor Detail

      • ConfusionProbabilityRule

        public ConfusionProbabilityRule​(java.util.ResourceBundle messages,
                                        LanguageModel languageModel,
                                        Language language)
      • ConfusionProbabilityRule

        public ConfusionProbabilityRule​(java.util.ResourceBundle messages,
                                        LanguageModel languageModel,
                                        Language language,
                                        int grams)
      • ConfusionProbabilityRule

        public ConfusionProbabilityRule​(java.util.ResourceBundle messages,
                                        LanguageModel languageModel,
                                        Language language,
                                        int grams,
                                        java.util.List<java.lang.String> exceptions)
        Since:
        4.7
    • Method Detail

      • getFilenames

        @NotNull
        protected @NotNull java.util.List<java.lang.String> getFilenames()
      • getId

        public java.lang.String getId()
        Description copied from class: Rule
        A string used to identify the rule in e.g. configuration files. This string is supposed to be unique and to stay the same in all upcoming versions of LanguageTool. It's supposed to contain only the characters A-Z and the underscore.
        Specified by:
        getId in class Rule
      • estimateContextForSureMatch

        public int estimateContextForSureMatch()
        Description copied from class: Rule
        A number that estimates how many words there must be after a match before we can be (relatively) sure the match is valid. This is useful for check-as-you-type, where a match might occur and the word that gets typed next makes the match disappear (something one would obviously like to avoid). Note: this may over-estimate the real context size. Returns -1 when the sentence needs to end to be sure there's a match.
        Overrides:
        estimateContextForSureMatch in class Rule
      • match

        public RuleMatch[] match​(AnalyzedSentence sentence)
        Description copied from class: Rule
        Check whether the given sentence matches this error rule, i.e. whether it contains the error detected by this rule. Note that the order in which this method is called is not always guaranteed, i.e. the sentence order in the text may be different than the order in which you get the sentences (this may be the case when LanguageTool is used as a LibreOffice/OpenOffice add-on, for example).
        Specified by:
        match in class Rule
        Parameters:
        sentence - a pre-analyzed sentence
        Returns:
        an array of RuleMatch objects
      • covers

        private boolean covers​(int exceptionStartPos,
                               int exceptionEndPos,
                               int startPos,
                               int endPos)
      • getSuggestions

        private java.util.List<java.lang.String> getSuggestions​(java.lang.String message)
      • isException

        protected boolean isException​(java.lang.String sentenceText)
        Return true to prevent a match.
      • getDescription

        public java.lang.String getDescription()
        Description copied from class: Rule
        A short description of the error this rule can detect, usually in the language of the text that is checked.
        Specified by:
        getDescription in class Rule
      • setConfusionPair

        public void setConfusionPair​(ConfusionPair pair)
        Deprecated.
        used only for tests
      • getNGrams

        public int getNGrams()
        Returns the ngram level used, typically 3.
        Since:
        3.1
      • getContext

        java.util.List<java.lang.String> getContext​(GoogleToken token,
                                                    java.util.List<GoogleToken> tokens,
                                                    java.lang.String newToken,
                                                    int toLeft,
                                                    int toRight)
      • debug

        private void debug​(java.lang.String message,
                           java.lang.Object... vars)