Class: Tapioca::Gemfile
- Inherits:
-
Object
- Object
- Tapioca::Gemfile
- Extended by:
- T::Sig
- Defined in:
- lib/tapioca/gemfile.rb
Defined Under Namespace
Modules: AutoRequireHook Classes: GemSpec
Constant Summary collapse
- Spec =
T.type_alias do T.any( ::Bundler::StubSpecification, ::Gem::Specification ) end
Instance Attribute Summary collapse
-
#definition ⇒ Object
readonly
Returns the value of attribute definition.
-
#dependencies ⇒ Object
readonly
Returns the value of attribute dependencies.
-
#missing_specs ⇒ Object
readonly
Returns the value of attribute missing_specs.
Instance Method Summary collapse
- #gem(gem_name) ⇒ Object
-
#initialize(exclude) ⇒ Gemfile
constructor
A new instance of Gemfile.
- #require_bundle ⇒ Object
Constructor Details
#initialize(exclude) ⇒ Gemfile
Returns a new instance of Gemfile.
73 74 75 76 77 78 79 80 81 |
# File 'lib/tapioca/gemfile.rb', line 73 def initialize(exclude) AutoRequireHook.exclude = exclude @gemfile = T.let(File.new(Bundler.default_gemfile), File) @lockfile = T.let(File.new(Bundler.default_lockfile), File) @definition = T.let(Bundler::Dsl.evaluate(gemfile, lockfile, {}), Bundler::Definition) dependencies, missing_specs = load_dependencies @dependencies = T.let(dependencies, T::Array[GemSpec]) @missing_specs = T.let(missing_specs, T::Array[String]) end |
Instance Attribute Details
#definition ⇒ Object (readonly)
Returns the value of attribute definition.
64 65 66 |
# File 'lib/tapioca/gemfile.rb', line 64 def definition @definition end |
#dependencies ⇒ Object (readonly)
Returns the value of attribute dependencies.
67 68 69 |
# File 'lib/tapioca/gemfile.rb', line 67 def dependencies @dependencies end |
#missing_specs ⇒ Object (readonly)
Returns the value of attribute missing_specs.
70 71 72 |
# File 'lib/tapioca/gemfile.rb', line 70 def missing_specs @missing_specs end |
Instance Method Details
#gem(gem_name) ⇒ Object
84 85 86 |
# File 'lib/tapioca/gemfile.rb', line 84 def gem(gem_name) dependencies.detect { |dep| dep.name == gem_name } end |
#require_bundle ⇒ Object
89 90 91 |
# File 'lib/tapioca/gemfile.rb', line 89 def require_bundle T.unsafe(runtime).require(*groups) end |