Module: Jade::Codegen::PortDecoder

Extended by:
PortDecoder
Included in:
PortDecoder
Defined in:
lib/jade/codegen/port_decoder.rb

Constant Summary collapse

PASS =
"Jade::Decode::Decoder[Jade::Decode::Desc::Pass[]]"

Instance Method Summary collapse

Instance Method Details

#task_call(interop_fn, registry, dictionaries = []) ⇒ Object

‘dictionaries` is the call site’s constraint-attachment list; only used when an arm is a Dict marker.



10
11
12
13
14
15
16
17
18
19
# File 'lib/jade/codegen/port_decoder.rb', line 10

def task_call(interop_fn, registry, dictionaries = [])
  [
    interop_fn.interop_module_name,
    ":#{interop_fn.name}",
    decoder(interop_fn, :ok, registry, dictionaries),
    decoder(interop_fn, :err, registry, dictionaries),
  ]
    .join(', ')
    .then { "Jade::Runtime.task_call(#{it})" }
end