class MijDiscord::Data::Permissions
Constants
- FLAGS
Attributes
bits[R]
to_i[R]
Public Class Methods
bits(list)
click to toggle source
# File lib/mij-discord/data/permissions.rb, line 40 def self.bits(list) FLAGS.map {|bit, name| list.include?(name) ? bit : 0 }.reduce(&:|) end
flags(bits)
click to toggle source
# File lib/mij-discord/data/permissions.rb, line 44 def self.flags(bits) Set.new(FLAGS.map {|bit, name| (bits & bit).zero? ? nil : name }.reject(&:nil?)) end
new(bits = 0)
click to toggle source
# File lib/mij-discord/data/permissions.rb, line 64 def initialize(bits = 0) set_bits(bits) end
Public Instance Methods
flags()
click to toggle source
# File lib/mij-discord/data/permissions.rb, line 79 def flags Permissions.flags(@bits) end
inspect()
click to toggle source
# File lib/mij-discord/data/permissions.rb, line 83 def inspect %(#<Permissions #{flags.to_a}>) end
set_bits(bits)
click to toggle source
# File lib/mij-discord/data/permissions.rb, line 68 def set_bits(bits) @bits = bits.is_a?(Array) ? Permissions.bits(bits) : bits FLAGS.each do |bit, name| flag = !(@bits & bit).zero? instance_variable_set "@#{name}", flag end end
Also aliased as: bits=