Sha256: 0fe1221b080351be652a00d4eb83914b1db9e4c638bd5f4a25710720019c3342
Contents?: true
Size: 645 Bytes
Versions: 10
Compression:
Stored size: 645 Bytes
Contents
module Roles::Generic::RoleUtil # extract role symbols from roles # should handle symbols, strings, arrays and Role instances def extract_roles *roles roles.flatten.map{|role| extract_role role}.compact end def extract_role role role = case role when Array role.flat_uniq.first else role end if defined?(Role) && role.kind_of?(Role) raise 'Role instances should have a #name method that reflects the role name' if !role.respond_to? :name return role.name.to_s.to_sym end case role when String, Symbol role.to_sym else nil end end extend self end
Version data entries
10 entries across 10 versions & 1 rubygems