lib/cw_card_utils.rb



# frozen_string_literal: true

require_relative "cw_card_utils/version"
require_relative "cw_card_utils/curve_calculator"
require_relative "cw_card_utils/decklist_parser"
require_relative "cw_card_utils/scryfall_cmc_data"
require_relative "cw_card_utils/synergy_probability"
require_relative "cw_card_utils/deck_comparator"

module CwCardUtils
  class Error < StandardError; end

  # Configuration for the library
  class << self
    attr_writer :card_data_source

    def card_data_source
      @card_data_source ||= ScryfallCmcData.instance
    end

    def configure
      yield self if block_given?
    end
  end
end