discordUserFlagsAsEnum function

List<DiscordUserFlag> discordUserFlagsAsEnum(
  1. int? flags
)

Implementation

List<DiscordUserFlag> discordUserFlagsAsEnum(int? flags) {
  if (flags == null || flags == 0) {
    return [DiscordUserFlag.none];
  }
  final f = <DiscordUserFlag>[];
  final radixString =
      String.fromCharCodes(flags.toRadixString(2).runes.toList().reversed);
  _addPublicFlagAsEnum(
    radixString,
    0,
    DiscordUserFlag.staff,
    f,
  );
  _addPublicFlagAsEnum(
    radixString,
    1,
    DiscordUserFlag.partner,
    f,
  );
  _addPublicFlagAsEnum(
    radixString,
    2,
    DiscordUserFlag.hypesquad,
    f,
  );
  _addPublicFlagAsEnum(
    radixString,
    3,
    DiscordUserFlag.bugHunterLevel1,
    f,
  );
  _addPublicFlagAsEnum(
    radixString,
    6,
    DiscordUserFlag.hypesquadOnlineHouse1,
    f,
  );
  _addPublicFlagAsEnum(
    radixString,
    7,
    DiscordUserFlag.hypesquadOnlineHouse2,
    f,
  );
  _addPublicFlagAsEnum(
    radixString,
    8,
    DiscordUserFlag.hypesquadOnlineHouse3,
    f,
  );
  _addPublicFlagAsEnum(
    radixString,
    9,
    DiscordUserFlag.premiumEarlySupporter,
    f,
  );
  _addPublicFlagAsEnum(
    radixString,
    10,
    DiscordUserFlag.teamPseudoUser,
    f,
  );
  _addPublicFlagAsEnum(
    radixString,
    14,
    DiscordUserFlag.bugHunterLevel2,
    f,
  );
  _addPublicFlagAsEnum(
    radixString,
    16,
    DiscordUserFlag.verifiedBot,
    f,
  );
  _addPublicFlagAsEnum(
    radixString,
    17,
    DiscordUserFlag.verifiedDeveloper,
    f,
  );
  _addPublicFlagAsEnum(
    radixString,
    18,
    DiscordUserFlag.certifiedModerator,
    f,
  );
  _addPublicFlagAsEnum(
    radixString,
    19,
    DiscordUserFlag.botHttpInteractions,
    f,
  );
  return f;
}