Sha256: 57bb5d016a38140845ae5f422c9a20fa0829acc24e7697a3a2bed7a1edb4e075

Contents?: true

Size: 545 Bytes

Versions: 39

Compression:

Stored size: 545 Bytes

Contents

module Ruby2JS
  class Converter

    # (casgn nil :a
    #   (int 1))

    handle :casgn do |cbase, var, value|
      multi_assign_declarations if @state == :statement

      begin
        cbase ||= @rbstack.map {|rb| rb[var]}.compact.last

        if @state == :statement and not cbase
          if es2015
            put "const "
          else
            put "var "
          end
        end

        (parse cbase; put '.') if cbase

        put "#{ var } = "; parse value
      ensure
        @vars[var] = true
      end
    end
  end
end

Version data entries

39 entries across 39 versions & 1 rubygems

Version Path
ruby2js-5.1.1 lib/ruby2js/converter/casgn.rb
ruby2js-5.1.0 lib/ruby2js/converter/casgn.rb
ruby2js-5.0.1 lib/ruby2js/converter/casgn.rb
ruby2js-5.0.0 lib/ruby2js/converter/casgn.rb
ruby2js-4.2.2 lib/ruby2js/converter/casgn.rb
ruby2js-4.2.1 lib/ruby2js/converter/casgn.rb
ruby2js-4.2.0 lib/ruby2js/converter/casgn.rb
ruby2js-4.1.7 lib/ruby2js/converter/casgn.rb
ruby2js-4.1.6 lib/ruby2js/converter/casgn.rb
ruby2js-4.1.5 lib/ruby2js/converter/casgn.rb
ruby2js-4.1.4 lib/ruby2js/converter/casgn.rb
ruby2js-4.1.3 lib/ruby2js/converter/casgn.rb
ruby2js-4.1.2 lib/ruby2js/converter/casgn.rb
ruby2js-4.1.1 lib/ruby2js/converter/casgn.rb
ruby2js-4.1.0 lib/ruby2js/converter/casgn.rb
ruby2js-4.0.5 lib/ruby2js/converter/casgn.rb
ruby2js-4.0.4 lib/ruby2js/converter/casgn.rb
ruby2js-4.0.3 lib/ruby2js/converter/casgn.rb
ruby2js-4.0.2 lib/ruby2js/converter/casgn.rb
ruby2js-4.0.1 lib/ruby2js/converter/casgn.rb