Module: Seabright::Types
- Included in:
- RedisObject
- Defined in:
- lib/redis_object/types.rb,
lib/redis_object/types/date.rb,
lib/redis_object/types/json.rb,
lib/redis_object/types/array.rb,
lib/redis_object/types/float.rb,
lib/redis_object/types/number.rb,
lib/redis_object/types/boolean.rb
Defined Under Namespace
Modules: ArrayType, BooleanType, ClassMethods, DateType, FloatType, JsonType, NumberType
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
.alias_type(als, sym) ⇒ Object
4
5
6
|
# File 'lib/redis_object/types.rb', line 4
def self.alias_type(als,sym)
type_aliases[als.to_s.downcase.to_sym] = sym.to_s.downcase.to_sym
end
|
.included(base) ⇒ Object
170
171
172
|
# File 'lib/redis_object/types.rb', line 170
def self.included(base)
base.extend(ClassMethods)
end
|
.known_types ⇒ Object
16
17
18
|
# File 'lib/redis_object/types.rb', line 16
def self.known_types
@known_types ||= []
end
|
.register_type(sym) ⇒ Object
12
13
14
|
# File 'lib/redis_object/types.rb', line 12
def self.register_type(sym)
known_types << sym.to_s.downcase.to_sym
end
|
.type_aliases ⇒ Object
8
9
10
|
# File 'lib/redis_object/types.rb', line 8
def self.type_aliases
@type_aliases ||= {}
end
|
Instance Method Details
27
28
29
30
31
32
|
# File 'lib/redis_object/types.rb', line 27
def enforce_format(k,v)
if sym = type_filter_for(:format,k)
return send(sym,v)
end
v
end
|
41
42
43
44
45
46
|
# File 'lib/redis_object/types.rb', line 41
def save_format(k,v)
if sym = type_filter_for(:save,k)
return send(sym,v)
end
v
end
|
34
35
36
37
38
39
|
# File 'lib/redis_object/types.rb', line 34
def score_format(k,v)
if sym = type_filter_for(:score,k)
return send(sym,v)
end
0
end
|
#type_filter_for(prefix, k) ⇒ Object
20
21
22
23
24
25
|
# File 'lib/redis_object/types.rb', line 20
def type_filter_for(prefix,k)
if k and (fmt = self.class.field_formats[k.to_sym]) and (sym = "#{prefix}_#{fmt}".to_sym) and respond_to?(sym)
return sym
end
nil
end
|