module Card::Set::Pattern::ClassMethods
methods for Set::Pattern
classes
Attributes
Public Instance Methods
Source
# File lib/card/set/pattern/class_methods.rb, line 41 def anchor_parts_count _anchor_name=nil @anchor_parts_count ||= (anchorless? ? 0 : 1) end
Source
# File lib/card/set/pattern/class_methods.rb, line 24 def anchorless? anchorless end
Source
# File lib/card/set/pattern/class_methods.rb, line 20 def compound_only? compound_only == true end
Source
# File lib/card/set/pattern/class_methods.rb, line 53 def generic_label label nil end
label for set pattern if no anchor is given
Source
# File lib/card/set/pattern/class_methods.rb, line 45 def module_key anchor_codes return pattern_code.to_s.camelize if anchorless? return unless anchor_codes # not all anchors have codenames ([pattern_code] + anchor_codes).map { |code| code.to_s.camelize }.join "::" end
Source
# File lib/card/set/pattern/class_methods.rb, line 9 def new card super if pattern_applies? card end
Calls superclass method
Source
# File lib/card/set/pattern/class_methods.rb, line 33 def pattern pattern_id.cardname end
TODO: change to name or pattern_name
Source
# File lib/card/set/pattern/class_methods.rb, line 37 def pattern_applies? card compound_only? ? card.name.compound? : true end
Source
# File lib/card/set/pattern/class_methods.rb, line 28 def pattern_id pattern_code.card_id end
Source
# File lib/card/set/pattern/class_methods.rb, line 13 def register pattern_code, opts={} self.pattern_code = pattern_code Pattern.concrete.insert opts.delete(:index).to_i, self self.anchorless = !respond_to?(:anchor_name) opts.each { |key, val| send "#{key}=", val } end
Private Instance Methods
Source
# File lib/card/set/pattern/class_methods.rb, line 59 def left_type card card.superleft&.type_name || quick_type(card.name.left_name) end
Source
# File lib/card/set/pattern/class_methods.rb, line 63 def quick_type name if name.present? card = Card.fetch name, skip_modules: true, new: {} card.include_set_modules if card.new? && name.to_name.compound? card&.type_name else "RichText" end end