Class: Tapioca::Gemfile
- Inherits:
-
Object
- Object
- Tapioca::Gemfile
- Extended by:
- T::Sig
- Defined in:
- lib/tapioca/gemfile.rb
Defined Under Namespace
Classes: Gem
Constant Summary collapse
- Spec =
T.type_alias do T.any( T.all( ::Bundler::StubSpecification, ::Bundler::RemoteSpecification ), ::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 ⇒ Gemfile
constructor
A new instance of Gemfile.
- #require ⇒ Object
Constructor Details
#initialize ⇒ Gemfile
Returns a new instance of Gemfile.
30 31 32 33 34 35 36 37 |
# File 'lib/tapioca/gemfile.rb', line 30 def initialize @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[Gem]) @missing_specs = T.let(missing_specs, T::Array[String]) end |
Instance Attribute Details
#definition ⇒ Object (readonly)
Returns the value of attribute definition.
21 22 23 |
# File 'lib/tapioca/gemfile.rb', line 21 def definition @definition end |
#dependencies ⇒ Object (readonly)
Returns the value of attribute dependencies.
24 25 26 |
# File 'lib/tapioca/gemfile.rb', line 24 def dependencies @dependencies end |
#missing_specs ⇒ Object (readonly)
Returns the value of attribute missing_specs.
27 28 29 |
# File 'lib/tapioca/gemfile.rb', line 27 def missing_specs @missing_specs end |
Instance Method Details
#gem(gem_name) ⇒ Object
40 41 42 |
# File 'lib/tapioca/gemfile.rb', line 40 def gem(gem_name) dependencies.detect { |dep| dep.name == gem_name } end |
#require ⇒ Object
45 46 47 |
# File 'lib/tapioca/gemfile.rb', line 45 def require T.unsafe(runtime).setup(*groups).require(*groups) end |