module FChange::Native::Flags

def self.from_mask(mask)

Returns:
  • (Array) -

Parameters:
  • mask (Fixnum) --
def self.from_mask(mask)
  constants.map {|c| c.to_s}.select do |c|
    next false unless c =~ /^FILE_NOTIFY_CHANGE_/
    const_get(c) & mask != 0
  end.map {|c| c.sub("FILE_NOTIFY_CHANGE_", "").downcase.to_sym} - [:all_events]
end

def self.to_mask(flags)

Returns:
  • (Fixnum) -

Parameters:
  • flags (Array) --
def self.to_mask(flags)
  flags.map {|flag| const_get("FILE_NOTIFY_CHANGE_#{flag.to_s.upcase}")}.
    inject(0) {|mask, flag| mask | flag}
end