Class: Remap::Rule::Map::Required

Inherits:
Concrete
  • Object
show all
Defined in:
lib/remap/rule/map/required.rb

Direct Known Subclasses

Optional

Instance Method Summary collapse

Instance Method Details

#call(state) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/remap/rule/map/required.rb', line 12

def call(state)
  catch_fatal(state, backtrace) do |s0|
    s2 = path.input.call(s0) do |s1|
      callback(rule.call(s1))
    end

    s3 = s2.then(&path.output)
    s4 = s3.merge(path: state.path)

    s4.except(:key)
  end
end