Sha256: c099607863c415d85e5b443e9821f4fb594f776ad91b30fddc6c9ccccee3077d
Contents?: true
Size: 769 Bytes
Versions: 1
Compression:
Stored size: 769 Bytes
Contents
# frozen_string_literal: true module Schienenzeppelin class Dependencies def initialize(addon, context) @addon = addon @context = context @options = context.options end def satisfied? @addon.dependencies.each do |dependency| return false unless dependencies_satisfied?(dependency) end true end private def dependencies_satisfied?(addon, visited = []) return false if @options["skip_#{addon}".to_sym] return true if @context.default_addons.include?(addon) visited << addon dependencies = AddOn.get(addon).dependencies - visited dependencies.each do |dependency| return false unless dependencies_satisfied?(dependency, visited) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
schienenzeppelin-0.2 | lib/schienenzeppelin/dependencies.rb |