Module: EveApi::Data

Defined in:
lib/eve_api/data.rb

Defined Under Namespace

Classes: Generic, Result, Row, Rowset

Class Method Summary collapse

Class Method Details

.result(canonic_name) ⇒ Object



58
59
60
61
62
63
64
65
66
67
68
69
70
# File 'lib/eve_api/data.rb', line 58

def self.result(canonic_name)
  name = "#{canonic_name}Result".to_sym
  
  if const_defined?(name)
    return const_get name
  end
  
  klass = Class.new(Result)
        
  const_set name, klass
  
  return klass
end

.row(canonic_name, keys, fields = []) ⇒ Object



89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
# File 'lib/eve_api/data.rb', line 89

def self.row(canonic_name, keys, fields = [])
  name = "#{canonic_name}Row".to_sym
  if const_defined?(name)
    return const_get name
  end
  
  klass = Class.new(Row)
  
  klass.const_set("NAME", canonic_name)
  klass.const_set("FIELDS", fields)
  klass.const_set("KEYS", keys)
  
  const_set name, klass
  
  return klass
end

.rowset(canonic_name, keys, fields = []) ⇒ Object



72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# File 'lib/eve_api/data.rb', line 72

def self.rowset(canonic_name, keys, fields = [])
  name = "#{canonic_name}Rowset".to_sym
  if const_defined?(name)
    return const_get name
  end
  
  klass = Class.new(Rowset)
  
  klass.const_set("NAME", canonic_name)
  klass.const_set("FIELDS", fields)
  klass.const_set("KEYS", keys)
  
  const_set name, klass
  
  return klass
end