Sha256: 8a55a9365c93b41ffd4428fddb9b211a7f2afd880c6e702d3b758369cf17057d
Contents?: true
Size: 906 Bytes
Versions: 7
Compression:
Stored size: 906 Bytes
Contents
module EacLauncher module Stereotype class << self attr_reader :stereotypes def included(base) @stereotypes ||= [] @stereotypes << base base.extend(ClassMethods) end def git_stereotypes stereotypes.select { |c| c.name.demodulize.downcase.match('git') } end def nogit_stereotypes stereotypes - git_stereotypes end end module ClassMethods def stereotype_name name.gsub(/^.*::/, '') end def stereotype_name_in_color stereotype_name.send(color) end def publish_class sub_class('Publish') end def warp_class sub_class('Warp') end private def sub_class(sub_class_name) klass = const_get(sub_class_name) klass.is_a?(Class) ? klass : nil rescue NameError nil end end end end
Version data entries
7 entries across 7 versions & 1 rubygems