class Opal::Nodes::KwrestArgNode
def m(**)
def m(**kwrest)
keyword splat argument
A node responsible for extracting a
def compile
def compile initialize_kw_args_if_needed kwrestarg_name = @sexp[1] extract_code = "Opal.kwrestargs($kwargs, #{used_kwargs});" # kwrestarg can be blank def m(**) end # we need to perform assignment only for named kwrestarg if kwrestarg_name var_name = variable(kwrestarg_name.to_sym) add_temp var_name line "#{var_name} = #{extract_code}" end end
def used_kwargs
def used_kwargs args = scope.used_kwargs.map do |arg_name| "'#{arg_name}': true" end "{#{args.join ','}}" end