dtr_to_rust 0.2.4 → 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d438e4b50824b1f820f329c291d88bf97034fef9bdfd05b88b5b5a610fa23ee5
4
- data.tar.gz: 581033f850771cfe5165ebb2028973048ddd5d17123690a06b6c4ab99fd30230
3
+ metadata.gz: b0e88ee729d6b75560b0b721116d5d01a09b0461be73ce60f7866811ac852ddb
4
+ data.tar.gz: ec23afaf87408739dc2e85a6c205dc70b58518a200c8aa7452d8cc65e867c3a7
5
5
  SHA512:
6
- metadata.gz: 07a1b2d9dc755146b4b5cba34c57c7758dbd406b37f8731962aaeb231d92803ec8afe4cc45d6b2da40f3bf30a9741b45ba2b2c5f004736731cf9aff7afeacf57
7
- data.tar.gz: bb416781d416dd6a5cf6901d8264ea28f58fc10fdd9e128c5deed8730c507cf1652a7cd00c13ad23556f2a0326567c834ff06f84fc20dfbcfa341c3674b92122
6
+ metadata.gz: b81c54febc129a193a215dd67fd29e88b6378d469752d39c3a3a258eb3d702230f48f92560938cf0ba176360ad13c2e05d1fa78e2802dc67bccd173875a72024
7
+ data.tar.gz: 00ad6c66f66e8c162860db52d7518b1633e8ecf2877c0ccd3bc09bf0c28157fbdb1627b046039af04ca570828bf2cb6a6ecf8514a7aa5d32f7a8adf272bcfd13
data/lib/generator.rb CHANGED
@@ -94,6 +94,10 @@ module DTRToRust
94
94
  case type
95
95
  when 'String'
96
96
  'Symbol'
97
+ when 'Vec<String>'
98
+ 'Vec<Symbol>'
99
+ when 'List<String>'
100
+ 'Vec<Symbol>'
97
101
  else
98
102
  type
99
103
  end
@@ -5,9 +5,23 @@ module DTRToRust
5
5
  # This class is responsible for generating Rust code for the AddAndAssign instruction.
6
6
  class CreateList < Handler
7
7
  def handle
8
- form_rust_string("let #{@instruction[:assign]} = vec![#{@instruction[:inputs].join(', ')}];",
8
+ form_rust_string("let #{@instruction[:assign]} = vec![#{handle_inputs}];",
9
9
  @instruction[:scope])
10
10
  end
11
+
12
+ private
13
+
14
+ def handle_inputs
15
+ @instruction[:inputs].map { |input| handle_input(input) }.join(', ')
16
+ end
17
+
18
+ def handle_input(input)
19
+ if (input.start_with?('"') && input[-1] == ('"'))
20
+ "symbol_short!(#{input})"
21
+ else
22
+ input
23
+ end
24
+ end
11
25
  end
12
26
  end
13
27
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dtr_to_rust
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rob Durst