Class: Kuby::Pipes

Inherits:
Object
  • Object
show all
Extended by:
T::Generic, T::Sig
Includes:
Enumerable
Defined in:
lib/kuby/dev_setup.rb

Constant Summary collapse

Elem =
type_member(fixed: Pipe)

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(pipes) ⇒ Pipes

Returns a new instance of Pipes.



144
145
146
147
# File 'lib/kuby/dev_setup.rb', line 144

def initialize(pipes)
  @ex = T.let(@ex, T.nilable(StandardError))
  @pipes = T.let(pipes, T::Array[Pipe])
end

Instance Attribute Details

#exObject (readonly)

Returns the value of attribute ex.



136
137
138
# File 'lib/kuby/dev_setup.rb', line 136

def ex
  @ex
end

#pipesObject (readonly)

Returns the value of attribute pipes.



133
134
135
# File 'lib/kuby/dev_setup.rb', line 133

def pipes
  @pipes
end

Class Method Details

.build(clis) ⇒ Object



139
140
141
# File 'lib/kuby/dev_setup.rb', line 139

def self.build(clis)
  new(clis.map { |name, cli| Pipe.new(name, cli) })
end

Instance Method Details

#each(&block) ⇒ Object



155
156
157
# File 'lib/kuby/dev_setup.rb', line 155

def each(&block)
  pipes.each(&block)
end

#success?Boolean

Returns:

  • (Boolean)


165
166
167
# File 'lib/kuby/dev_setup.rb', line 165

def success?
  pipes.all?(&:success?) && !ex
end

#wrap(&block) ⇒ Object



160
161
162
# File 'lib/kuby/dev_setup.rb', line 160

def wrap(&block)
  do_wrap(pipes, &block)
end