class Eco::API::Session::Config::PostLaunch

def add(name, type: nil)

def add(name, type: nil)
  @postcases.push({
    name: name,
    type: type
  })
end

def by_name

def by_name
  @postcases.group_by {|pc| pc[:name]}
end

def by_type

def by_type
  @postcases.group_by {|pc| pc[:type]}
end

def each(params: {}, &block)

def each(params: {}, &block)
  return to_enum(:each) unless block
  items.each(&block)
end

def empty?

def empty?
  count == 0
end

def initialize(config:)

def initialize(config:)
  @postcases = []
  super(config: config)
end

def items

def items
  @postcases
end

def length

def length
  count
end

def select(usecases)

def select(usecases)
  raise "Required Eco::API::UseCases to select the target post cases" unless usecases.is_a?(Eco::API::UseCases)
  each_with_object([]) do |pc, targets|
    targets.push(usecases.case(pc[:name], type: pc[:type]))
  end
end