Sha256: a86488c21d16a91b007815971426cc080f3b422c3dd7df5e4d870ecf062f4d0e

Contents?: true

Size: 1.51 KB

Versions: 10

Compression:

Stored size: 1.51 KB

Contents

# -*- encoding : utf-8 -*-
class Card; module Set; class All
# Set: All cards (Extended)
#
module Extended;
extend Card::Set
def self.source_location; "/Users/ethan/dev/decko/gem/card/mod/core/set/all/extended.rb"; end

def extended_item_cards context=nil
  items = item_cards limit: "", context: (context || self).name
  list = []
  book = ::Set.new # avoid loops
  extend_item_list items, list, book until items.empty?
  list
end

def extended_item_contents context=nil
  extended_item_cards(context).map(&:item_names).flatten
end

module Format; parent.send :register_set_format, Card::Format, self; extend Card::Set::AbstractFormat
  delegate :extended_item_contents, to: :card
end

private

def extend_item_list items, list, book
  item = items.shift
  return if already_extended? item, book
  if item.collection?
    # keep items in order
    items.unshift(*item.item_cards)
  else  # no further level of items
    list << item
  end
end

def already_extended? item, book
  return true if book.include? item
  book << item
  false
end

# def extended_list context=nil
#   context = (context ? context.name : name)
#   args = { limit: "" }
#   item_cards(args.merge(context: context)).map do |x|
#     x.item_cards(args)
#   end.flatten.map do |x|
#     x.item_cards(args)
#   end.flatten.map do |y|
#     y.item_names(args)
#   end.flatten
#   # this could go on and on.  more elegant to recurse until you don't have
#   # a collection
# end
end;end;end;end;
# ~~ generated from /Users/ethan/dev/decko/gem/card/mod/core/set/all/extended.rb ~~

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
card-1.100.0 tmpsets/set/mod003-core/all/extended.rb
card-1.99.4 tmpsets/set/mod003-core/all/extended.rb
card-1.99.3 tmpsets/set/mod003-core/all/extended.rb
card-1.99.2 tmpsets/set/mod003-core/all/extended.rb
card-1.99.1 tmpsets/set/mod003-core/all/extended.rb
card-1.99.0 tmpsets/set/mod003-core/all/extended.rb
card-1.98.3 tmpsets/set/mod003-core/all/extended.rb
card-1.98.2 tmpsets/set/mod003-core/all/extended.rb
card-1.98.1 tmpsets/set/mod003-core/all/extended.rb
card-1.98.0 tmpsets/set/mod003-core/all/extended.rb