Class: Rasti::App::Permission

Inherits:
String
  • Object
show all
Defined in:
lib/rasti/app/permission.rb

Constant Summary collapse

SEPARATOR =
'.'

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ Permission

Returns a new instance of Permission.



7
8
9
# File 'lib/rasti/app/permission.rb', line 7

def initialize(*args)
  super Array(args).flatten.map(&:to_s).join(SEPARATOR)
end

Instance Method Details

#include?(permission) ⇒ Boolean

Returns:

  • (Boolean)


11
12
13
14
# File 'lib/rasti/app/permission.rb', line 11

def include?(permission)
  other = Permission.new permission
  sections.count <= other.sections.count && self == other.sections.take(sections.count).join(SEPARATOR)
end

#last_sectionObject



20
21
22
# File 'lib/rasti/app/permission.rb', line 20

def last_section
  sections.last
end

#sectionsObject



16
17
18
# File 'lib/rasti/app/permission.rb', line 16

def sections
  split SEPARATOR
end