Interface IMentionable

All Superinterfaces:
Formattable, ISnowflake
All Known Subinterfaces:
AudioChannel, AudioChannelUnion, Category, Channel, ChannelUnion, Command, CustomEmoji, DefaultGuildChannelUnion, ForumChannel, GroupChannel, GuildChannel, GuildChannelUnion, GuildMessageChannel, GuildMessageChannelUnion, IAgeRestrictedChannel, ICategorizableChannel, ICommandReference, ICopyableChannel, IInviteContainer, IMemberContainer, IPermissionContainer, IPermissionContainerUnion, IPositionableChannel, IPostContainer, ISlowmodeChannel, IThreadContainer, IThreadContainerUnion, IVoiceStatusChannel, IWebhookContainer, IWebhookContainerUnion, MediaChannel, Member, MessageChannel, MessageChannelUnion, NewsChannel, PrivateChannel, RichCustomEmoji, Role, SelfUser, StageChannel, StandardGuildChannel, StandardGuildMessageChannel, TextChannel, ThreadChannel, ThreadMember, User, UserSnowflake, VoiceChannel, Widget.Member
All Known Implementing Classes:
Command.Subcommand, Command.SubcommandGroup, SlashCommandReference

public interface IMentionable extends Formattable, ISnowflake
Marks a mentionable entity.

Formattable
This interface extends Formattable and can be used with a Formatter such as used by String.format(String, Object...) or PrintStream.printf(String, Object...).

This will use getAsMention() rather than Object.toString()!
Supported Features:

  • Width/Left-Justification
    - Ensures the size of a format (Example: %20s - uses at minimum 20 chars; %-10s - uses left-justified padding)
  • Precision
    - Cuts the content to the specified size (Example: %.20s)

More information on formatting syntax can be found in the format syntax documentation!
Note: Some implementations also support the alternative flag.

Since:
3.0
  • Method Details

    • getAsMention

      @Nonnull String getAsMention()
      Retrieve a Mention for this Entity. For the public Role (@everyone), this will return the literal string "@everyone".
      Returns:
      A resolvable mention.
    • formatTo

      default void formatTo(Formatter formatter, int flags, int width, int precision)
      Specified by:
      formatTo in interface Formattable