ruby2js 2.0.6 → 2.0.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 0830c0dc666f7d1c6f1372883ae2da1a7564ebc6
4
+ data.tar.gz: 9d564db910785d7efeea4e90570f149afbc0763f
5
+ SHA512:
6
+ metadata.gz: 8b6af7d8d70d3e9953a7b2080e6ff03939cadf9285545aa3c68629fbe2f17b44df9f0a611d391addfee7ef98d4e0cd277154b57ec5b3a98a815eb082cc671434
7
+ data.tar.gz: a42f391172b2937a41bc6571379b978ae8df273e3534129f6e99c1b90013cc54a49b3d22b5066f042b1b3a85cc4469834fbb5b3c47d0e918455f111a834659a1
data/README.md CHANGED
@@ -13,7 +13,7 @@ a Ruby Hash literal becomes a JavaScript Object literal. Ruby symbols
13
13
  become JavaScript strings. Ruby method calls become JavaScript function
14
14
  calls IF there are either one or more arguments passed OR parenthesis are
15
15
  used, otherwise Ruby method calls become JavaScript property accesses.
16
- By default, methods, lambdas, and procs return `undefined`.
16
+ By default, methods and procs return `undefined`.
17
17
 
18
18
  Ruby attribute accessors, methods defined with no parameters and no
19
19
  parenthesis, as well as setter method definitions, are
@@ -36,7 +36,7 @@ module Ruby2JS
36
36
  # accommodate javascript style syntax: convert function blocks with
37
37
  # simple arguments into an anonymous function
38
38
  args = call.children[2..-1].map {|arg| s(:arg, arg.children.last)}
39
- parse @ast.updated(:block, [s(:send, nil, :lambda),
39
+ parse @ast.updated(:block, [s(:send, nil, :proc),
40
40
  s(:args, *args), block])
41
41
 
42
42
  else
@@ -24,7 +24,7 @@ module Ruby2JS
24
24
  body)})
25
25
  else
26
26
  node = s(:send, target, "#{method}=",
27
- s(:block, s(:send, nil, :lambda), args, body))
27
+ s(:block, s(:send, nil, :proc), args, body))
28
28
  end
29
29
 
30
30
  @comments[node] = @comments[@ast] if @comments[@ast]
@@ -44,7 +44,7 @@ module Ruby2JS
44
44
  body = body - omit + [s(:return, s(:hash,
45
45
  *symbols.map {|sym| s(:pair, s(:sym, sym), s(:lvar, sym))}))]
46
46
 
