Sha256: 2f45dcaf1dfcb2ceb236339492b5cb0f72e4bd44a214dfc1f7f8c644250cfbb6

Contents?: true

Size: 489 Bytes

Versions: 16

Compression:

Stored size: 489 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 post-argument from $post_args
      #
      class ExtractPostArg < Base
        handle :extract_post_arg
        children :name

        def compile
          add_temp name

          line "#{name} = $post_args.shift();"

          push "if (#{name} == null) #{name} = nil"
        end
      end
    end
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
opal-1.8.3.rc1 lib/opal/nodes/args/extract_post_arg.rb
opal-1.8.2 lib/opal/nodes/args/extract_post_arg.rb
opal-1.8.1 lib/opal/nodes/args/extract_post_arg.rb
opal-1.8.0 lib/opal/nodes/args/extract_post_arg.rb
opal-1.8.0.beta1 lib/opal/nodes/args/extract_post_arg.rb
opal-1.7.4 lib/opal/nodes/args/extract_post_arg.rb
opal-1.8.0.alpha1 lib/opal/nodes/args/extract_post_arg.rb
opal-1.7.3 lib/opal/nodes/args/extract_post_arg.rb
opal-1.7.2 lib/opal/nodes/args/extract_post_arg.rb
opal-1.7.1 lib/opal/nodes/args/extract_post_arg.rb
opal-1.7.0 lib/opal/nodes/args/extract_post_arg.rb
opal-1.7.0.rc1 lib/opal/nodes/args/extract_post_arg.rb
opal-1.6.1 lib/opal/nodes/args/extract_post_arg.rb
opal-1.6.0 lib/opal/nodes/args/extract_post_arg.rb
opal-1.6.0.rc1 lib/opal/nodes/args/extract_post_arg.rb
opal-1.6.0.alpha1 lib/opal/nodes/args/extract_post_arg.rb