# frozen_string_literal: true require 'active_support/all' require 'virtus' require 'ethereum.rb' require 'hashtastic' require 'murky' require 'pry' require 'voucher/version' require 'voucher/config' require 'voucher/metrics' require 'voucher/errors' require 'voucher/model/election' require 'voucher/model/segment' require 'voucher/chain_contract' require 'voucher/segments_reader' require 'voucher/segments_builder' require 'voucher/segments_parser' require 'voucher/validator' module Voucher class << self attr_writer :config end def self.config @config ||= Config end def self.reset @config = Config end def self.configure(options = {}) return yield(config) if block_given? options = options.with_indifferent_access config.ethereum_url = options['host'] if options['host'] config end end