Sha256: 186f09b6f9cb362dfed470d63930b81970460c56a6caca3c7854180e173ccf80
Contents?: true
Size: 1.22 KB
Versions: 3
Compression:
Stored size: 1.22 KB
Contents
module Arcabouco class << self def mattr_reader(*syms) syms.each do |sym| raise NameError.new("invalid attribute name: #{sym}") unless sym =~ /^[_A-Za-z]\w*$/ class_eval(<<-EOS, __FILE__, __LINE__ + 1) @@#{sym} = nil unless defined? @@#{sym} def self.#{sym} @@#{sym} end EOS class_variable_set("@@#{sym}", yield) if block_given? end end def mattr_writer(*syms) syms.each do |sym| raise NameError.new("invalid attribute name: #{sym}") unless sym =~ /^[_A-Za-z]\w*$/ class_eval(<<-EOS, __FILE__, __LINE__ + 1) @@#{sym} = nil unless defined? @@#{sym} def self.#{sym}=(obj) @@#{sym} = obj end EOS send("#{sym}=", yield) if block_given? end end def mattr_accessor(*syms, &blk) mattr_reader(*syms, &blk) mattr_writer(*syms, &blk) end end mattr_accessor :root mattr_accessor :gem_root mattr_accessor :asset_list mattr_accessor :application_name self.asset_list = %w(jquery.js app.css app.js vendor.js vendor.css *.png *.jpg *.gif *.mp3 *.wav) self.application_name = "Arcabouco Application" def self.setup yield self end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
arcabouco-0.1.8 | lib/arcabouco/base.rb |
arcabouco-0.1.7 | lib/arcabouco/base.rb |
arcabouco-0.1.6 | lib/arcabouco/base.rb |