class Authorization::DevelopmentSupport::Analyzer

Ideas for improvement

Merge-able Rules: respect if_permitted_to hash

Public Instance Methods

analyze(rules) click to toggle source
# File lib/declarative_authorization/development_support/analyzer.rb, line 24
def analyze (rules)
  sexp_array = RubyParser.new.parse(rules)
  #sexp_array = ParseTree.translate(rules)
  @reports = []
  [MergeableRulesProcessor].each do |parser|
    parser.new(self).analyze(sexp_array)
  end
  [
    RoleExplosionAnalyzer, InheritingPrivilegesAnalyzer,
    ProposedPrivilegeHierarchyAnalyzer
  ].each do |parser|
    parser.new(self).analyze
  end
end
reports() click to toggle source
# File lib/declarative_authorization/development_support/analyzer.rb, line 39
def reports
  @reports or raise "No rules analyzed!"
end