class Discordrb::AllowedMentions

Builder class for ‘allowed_mentions` when sending messages.

Attributes

parse[RW]

@return [Array<“users”, “roles”, “everyone”>, nil]

roles[RW]

@return [Array<String, Integer>, nil]

users[RW]

@return [Array<String, Integer>, nil]

Public Class Methods

new(parse: nil, users: nil, roles: nil) click to toggle source

@param parse [Array<“users”, “roles”, “everyone”>] Mention types that can be inferred from the message.

`users` and `roles` allow for all mentions of the respective type to ping. `everyone` allows usage of `@everyone` and `@here`

@param users [Array<User, String, Integer>] Users or user IDs that can be pinged. Cannot be used in conjunction with ‘“users”` in `parse` @param roles [Array<Role, String, Integer>] Roles or role IDs that can be pinged. Cannot be used in conjunction with `“roles”` in `parse`

# File lib/discordrb/allowed_mentions.rb, line 21
def initialize(parse: nil, users: nil, roles: nil)
  @parse = parse
  @users = users
  @roles = roles
end

Public Instance Methods

to_hash() click to toggle source

@!visibility private

# File lib/discordrb/allowed_mentions.rb, line 28
def to_hash
  {
    parse: @parse,
    users: @users&.map { |user| user.is_a?(IDObject) ? user.id : user },
    roles: @roles&.map { |role| role.is_a?(IDObject) ? role.id : role }
  }.compact
end