47
- body = s(:send, s(:block, s(:send, nil, :lambda), s(:args),
47
+ body = s(:send, s(:block, s(:send, nil, :proc), s(:args),
48
48
  s(:begin, *body)), :[])
49
49
  if name.children.first == nil
50
50
  parse s(:lvasgn, name.children.last, body)
@@ -23,6 +23,7 @@ module Ruby2JS
23
23
  block = block.first.children.dup
24
24
  end
25
25
 
26
+ return if block == []
26
27
  if EXPRESSIONS.include? block.last.type
27
28
  block.push @ast.updated(:return, [block.pop])
28
29
  elsif block.last.type == :if
@@ -25,7 +25,12 @@ module Ruby2JS
25
25
  if method == :new and receiver and receiver.children == [nil, :Proc]
26
26
  return parse args.first
27
27
  elsif not receiver and [:lambda, :proc].include? method
28
- return parse args.first
28
+ if method == :lambda
29
+ return parse s(args.first.type, *args.first.children[0..-2],
30
+ s(:autoreturn, args.first.children[-1]))
31
+ else
32
+ return parse args.first
33
+ end
29
34
  end
30
35
 
31
36
  # call anonymous function
@@ -100,7 +100,7 @@ module Ruby2JS
100
100
 
101
101
  # replace module with a constant assign followed by the module
102
102
  # contents all wrapped in an anonymous function
103
- s(:send, s(:block, s(:send, nil, :lambda), s(:args),
103
+ s(:send, s(:block, s(:send, nil, :proc), s(:args),
104
104
  s(:begin, s(:casgn, nil, name, app), *block)), :[])
105
105
  ensure
106
106
  @ngContext = ngContext
@@ -265,7 +265,7 @@ module Ruby2JS
265
265
  #
266
266
  # output:
267
267
  # AppName.filter :name do
268
- # return lambda {|input| return ... }
268
+ # return proc {|input| return ... }
269
269
  # end
270
270
  EXPRESSION = [ :and, :array, :attr, :const, :cvar, :defined?, :dstr,
271
271
  :dsym, :false, :float, :gvar, :hash, :int, :ivar, :lvar, :nil, :not,
@@ -288,7 +288,7 @@ module Ruby2JS
288
288
  block.push (tail.length == 1 ? tail.first : s(:begin, *tail))
289
289
 
290
290
  # construct a function returning a function
291
- inner = s(:block, s(:send, nil, :lambda), s(:args, *args), *block)
291
+ inner = s(:block, s(:send, nil, :proc), s(:args, *args), *block)
292
292
  outer = s(:send, @ngApp, :filter, *call.children[2..-1])
293
293
 
294
294
  node.updated nil, [outer, s(:args, *uses), s(:return, inner)]
@@ -303,7 +303,7 @@ module Ruby2JS
303
303
  # end
304
304
  #
305
305
  # output:
306
- # AppName.factory :name, [uses, lambda {|uses| ...}]
306
+ # AppName.factory :name, [uses, proc {|uses| ...}]
307
307
  def ng_factory(node)
308
308
  ngContext, @ngContext = @ngContext, :factory
309
309
  call = node.children.first
@@ -326,7 +326,7 @@ module Ruby2JS
326
326
  map {|sym| s(:arg, sym)}
327
327
 
328
328
  # construct a function
329
- function = s(:block, s(:send, nil, :lambda), s(:args, *args), *block)
329
+ function = s(:block, s(:send, nil, :proc), s(:args, *args), *block)
330
330
  array = args.map {|arg| s(:str, arg.children.first.to_s)}
331
331
 
332
332
  s(:send, *call.children, s(:array, *array, function))
@@ -339,7 +339,7 @@ module Ruby2JS
339
339
  # Constant = ...
340
340
  #
341
341
  # output:
342
- # AppName.factory :name, [uses, lambda {|uses| ...}]
342
+ # AppName.factory :name, [uses, proc {|uses| ...}]
343
343
  def on_casgn(node)
344
344
  return super if node.children[0]
345
345
  @ngClassOmit << node.children[1]
@@ -22,6 +22,30 @@ module Ruby2JS
22
22
  module React
23
23
  include SEXP
24
24
 
25
+ # the following code was used to generate ReactAttrs:
26
+ #
27
+ # require 'nokogumbo'
28
+ # page = 'https://facebook.github.io/react/docs/tags-and-attributes.html'
29
+ # attrs = Nokogiri::HTML5.get(page).search('code').map(&:text).join(' ')
30
+ # attrs = attrs.split(/\s+/).grep(/[A-Z]/).sort.uniq.join(' ')
31
+ # puts "ReactAttrs = %w(#{attrs})".gsub(/(.{1,74})(\s+|\Z)/, "\\1\n")
32
+
33
+ ReactAttrs = %w(acceptCharset accessKey allowFullScreen
34
+ allowTransparency autoCapitalize autoComplete autoCorrect autoFocus
35
+ autoPlay cellPadding cellSpacing charSet classID className clipPath
36
+ colSpan contentEditable contextMenu crossOrigin dangerouslySetInnerHTML
37
+ dateTime encType fillOpacity fontFamily fontSize formAction formEncType
38
+ formMethod formNoValidate formTarget frameBorder gradientTransform
39
+ gradientUnits hrefLang htmlFor httpEquiv itemID itemProp itemRef
40
+ itemScope itemType linearGradient marginHeight marginWidth markerEnd
41
+ markerMid markerStart maxLength mediaGroup noValidate
42
+ patternContentUnits patternUnits preserveAspectRatio radialGradient
43
+ radioGroup readOnly rowSpan spellCheck spreadMethod srcDoc srcSet
44
+ stopColor stopOpacity strokeDasharray strokeLinecap strokeOpacity
45
+ strokeWidth tabIndex textAnchor useMap viewBox)
46
+ ReactAttrMap = Hash[ReactAttrs.map {|name| [name.downcase, name]}]
47
+ ReactAttrMap['for'] = 'htmlFor'
48
+
25
49
  def options=(options)
26
50
  super
27
51
  @react = true if options[:react]
@@ -352,8 +376,7 @@ module Ruby2JS
352
376
  ['onChange', :onChange].include? pair.children.first.children[0]
353
377
  end
354
378
 
355
- if value and pairs[value].children.last.type == :ivar and
356
- !onChange
379
+ if value and pairs[value].children.last.type == :ivar and !onChange
357
380
  pairs << s(:pair, s(:sym, :onChange),
358
381
  s(:block, s(:send, nil, :proc), s(:args, s(:arg, :event)),
359
382
  s(:ivasgn, pairs[value].children.last.children.first,
@@ -375,15 +398,37 @@ module Ruby2JS
375
398
  end
376
399
  end
377
400
 
378
- # search for the presence of a 'for' attribute
379
- htmlFor = pairs.find_index do |pair|
380
- ['for', :for].include? pair.children.first.children.first
401
+ # replace attribute names with case-sensitive javascript properties
402
+ pairs.each_with_index do |pair, index|
403
+ name = pair.children.first.children.first.downcase
404
+ if ReactAttrMap[name]
405
+ pairs[index] = pairs[index].updated(nil,
406
+ [s(:str, ReactAttrMap[name]), pairs[index].children.last])
407
+ end
408
+ end
409
+
410
+ # search for the presence of a 'style' attribute
411
+ style = pairs.find_index do |pair|
412
+ ['style', :style].include? pair.children.first.children.first
381
413
  end
382
414
 
383
- # replace 'for' attribute (if any) with 'htmlFor'
384
- if htmlFor
385
- pairs[htmlFor] = s(:pair, s(:sym, :htmlFor),
386
- pairs[htmlFor].children.last)
415
+ # converts style strings into style hashes
416
+ if style and pairs[style].children[1].type == :str
417
+ hash = []
418
+ pairs[style].children[1].children[0].split(/;\s+/).each do |prop|
419
+ prop.strip!
420
+ next unless prop =~ /^([-a-z]+):\s*(.*)$/
421
+ name, value = $1, $2
422
+ name.gsub!(/-[a-z]/) {|str| str[1].upcase}
423
+ if value =~ /^-?\d+$/
424
+ hash << s(:pair, s(:str, name), s(:int, value.to_i))
425
+ elsif value =~ /^-?\d+$\.\d*/
426
+ hash << s(:pair, s(:str, name), s(:float, value.to_f))
427
+ else
428
+ hash << s(:pair, s(:str, name), s(:str, value))
429
+ end
430
+ end
431
+ pairs[style] = s(:pair, pairs[style].children[0], s(:hash, *hash))
387
432
  end
388
433
 
389
434
  # construct hash (or nil) from pairs
@@ -826,6 +871,11 @@ module Ruby2JS
826
871
 
827
872
  # analyze ivar usage
828
873
  def react_walk(node)
874
+ # ignore hash values which are blocks (most typically, event handlers)
875
+ # as these create their own scopes.
876
+ return if node.type == :pair and node.children[0].type == :sym and
877
+ node.children[1].type == :block
878
+
829
879
  child = node.children.first
830
880
 
831
881
  base = @reactIvars[:asgn].dup if [:if, :case].include? node.type
@@ -872,6 +922,22 @@ module Ruby2JS
872
922
  end
873
923
  end
874
924
 
925
+ # Convert hash values of type 'lambda' to 'proc'. This is because
926
+ # Ruby 'desugars' -> to lambda, and Ruby2JS presumes that lambdas
927
+ # return a value.
928
+ def on_pair(node)
929
+ if
930
+ node.children[1].type == :block and
931
+ node.children[1].children[0] == s(:send, nil, :lambda)
932
+ then
933
+ process node.updated(nil, [node.children[0],
934
+ node.children[1].updated(nil, [s(:send, nil, :proc),
935
+ *node.children[1].children[1..-1]])])
936
+ else
937
+ super
938
+ end
939
+ end
940
+
875
941
  # collapse consecutive setState calls into a single call
876
942
  def on_begin(node)
877
943
  node = super
@@ -2,7 +2,7 @@ module Ruby2JS
2
2
  module VERSION #:nodoc:
3
3
  MAJOR = 2
4
4
  MINOR = 0
5
- TINY = 6
5
+ TINY = 7
6
6
 
7
7
  STRING = [MAJOR, MINOR, TINY].join('.')
8
8
  end
data/ruby2js.gemspec CHANGED
@@ -1,24 +1,25 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ # stub: ruby2js 2.0.7 ruby lib
2
3
 
3
4
  Gem::Specification.new do |s|
4
5
  s.name = "ruby2js"
5
- s.version = "2.0.6"
6
+ s.version = "2.0.7"
6
7
 
7
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
9
+ s.require_paths = ["lib"]
8
10
  s.authors = ["Sam Ruby"]
9
- s.date = "2015-04-30"
11
+ s.date = "2015-05-15"
10
12
  s.description = " The base package maps Ruby syntax to JavaScript semantics.\n Filters may be provided to add Ruby-specific or framework specific\n behavior.\n"
11
13
  s.email = "rubys@intertwingly.net"
12
- s.files = ["ruby2js.gemspec", "README.md", "lib/ruby2js", "lib/ruby2js/execjs.rb", "lib/ruby2js/converter.rb", "lib/ruby2js/version.rb", "lib/ruby2js/filter", "lib/ruby2js/filter/jquery.rb", "lib/ruby2js/filter/return.rb", "lib/ruby2js/filter/underscore.rb", "lib/ruby2js/filter/require.rb", "lib/ruby2js/filter/angularrb.rb", "lib/ruby2js/filter/minitest-jasmine.rb", "lib/ruby2js/filter/camelCase.rb", "lib/ruby2js/filter/rubyjs.rb", "lib/ruby2js/filter/strict.rb", "lib/ruby2js/filter/functions.rb", "lib/ruby2js/filter/angular-resource.rb", "lib/ruby2js/filter/react.rb", "lib/ruby2js/filter/angular-route.rb", "lib/ruby2js/sinatra.rb", "lib/ruby2js/rails.rb", "lib/ruby2js/serializer.rb", "lib/ruby2js/cgi.rb", "lib/ruby2js/converter", "lib/ruby2js/converter/self.rb", "lib/ruby2js/converter/arg.rb", "lib/ruby2js/converter/dstr.rb", "lib/ruby2js/converter/xstr.rb", "lib/ruby2js/converter/sym.rb", "lib/ruby2js/converter/return.rb", "lib/ruby2js/converter/break.rb", "lib/ruby2js/converter/for.rb", "lib/ruby2js/converter/defined.rb", "lib/ruby2js/converter/cvasgn.rb", "lib/ruby2js/converter/whilepost.rb", "lib/ruby2js/converter/logical.rb", "lib/ruby2js/converter/in.rb", "lib/ruby2js/converter/args.rb", "lib/ruby2js/converter/def.rb", "lib/ruby2js/converter/prototype.rb", "lib/ruby2js/converter/class.rb", "lib/ruby2js/converter/nthref.rb", "lib/ruby2js/converter/opasgn.rb", "lib/ruby2js/converter/module.rb", "lib/ruby2js/converter/kwbegin.rb", "lib/ruby2js/converter/send.rb", "lib/ruby2js/converter/boolean.rb", "lib/ruby2js/converter/masgn.rb", "lib/ruby2js/converter/hash.rb", "lib/ruby2js/converter/cvar.rb", "lib/ruby2js/converter/ivasgn.rb", "lib/ruby2js/converter/case.rb", "lib/ruby2js/converter/const.rb", "lib/ruby2js/converter/vasgn.rb", "lib/ruby2js/converter/untilpost.rb", "lib/ruby2js/converter/begin.rb", "lib/ruby2js/converter/ivar.rb", "lib/ruby2js/converter/while.rb", "lib/ruby2js/converter/next.rb", "lib/ruby2js/converter/nil.rb", "lib/ruby2js/converter/blockpass.rb", "lib/ruby2js/converter/super.rb", "lib/ruby2js/converter/defs.rb", "lib/ruby2js/converter/array.rb", "lib/ruby2js/converter/block.rb", "lib/ruby2js/converter/if.rb", "lib/ruby2js/converter/until.rb", "lib/ruby2js/converter/regexp.rb", "lib/ruby2js/converter/casgn.rb", "lib/ruby2js/converter/undef.rb", "lib/ruby2js/converter/literal.rb", "lib/ruby2js/converter/var.rb", "lib/ruby2js.rb"]
14
+ s.files = ["README.md", "lib/ruby2js", "lib/ruby2js.rb", "lib/ruby2js/cgi.rb", "lib/ruby2js/converter", "lib/ruby2js/converter.rb", "lib/ruby2js/converter/arg.rb", "lib/ruby2js/converter/args.rb", "lib/ruby2js/converter/array.rb", "lib/ruby2js/converter/begin.rb", "lib/ruby2js/converter/block.rb", "lib/ruby2js/converter/blockpass.rb", "lib/ruby2js/converter/boolean.rb", "lib/ruby2js/converter/break.rb", "lib/ruby2js/converter/case.rb", "lib/ruby2js/converter/casgn.rb", "lib/ruby2js/converter/class.rb", "lib/ruby2js/converter/const.rb", "lib/ruby2js/converter/cvar.rb", "lib/ruby2js/converter/cvasgn.rb", "lib/ruby2js/converter/def.rb", "lib/ruby2js/converter/defined.rb", "lib/ruby2js/converter/defs.rb", "lib/ruby2js/converter/dstr.rb", "lib/ruby2js/converter/for.rb", "lib/ruby2js/converter/hash.rb", "lib/ruby2js/converter/if.rb", "lib/ruby2js/converter/in.rb", "lib/ruby2js/converter/ivar.rb", "lib/ruby2js/converter/ivasgn.rb", "lib/ruby2js/converter/kwbegin.rb", "lib/ruby2js/converter/literal.rb", "lib/ruby2js/converter/logical.rb", "lib/ruby2js/converter/masgn.rb", "lib/ruby2js/converter/module.rb", "lib/ruby2js/converter/next.rb", "lib/ruby2js/converter/nil.rb", "lib/ruby2js/converter/nthref.rb", "lib/ruby2js/converter/opasgn.rb", "lib/ruby2js/converter/prototype.rb", "lib/ruby2js/converter/regexp.rb", "lib/ruby2js/converter/return.rb", "lib/ruby2js/converter/self.rb", "lib/ruby2js/converter/send.rb", "lib/ruby2js/converter/super.rb", "lib/ruby2js/converter/sym.rb", "lib/ruby2js/converter/undef.rb", "lib/ruby2js/converter/until.rb", "lib/ruby2js/converter/untilpost.rb", "lib/ruby2js/converter/var.rb", "lib/ruby2js/converter/vasgn.rb", "lib/ruby2js/converter/while.rb", "lib/ruby2js/converter/whilepost.rb", "lib/ruby2js/converter/xstr.rb", "lib/ruby2js/execjs.rb", "lib/ruby2js/filter", "lib/ruby2js/filter/angular-resource.rb", "lib/ruby2js/filter/angular-route.rb", "lib/ruby2js/filter/angularrb.rb", "lib/ruby2js/filter/camelCase.rb", "lib/ruby2js/filter/functions.rb", "lib/ruby2js/filter/jquery.rb", "lib/ruby2js/filter/minitest-jasmine.rb", "lib/ruby2js/filter/react.rb", "lib/ruby2js/filter/require.rb", "lib/ruby2js/filter/return.rb", "lib/ruby2js/filter/rubyjs.rb", "lib/ruby2js/filter/strict.rb", "lib/ruby2js/filter/underscore.rb", "lib/ruby2js/rails.rb", "lib/ruby2js/serializer.rb", "lib/ruby2js/sinatra.rb", "lib/ruby2js/version.rb", "ruby2js.gemspec"]
13
15
  s.homepage = "http://github.com/rubys/ruby2js"
14
16
  s.licenses = ["MIT"]
15
- s.require_paths = ["lib"]
16
17
  s.required_ruby_version = Gem::Requirement.new(">= 1.9.3")
17
- s.rubygems_version = "1.8.23.2"
18
+ s.rubygems_version = "2.4.5"
18
19
  s.summary = "Minimal yet extensible Ruby to JavaScript conversion."
19
20
 
20
21
  if s.respond_to? :specification_version then
21
- s.specification_version = 3
22
+ s.specification_version = 4
22
23
 
23
24
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
24
25
  s.add_runtime_dependency(%q<parser>, [">= 0"])
metadata CHANGED
@@ -1,133 +1,131 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby2js
3
3
  version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 2.0.6
4
+ version: 2.0.7
6
5
  platform: ruby
7
6
  authors:
8
7
  - Sam Ruby
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2015-04-30 00:00:00.000000000 Z
11
+ date: 2015-05-15 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- version_requirements: !ruby/object:Gem::Requirement
14
+ name: parser
15
+ requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ! '>='
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
20
- none: false
21
20
  type: :runtime
22
- name: parser
23
21
  prerelease: false
24
- requirement: !ruby/object:Gem::Requirement
22
+ version_requirements: !ruby/object:Gem::Requirement
25
23
  requirements:
26
- - - ! '>='
24
+ - - ">="
27
25
  - !ruby/object:Gem::Version
28
26
  version: '0'
29
- none: false
30
- description: ! " The base package maps Ruby syntax to JavaScript semantics.\n Filters
31
- may be provided to add Ruby-specific or framework specific\n behavior.\n"
27
+ description: |2
28
+ The base package maps Ruby syntax to JavaScript semantics.
29
+ Filters may be provided to add Ruby-specific or framework specific
30
+ behavior.
32
31
  email: rubys@intertwingly.net
33
32
  executables: []
34
33
  extensions: []
35
34
  extra_rdoc_files: []
36
35
  files:
37
- - ruby2js.gemspec
38
36
  - README.md
39
- - lib/ruby2js/execjs.rb
40
- - lib/ruby2js/converter.rb
41
- - lib/ruby2js/version.rb
42
- - lib/ruby2js/filter/jquery.rb
43
- - lib/ruby2js/filter/return.rb
44
- - lib/ruby2js/filter/underscore.rb
45
- - lib/ruby2js/filter/require.rb
46
- - lib/ruby2js/filter/angularrb.rb
47
- - lib/ruby2js/filter/minitest-jasmine.rb
48
- - lib/ruby2js/filter/camelCase.rb
49
- - lib/ruby2js/filter/rubyjs.rb
50
- - lib/ruby2js/filter/strict.rb
51
- - lib/ruby2js/filter/functions.rb
52
- - lib/ruby2js/filter/angular-resource.rb
53
- - lib/ruby2js/filter/react.rb
54
- - lib/ruby2js/filter/angular-route.rb
55
- - lib/ruby2js/sinatra.rb
56
- - lib/ruby2js/rails.rb
57
- - lib/ruby2js/serializer.rb
37
+ - lib/ruby2js.rb
58
38
  - lib/ruby2js/cgi.rb
59
- - lib/ruby2js/converter/self.rb
39
+ - lib/ruby2js/converter.rb
60
40
  - lib/ruby2js/converter/arg.rb
61
- - lib/ruby2js/converter/dstr.rb
62
- - lib/ruby2js/converter/xstr.rb
63
- - lib/ruby2js/converter/sym.rb
64
- - lib/ruby2js/converter/return.rb
65
- - lib/ruby2js/converter/break.rb
66
- - lib/ruby2js/converter/for.rb
67
- - lib/ruby2js/converter/defined.rb
68
- - lib/ruby2js/converter/cvasgn.rb
69
- - lib/ruby2js/converter/whilepost.rb
70
- - lib/ruby2js/converter/logical.rb
71
- - lib/ruby2js/converter/in.rb
72
41
  - lib/ruby2js/converter/args.rb
73
- - lib/ruby2js/converter/def.rb
74
- - lib/ruby2js/converter/prototype.rb
75
- - lib/ruby2js/converter/class.rb
76
- - lib/ruby2js/converter/nthref.rb
77
- - lib/ruby2js/converter/opasgn.rb
78
- - lib/ruby2js/converter/module.rb
79
- - lib/ruby2js/converter/kwbegin.rb
80
- - lib/ruby2js/converter/send.rb
42
+ - lib/ruby2js/converter/array.rb
43
+ - lib/ruby2js/converter/begin.rb
44
+ - lib/ruby2js/converter/block.rb
45
+ - lib/ruby2js/converter/blockpass.rb
81
46
  - lib/ruby2js/converter/boolean.rb
82
- - lib/ruby2js/converter/masgn.rb
83
- - lib/ruby2js/converter/hash.rb
84
- - lib/ruby2js/converter/cvar.rb
85
- - lib/ruby2js/converter/ivasgn.rb
47
+ - lib/ruby2js/converter/break.rb
86
48
  - lib/ruby2js/converter/case.rb
49
+ - lib/ruby2js/converter/casgn.rb
50
+ - lib/ruby2js/converter/class.rb
87
51
  - lib/ruby2js/converter/const.rb
88
- - lib/ruby2js/converter/vasgn.rb
89
- - lib/ruby2js/converter/untilpost.rb
90
- - lib/ruby2js/converter/begin.rb
52
+ - lib/ruby2js/converter/cvar.rb
53
+ - lib/ruby2js/converter/cvasgn.rb
54
+ - lib/ruby2js/converter/def.rb
55
+ - lib/ruby2js/converter/defined.rb
56
+ - lib/ruby2js/converter/defs.rb
57
+ - lib/ruby2js/converter/dstr.rb
58
+ - lib/ruby2js/converter/for.rb
59
+ - lib/ruby2js/converter/hash.rb
60
+ - lib/ruby2js/converter/if.rb
61
+ - lib/ruby2js/converter/in.rb
91
62
  - lib/ruby2js/converter/ivar.rb
92
- - lib/ruby2js/converter/while.rb
63
+ - lib/ruby2js/converter/ivasgn.rb
64
+ - lib/ruby2js/converter/kwbegin.rb
65
+ - lib/ruby2js/converter/literal.rb
66
+ - lib/ruby2js/converter/logical.rb
67
+ - lib/ruby2js/converter/masgn.rb
68
+ - lib/ruby2js/converter/module.rb
93
69
  - lib/ruby2js/converter/next.rb
94
70
  - lib/ruby2js/converter/nil.rb
95
- - lib/ruby2js/converter/blockpass.rb
96
- - lib/ruby2js/converter/super.rb
97
- - lib/ruby2js/converter/defs.rb
98
- - lib/ruby2js/converter/array.rb
99
- - lib/ruby2js/converter/block.rb
100
- - lib/ruby2js/converter/if.rb
101
- - lib/ruby2js/converter/until.rb
71
+ - lib/ruby2js/converter/nthref.rb
72
+ - lib/ruby2js/converter/opasgn.rb
73
+ - lib/ruby2js/converter/prototype.rb
102
74
  - lib/ruby2js/converter/regexp.rb
103
- - lib/ruby2js/converter/casgn.rb
75
+ - lib/ruby2js/converter/return.rb
76
+ - lib/ruby2js/converter/self.rb
77
+ - lib/ruby2js/converter/send.rb
78
+ - lib/ruby2js/converter/super.rb
79
+ - lib/ruby2js/converter/sym.rb
104
80
  - lib/ruby2js/converter/undef.rb
105
- - lib/ruby2js/converter/literal.rb
81
+ - lib/ruby2js/converter/until.rb
82
+ - lib/ruby2js/converter/untilpost.rb
106
83
  - lib/ruby2js/converter/var.rb
107
- - lib/ruby2js.rb
84
+ - lib/ruby2js/converter/vasgn.rb
85
+ - lib/ruby2js/converter/while.rb
86
+ - lib/ruby2js/converter/whilepost.rb
87
+ - lib/ruby2js/converter/xstr.rb
88
+ - lib/ruby2js/execjs.rb
89
+ - lib/ruby2js/filter/angular-resource.rb
90
+ - lib/ruby2js/filter/angular-route.rb
91
+ - lib/ruby2js/filter/angularrb.rb
92
+ - lib/ruby2js/filter/camelCase.rb
93
+ - lib/ruby2js/filter/functions.rb
94
+ - lib/ruby2js/filter/jquery.rb
95
+ - lib/ruby2js/filter/minitest-jasmine.rb
96
+ - lib/ruby2js/filter/react.rb
97
+ - lib/ruby2js/filter/require.rb
98
+ - lib/ruby2js/filter/return.rb
99
+ - lib/ruby2js/filter/rubyjs.rb
100
+ - lib/ruby2js/filter/strict.rb
101
+ - lib/ruby2js/filter/underscore.rb
102
+ - lib/ruby2js/rails.rb
103
+ - lib/ruby2js/serializer.rb
104
+ - lib/ruby2js/sinatra.rb
105
+ - lib/ruby2js/version.rb
106
+ - ruby2js.gemspec
108
107
  homepage: http://github.com/rubys/ruby2js
109
108
  licenses:
110
109
  - MIT
110
+ metadata: {}
111
111
  post_install_message:
112
112
  rdoc_options: []
113
113
  require_paths:
114
114
  - lib
115
115
  required_ruby_version: !ruby/object:Gem::Requirement
116
116
  requirements:
117
- - - ! '>='
117
+ - - ">="
118
118
  - !ruby/object:Gem::Version
119
119
  version: 1.9.3
120
- none: false
121
120
  required_rubygems_version: !ruby/object:Gem::Requirement
122
121
  requirements:
123
- - - ! '>='
122
+ - - ">="
124
123
  - !ruby/object:Gem::Version
125
124
  version: '0'
126
- none: false
127
125
  requirements: []
128
126
  rubyforge_project:
129
- rubygems_version: 1.8.23.2
127
+ rubygems_version: 2.4.5
130
128
  signing_key:
131
- specification_version: 3
129
+ specification_version: 4
132
130
  summary: Minimal yet extensible Ruby to JavaScript conversion.
133
131
  test_files: []