Sha256: c89d0642c4cc39cff8c86bbde6db095c1429fb9a1c34ec892d045533f83b65ed

Contents?: true

Size: 862 Bytes

Versions: 3

Compression:

Stored size: 862 Bytes

Contents

class Card
  class Fetch
    # fetch-related Card instance methods
    module All
      # fetching from the context of a card
      def fetch field_marks, opts={}
        opts[:new][:supercard] = self if opts[:new]
        Array.wrap(field_marks).inject(self) do |card, mark|
          Card.fetch (card.id || card.name), mark, opts
        end
      end

      def newish opts
        reset_patterns
        Card.with_normalized_new_args opts do |norm_opts|
          handle_type norm_opts do
            assign_attributes norm_opts
            self.name = name # trigger superize_name
          end
        end
      end

      def refresh force=false
        return self unless force || frozen? || readonly?
        return unless id

        fresh_card = self.class.find id
        fresh_card.include_set_modules
        fresh_card
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
card-1.108.1 lib/card/fetch/all.rb
card-1.108.0 lib/card/fetch/all.rb
card-1.107.0 lib/card/fetch/all.rb