|  | D++ (DPP)
    C++ Discord API Bot Library | 
Represents a role within a dpp::guild. Roles are combined via logical OR of the permission bitmasks, then channel-specific overrides can be applied on top, deny types apply a logic NOT to the bit mask, and allows apply a logical OR. More...
#include <role.h>
 Inheritance diagram for dpp::role:
 Inheritance diagram for dpp::role: Collaboration diagram for dpp::role:
 Collaboration diagram for dpp::role:| Public Member Functions | |
| role () | |
| Construct a new role object.  More... | |
| virtual | ~role () | 
| Destroy the role object.  More... | |
| std::string | build_json (bool with_id=false) const | 
| Build a json string from this object.  More... | |
| role & | fill_from_json (snowflake guild_id, nlohmann::json *j) | 
| Fill this role from json.  More... | |
| members_container | get_members () const | 
| Get guild members who have this role.  More... | |
| bool | has_add_reactions () const | 
| True if has the add reactions permission.  More... | |
| bool | has_administrator () const | 
| True if has the administrator permission.  More... | |
| bool | has_attach_files () const | 
| True if has the attach files permission.  More... | |
| bool | has_ban_members () const | 
| True if has the ban members permission.  More... | |
| bool | has_change_nickname () const | 
| True if has the change nickname permission.  More... | |
| bool | has_connect () const | 
| True if has the connect voice permission.  More... | |
| bool | has_create_instant_invite () const | 
| True if has create instant invite permission.  More... | |
| bool | has_create_private_threads () const | 
| True if has the create private threads permission.  More... | |
| bool | has_create_public_threads () const | 
| True if has the create public threads permission.  More... | |
| bool | has_deafen_members () const | 
| True if has the deafen members permission.  More... | |
| bool | has_embed_links () const | 
| True if has the embed links permission.  More... | |
| bool | has_kick_members () const | 
| True if has create instant invite permission.  More... | |
| bool | has_manage_channels () const | 
| True if has the manage channels permission.  More... | |
| bool | has_manage_emojis_and_stickers () const | 
| True if has the manage emojis and stickers permission.  More... | |
| bool | has_manage_events () const | 
| True if has the manage events permission.  More... | |
| bool | has_manage_guild () const | 
| True if has the manage guild permission.  More... | |
| bool | has_manage_messages () const | 
| True if has the manage messages permission.  More... | |
| bool | has_manage_nicknames () const | 
| True if has the manage nicknames permission.  More... | |
| bool | has_manage_roles () const | 
| True if has the manage roles permission.  More... | |
| bool | has_manage_threads () const | 
| True if has the manage threads permission.  More... | |
| bool | has_manage_webhooks () const | 
| True if has the manage webhooks permission.  More... | |
| bool | has_mention_everyone () const | 
| True if has the mention @everyone and @here permission.  More... | |
| bool | has_move_members () const | 
| True if has the move members permission.  More... | |
| bool | has_mute_members () const | 
| True if has the mute members permission.  More... | |
| bool | has_priority_speaker () const | 
| True if has the priority speaker permission.  More... | |
| bool | has_read_message_history () const | 
| True if has the read message history permission.  More... | |
| bool | has_request_to_speak () const | 
| True if has the request to speak permission.  More... | |
| bool | has_send_messages () const | 
| True if has the send messages permission.  More... | |
| bool | has_send_messages_in_threads () const | 
| True if has the send messages in threads permission.  More... | |
| bool | has_send_tts_messages () const | 
| True if has the send TTS messages permission.  More... | |
| bool | has_speak () const | 
| True if has the speak permission.  More... | |
| bool | has_start_embedded_activities () const | 
| True if has the start embedded activities permission.  More... | |
| bool | has_stream () const | 
| True if has the stream permission.  More... | |
| bool | has_use_application_commands () const | 
| True if has the use application commands permission.  More... | |
| bool | has_use_external_emojis () const | 
| True if has the use external emojis permission.  More... | |
| bool | has_use_external_stickers () const | 
| True if has the use external stickers permission.  More... | |
| bool | has_use_vad () const | 
| bool | has_view_audit_log () const | 
| True if has the view audit log permission.  More... | |
| bool | has_view_channel () const | 
| True if has the view channel permission.  More... | |
| bool | has_view_guild_insights () const | 
| True if has the view guild insights permission.  More... | |
| bool | is_hoisted () const | 
| True if the role is hoisted.  More... | |
| bool | is_managed () const | 
| True if the role is managed (belongs to a bot or application)  More... | |
| bool | is_mentionable () const | 
| True if the role is mentionable.  More... | |
| role & | load_image (const std::string &image_blob, const image_type type) | 
| Load an image into the object as base64.  More... | |
| role & | set_bot_id (snowflake b) | 
| Set the bot id object.  More... | |
| role & | set_color (uint32_t c) | 
| Set the color object.  More... | |
| role & | set_colour (uint32_t c) | 
| Set the colour object.  More... | |
| role & | set_flags (uint8_t f) | 
| Set the flags object.  More... | |
| role & | set_guild_id (snowflake gid) | 
| Set the guild id object.  More... | |
| role & | set_integration_id (snowflake i) | 
| Set the integration id object.  More... | |
| role & | set_name (const std::string &n) | 
| Set the name of the role Maximum length: 100 Minimum length: 1.  More... | |
| Public Attributes | |
| snowflake | bot_id | 
| uint32_t | colour | 
| Role colour. A colour of 0 means no colour. If you want a black role, you must use the value 0x000001.  More... | |
| uint8_t | flags | 
| snowflake | guild_id | 
| Guild ID.  More... | |
| utility::iconhash | icon | 
| snowflake | id | 
| std::string * | image_data | 
| snowflake | integration_id | 
| std::string | name | 
| Role name Between 1 and 100 characters.  More... | |
| uint64_t | permissions | 
| uint8_t | position | 
| std::string | unicode_emoji | 
Represents a role within a dpp::guild. Roles are combined via logical OR of the permission bitmasks, then channel-specific overrides can be applied on top, deny types apply a logic NOT to the bit mask, and allows apply a logical OR.
| dpp::role::role | ( | ) | 
Construct a new role object.
| 
 | virtual | 
