Sha256: a00a93665f2bc14f67a20fff8c8d219adb4b0ecdc520f74b6f61d3eb34d822e2
Contents?: true
Size: 661 Bytes
Versions: 1
Compression:
Stored size: 661 Bytes
Contents
module CanTango module PermissionEngine module Parser class Ownership < Rule attr_reader :model_class, :owner def parse match = target[/(\w+)#(\w+)/] @target = match[$1] @owner = match[$2] @model_class = try_class build_ownership_dsl end protected def build_ownership_dsl raise "#{model_class} has no ##{owner}!" if !model_class.new.respond_to?(owner.to_sym) ownership_dsl_lines end def ownership_dsl_lines "#{owner.singularize}_of(#{target}).#{method} :#{action}" end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
cantango-0.8.0 | lib/cantango/permission_engine/parser/ownership.rb |