Sha256: 7ea9c9432b9fba0d27b3bbfdc935b97386d6ee9abe6138e98906d76464c76cc2
Contents?: true
Size: 708 Bytes
Versions: 16
Compression:
Stored size: 708 Bytes
Contents
# frozen_string_literal: true require 'opal/nodes/base' module Opal module Nodes module Args # This node is responsible for extracting a single # required keyword argument from $kwargs # # $kwargs always exist (as argument when inlining is possible # and as a local variable when it's not) # class ExtractKwarg < Base handle :extract_kwarg children :lvar_name def compile key_name = @sexp.meta[:arg_name] scope.used_kwargs << key_name add_temp lvar_name helper :get_kwarg push "#{lvar_name} = $get_kwarg($kwargs, #{key_name.to_s.inspect})" end end end end end
Version data entries
16 entries across 16 versions & 1 rubygems