Destroy the role object.
| std::string dpp::role::build_json | ( | bool | with_id = false | ) | const | 
Build a json string from this object.
| with_id | true if the ID is to be included in the json text | 
| role & dpp::role::fill_from_json | ( | snowflake | guild_id, | 
| nlohmann::json * | j | ||
| ) | 
Fill this role from json.
| guild_id | the guild id to place in the json | 
| j | The json data | 
| members_container dpp::role::get_members | ( | ) | const | 
Get guild members who have this role.
| bool dpp::role::has_add_reactions | ( | ) | const | 
True if has the add reactions permission.
| bool dpp::role::has_administrator | ( | ) | const | 
True if has the administrator permission.
| bool dpp::role::has_attach_files | ( | ) | const | 
True if has the attach files permission.
| bool dpp::role::has_ban_members | ( | ) | const | 
True if has the ban members permission.
| bool dpp::role::has_change_nickname | ( | ) | const | 
True if has the change nickname permission.
| bool dpp::role::has_connect | ( | ) | const | 
True if has the connect voice permission.
| bool dpp::role::has_create_instant_invite | ( | ) | const | 
True if has create instant invite permission.
| bool dpp::role::has_create_private_threads | ( | ) | const | 
True if has the create private threads permission.
| bool dpp::role::has_create_public_threads | ( | ) | const | 
True if has the create public threads permission.
| bool dpp::role::has_deafen_members | ( | ) | const | 
True if has the deafen members permission.
| bool dpp::role::has_embed_links | ( | ) | const | 
True if has the embed links permission.
| bool dpp::role::has_kick_members | ( | ) | const | 
True if has create instant invite permission.
| bool dpp::role::has_manage_channels | ( | ) | const | 
True if has the manage channels permission.
| bool dpp::role::has_manage_emojis_and_stickers | ( | ) | const | 
True if has the manage emojis and stickers permission.
| bool dpp::role::has_manage_events | ( | ) | const | 
True if has the manage events permission.
| bool dpp::role::has_manage_guild | ( | ) | const | 
True if has the manage guild permission.
| bool dpp::role::has_manage_messages | ( | ) | const | 
True if has the manage messages permission.
| bool dpp::role::has_manage_nicknames | ( | ) | const | 
True if has the manage nicknames permission.
| bool dpp::role::has_manage_roles | ( | ) | const | 
True if has the manage roles permission.
| bool dpp::role::has_manage_threads | ( | ) | const | 
True if has the manage threads permission.
| bool dpp::role::has_manage_webhooks | ( | ) | const | 
True if has the manage webhooks permission.
| bool dpp::role::has_mention_everyone | ( | ) | const | 
True if has the mention @everyone and @here permission.
| bool dpp::role::has_move_members | ( | ) | const | 
True if has the move members permission.
| bool dpp::role::has_mute_members | ( | ) | const | 
True if has the mute members permission.
| bool dpp::role::has_priority_speaker | ( | ) | const | 
True if has the priority speaker permission.
| bool dpp::role::has_read_message_history | ( | ) | const | 
True if has the read message history permission.
| bool dpp::role::has_request_to_speak | ( | ) | const | 
True if has the request to speak permission.
| bool dpp::role::has_send_messages | ( | ) | const | 
True if has the send messages permission.
| bool dpp::role::has_send_messages_in_threads | ( | ) | const | 
True if has the send messages in threads permission.
| bool dpp::role::has_send_tts_messages | ( | ) | const | 
True if has the send TTS messages permission.
| bool dpp::role::has_speak | ( | ) | const | 
True if has the speak permission.
| bool dpp::role::has_start_embedded_activities | ( | ) | const | 
True if has the start embedded activities permission.
| bool dpp::role::has_stream | ( | ) | const | 
True if has the stream permission.
| bool dpp::role::has_use_application_commands | ( | ) | const | 
True if has the use application commands permission.
| bool dpp::role::has_use_external_emojis | ( | ) | const | 
True if has the use external emojis permission.
| bool dpp::role::has_use_external_stickers | ( | ) | const | 
True if has the use external stickers permission.
| bool dpp::role::has_use_vad | ( | ) | const | 
True if has use voice activity detection permission
| bool dpp::role::has_view_audit_log | ( | ) | const | 
True if has the view audit log permission.
| bool dpp::role::has_view_channel | ( | ) | const | 
True if has the view channel permission.
| bool dpp::role::has_view_guild_insights | ( | ) | const | 
True if has the view guild insights permission.
| bool dpp::role::is_hoisted | ( | ) | const | 
True if the role is hoisted.
| bool dpp::role::is_managed | ( | ) | const | 
True if the role is managed (belongs to a bot or application)
| bool dpp::role::is_mentionable | ( | ) | const | 
True if the role is mentionable.
| role & dpp::role::load_image | ( | const std::string & | image_blob, | 
| const image_type | type | ||
| ) | 
Load an image into the object as base64.
| image_blob | Image binary data | 
| type | Type of image | 
Set the bot id object.
| b | Bot ID to set | 
| role & dpp::role::set_color | ( | uint32_t | c | ) | 
Set the color object.
| c | Colour to set | 
| role & dpp::role::set_colour | ( | uint32_t | c | ) | 
Set the colour object.
| c | Colour to set | 
| role & dpp::role::set_flags | ( | uint8_t | f | ) | 
Set the flags object.
| f | Flags to set | 
Set the guild id object.
| gid | Guild ID to set | 
Set the integration id object.
| i | Integration ID to set | 
| role & dpp::role::set_name | ( | const std::string & | n | ) | 
Set the name of the role Maximum length: 100 Minimum length: 1.
| n | Name to set | 
| dpp::exception | thrown if role length is less than 1 character | 
| snowflake dpp::role::bot_id | 
Bot id if any (e.g. role is a bot's role created when it was invited)
| uint32_t dpp::role::colour | 
Role colour. A colour of 0 means no colour. If you want a black role, you must use the value 0x000001.
| uint8_t dpp::role::flags | 
Role flags from dpp::role_flags
| snowflake dpp::role::guild_id | 
Guild ID.
| utility::iconhash dpp::role::icon | 
The role icon hash, can be an empty string
| 
 | inherited | 
Unique ID of object
| std::string* dpp::role::image_data | 
Image data for the role icon (if any)
| snowflake dpp::role::integration_id | 
Integration id if any (e.g. role is a bot's role created when it was invited)
| std::string dpp::role::name | 
Role name Between 1 and 100 characters.
| uint64_t dpp::role::permissions | 
Role permissions bitmask values from dpp::role_permissions
| uint8_t dpp::role::position | 
Role position
| std::string dpp::role::unicode_emoji | 
The unicode emoji used for the role's icon, can be an empty string