Sha256: 68911cb9fee247ea4ad34406446096778a43567d6fd63fc766e01854c35c3f36

Contents?: true

Size: 569 Bytes

Versions: 6

Compression:

Stored size: 569 Bytes

Contents

# frozen_string_literal: true

require 'opal/nodes/base'

module Opal
  module Nodes
    module Args
      # A utility node responsible for preparing
      # post-argument for :extract_post_* nodes
      class PreparePostArgs < Base
        handle :prepare_post_args
        children :offset

        def compile
          add_temp '$post_args'

          if offset == 0
            line "$post_args = Opal.slice.call(arguments)"
          else
            line "$post_args = Opal.slice.call(arguments, #{offset})"
          end
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
opal-1.5.1 lib/opal/nodes/args/prepare_post_args.rb
opal-1.5.0 lib/opal/nodes/args/prepare_post_args.rb
opal-1.5.0.rc1 lib/opal/nodes/args/prepare_post_args.rb
opal-1.4.1 lib/opal/nodes/args/prepare_post_args.rb
opal-1.4.0 lib/opal/nodes/args/prepare_post_args.rb
opal-1.4.0.alpha1 lib/opal/nodes/args/prepare_post_args.rb