Sha256: 265d1d2853f9605d5236475d2530adc6ae32be8dd639a64515ba58f2b2324a1c

Contents?: true

Size: 614 Bytes

Versions: 3

Compression:

Stored size: 614 Bytes

Contents

module Cardio
  class Mod
    # Methods used via "eval" in Modfiles
    module ModfileApi
      def mod mod_name, path=nil
        @dirs.add_mod mod_name, path
      end

      def gem_mod name
        deps = Mod.dependencies name
        unknown_gem_mod!(name) if deps.blank?
        deps.each { |spec| @dirs.add_gem_mod spec.name, spec.full_gem_path }
      end

      # load all gem mods
      def gem_mods
        @dirs.load_from_gemfile
      end

      private

      def unknown_gem_mod! name
        raise Card::Error, %(Unknown gem "#{name}". Make sure it is in your Gemfile.)
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
card-1.104.2 lib/cardio/mod/modfile_api.rb
card-1.104.1 lib/cardio/mod/modfile_api.rb
card-1.104.0 lib/cardio/mod/modfile_api.rb