Module: DataAccessible

Defined in:
lib/data_accessible.rb,
lib/data_accessible/version.rb,
lib/data_accessible/data_loader.rb,
lib/data_accessible/hash_methods.rb,
lib/data_accessible/data_accessors.rb

Defined Under Namespace

Modules: ClassMethods, DataAccessors, DataLoader, HashMethods

Constant Summary collapse

VERSION =
"1.0.2".freeze

Class Method Summary collapse

Class Method Details

.data_pathObject



25
26
27
28
# File 'lib/data_accessible.rb', line 25

def self.data_path
  return @data_path if @data_path
  default_data_path
end

.data_path=(path) ⇒ Object



21
22
23
# File 'lib/data_accessible.rb', line 21

def self.data_path=(path)
  @data_path = path
end

.default_data_pathObject



17
18
19
# File 'lib/data_accessible.rb', line 17

def self.default_data_path
  @data_path = 'data'
end

.include_data(filename) ⇒ Object



5
6
7
# File 'lib/data_accessible/data_loader.rb', line 5

def self.include_data(filename)
  ERB.new(IO.read("#{filename}")).result
end

.included(caller) ⇒ Object



7
8
9
# File 'lib/data_accessible.rb', line 7

def self.included(caller)
  caller.extend ClassMethods
end

.sources {|klass| ... } ⇒ Object

Yields:

  • (klass)


11
12
13
14
15
# File 'lib/data_accessible.rb', line 11

def self.sources
  klass = Class.new { extend ClassMethods }
  yield klass if block_given?
  klass
end