Class: GoldenFleece::Value

Inherits:
Object
  • Object
show all
Includes:
Utility
Defined in:
lib/golden_fleece/value.rb

Constant Summary

Constants included from Utility

Utility::FALSE_VALUES

Instance Method Summary collapse

Methods included from Utility

#build_json_path, #cast_boolean, #deep_stringify_keys, #error_suffix

Constructor Details

#initialize(schema) ⇒ Value

Returns a new instance of Value.



8
9
10
# File 'lib/golden_fleece/value.rb', line 8

def initialize(schema)
  @schema = schema
end

Instance Method Details

#compute(record) ⇒ Object



12
13
14
15
16
17
18
19
20
21
# File 'lib/golden_fleece/value.rb', line 12

def compute(record)
  @record = record
  @value = Hana::Pointer.new(schema.json_path).eval(record.read_attribute(schema.attribute))

  cast_booleans
  apply_normalizers
  apply_default

  value
end