Interface TextReplacementConfig.Builder

All Superinterfaces:
AbstractBuilder<TextReplacementConfig>
Enclosing interface:
TextReplacementConfig

public static sealed interface TextReplacementConfig.Builder extends AbstractBuilder<TextReplacementConfig>
A builder for replacement configurations.
Since:
4.2.0
  • Method Details

    • matchLiteral

      @Contract("_ -> this") default TextReplacementConfig.Builder matchLiteral(String literal)
      Set this builder to match only the literal string provided.

      This will NOT be parsed as a regular expression.

      Parameters:
      literal - the literal string to match
      Returns:
      this builder
      Since:
      4.2.0
    • match

      @Contract("_ -> this") default TextReplacementConfig.Builder match(@RegExp String pattern)
      Compile the provided input as a Pattern and set it as the match to test against.
      Parameters:
      pattern - the regex pattern to match
      Returns:
      this builder
      Since:
      4.2.0
    • match

      @Contract("_ -> this") TextReplacementConfig.Builder match(Pattern pattern)
      Match the provided Pattern.
      Parameters:
      pattern - pattern to find in any searched components
      Returns:
      this builder
      Since:
      4.2.0
    • once

      Only replace the first occurrence of the matched pattern.
      Returns:
      this builder
      Since:
      4.2.0
    • times

      @Contract("_ -> this") default TextReplacementConfig.Builder times(int times)
      Only replace the first times matches of the pattern.
      Parameters:
      times - maximum amount of matches to process
      Returns:
      this builder
      Since:
      4.2.0
    • condition

      @Contract("_ -> this") default TextReplacementConfig.Builder condition(IntFunction2<PatternReplacementResult> condition)
      Set the function to determine how an individual match should be processed.
      Parameters:
      condition - a function of (matchCount, replaced) used to determine if matches should be replaced, where "matchCount" is the number of matches that have been found, including the current one, and "replaced" is the number of successful replacements.
      Returns:
      this builder
      Since:
      4.2.0
    • condition

      @Contract("_ -> this") TextReplacementConfig.Builder condition(TextReplacementConfig.Condition condition)
      Set the function to determine how an individual match should be processed.
      Parameters:
      condition - a function that determines whether a replacement should occur
      Returns:
      this builder
      Since:
      4.8.0
      See Also:
    • replacement

      @Contract("_ -> this") default TextReplacementConfig.Builder replacement(String replacement)
      Supply a literal replacement for the matched pattern.
      Parameters:
      replacement - the replacement
      Returns:
      this builder
      Since:
      4.2.0
    • replacement

      @Contract("_ -> this") default TextReplacementConfig.Builder replacement(@Nullable ComponentLike replacement)
      Supply a literal replacement for the matched pattern.
      Parameters:
      replacement - the replacement
      Returns:
      this builder
      Since:
      4.2.0
    • replacement

      @Contract("_ -> this") default TextReplacementConfig.Builder replacement(Function<TextComponent.Builder, @Nullable ComponentLike> replacement)
      Supply a function that provides replacements for each match.
      Parameters:
      replacement - the replacement function
      Returns:
      this builder
      Since:
      4.2.0
    • replacement

      @Contract("_ -> this") TextReplacementConfig.Builder replacement(BiFunction<MatchResult, TextComponent.Builder, @Nullable ComponentLike> replacement)
      Supply a function that provides replacements for each match, with access to group information.
      Parameters:
      replacement - the replacement function, taking a match result and a text component pre-populated with
      Returns:
      this builder
      Since:
      4.2.0
    • replaceInsideHoverEvents

      @Contract("_ -> this") TextReplacementConfig.Builder replaceInsideHoverEvents(boolean replace)
      Set if the replacement should replace inside hover events.

      This defaults to true.

      Parameters:
      replace - if it should replace inside hover events
      Returns:
      this builder
      Since:
      4.19.0