mulang 6.10.0 → 6.11.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7de4072f7ca40dab23b727e1050c90014807bde737f8757089cc816ae2767a78
4
- data.tar.gz: 734117a52f4a327a1f4ec7bb2d117437230a8015449a65455147042c26e40168
3
+ metadata.gz: 676c6fafe184d064d651bc3d758943ef0576fc0bc73ccd4cabfd66594298355b
4
+ data.tar.gz: e544927c2bec8c24d0ecc36bfb256414797003de7f86247191c6c8e43869fe0e
5
5
  SHA512:
6
- metadata.gz: 0be8b19d3d973c5ad65d09e51932c22130609e6d67bed901f4871a4e510e6b5f1b5c5b6d7c73f467c2e0f2adaaf67db57fa49b3f1463dfc6d7f37f70a15b9536
7
- data.tar.gz: 255d9c0cc9cb01ec7a3aaef3906ecf0ae700b1d4c2d2fbfffe27f90e50903d4398378aeccc747777b40bcfa488b8a3de7e00a9b131ee402da61eb2dbde12ba35
6
+ metadata.gz: fadbe6188379beb3d2c0c2a67001221e0d2a204c67583f01615f7ad9aaf03215b067d650826e52759fa211dcbcf291b8f9494732b0a5f8d305737cd4beddfc06
7
+ data.tar.gz: 47037f9787d1079ee6c215b11e6d7f884fc478a81fd8cabb3286e805848952f493a74ac0ba20e847a55de5b76b513c047f30560115f2a35e896455f486a0e756
data/bin/mulang CHANGED
Binary file
data/lib/locales/en.yml CHANGED
@@ -9,6 +9,8 @@ en:
9
9
  with_char: ' with character <code>%{value}</code>'
10
10
  with_false: ' with value <code>%{keyword_False}</code>'
11
11
  with_literal: ' with a literal value'
12
+ with_any_string: ' with a string literal'
13
+ with_any_number: ' with a number literal'
12
14
  with_logic: ' with a boolean expression'
13
15
  with_math: ' with a math expression'
14
16
  with_nil: ' with <code>%{keyword_Nil}</code>'
@@ -39,10 +41,10 @@ en:
39
41
  DeclaresClass_like: '%{binding} %{must} declare a class similar to %{target}'
40
42
  DeclaresClass_named: '%{binding} %{must} declare a class %{target}'
41
43
  DeclaresClass: '%{binding} %{must} declare classes'
42
- DeclaresComputation_except: '%{binding} %{must} declare computations distinct from %{target}'
43
- DeclaresComputation_like: '%{binding} %{must} declare a computation similar to %{target}'
44
- DeclaresComputation_named: '%{binding} %{must} declare a computation %{target}'
45
- DeclaresComputation: '%{binding} %{must} declare computations'
44
+ DeclaresComputation_except: '%{binding} %{must} declare computations distinct from %{target}%{matching}'
45
+ DeclaresComputation_like: '%{binding} %{must} declare a computation similar to %{target}%{matching}'
46
+ DeclaresComputation_named: '%{binding} %{must} declare a computation %{target}%{matching}'
47
+ DeclaresComputation: '%{binding} %{must} declare computations%{matching}'
46
48
  DeclaresComputationWithArity0_named: '%{target} %{must} have zero parameters'
47
49
  DeclaresComputationWithArity1_named: '%{target} %{must} have one parameter'
48
50
  DeclaresComputationWithArity2_named: '%{target} %{must} have 2 parameters'
@@ -183,9 +185,9 @@ en:
183
185
  UsesGuards: '%{binding} %{must} use guards%{matching}'
184
186
  UsesIf: '%{binding} %{must} use <code>%{keyword_If}</code>%{matching}'
185
187
  UsesLambda: '%{binding} %{must} use lambda expressions%{matching}'
186
- UsesLogic: '%{binding} %{must} usar boolean operators'
188
+ UsesLogic: '%{binding} %{must} use boolean operators'
187
189
  UsesLoop: '%{binding} %{must} use a loop%{matching}'
188
- UsesMath: '%{binding} %{must} usar math expressions'
190
+ UsesMath: '%{binding} %{must} use math expressions'
189
191
  UsesMixin: '%{binding} %{must} use mixins'
190
192
  UsesNamedSelfReference: '%{binding} should use <code>%{keyword_Self}</code> instead of a global reference'
191
193
  UsesNot: '%{binding} %{must} use not'
data/lib/locales/es.yml CHANGED
@@ -9,6 +9,8 @@ es:
9
9
  with_char: ' con el carácter <code>%{value}</code>'
10
10
  with_false: ' con el valor <code>%{keyword_False}</code>'
11
11
  with_literal: ' con un valor literal'
12
+ with_any_string: ' con un string literal'
13
+ with_any_number: ' con un número literal'
12
14
  with_logic: ' con una expresión booleana'
13
15
  with_math: 'con una expresión matemática'
14
16
  with_nil: ' con <code>%{keyword_Nil}</code>'
@@ -39,10 +41,10 @@ es:
39
41
  DeclaresClass_like: '%{binding} %{must} declarar una clase parecida a %{target}'
40
42
  DeclaresClass_named: '%{binding} %{must} declarar una clase %{target}'
41
43
  DeclaresClass: '%{binding} %{must} declarar clases'
42
- DeclaresComputation_except: '%{binding} %{must} declarar computaciones diferentes a %{target}'
43
- DeclaresComputation_like: '%{binding} %{must} declarar una computación parecida a %{target}'
44
- DeclaresComputation_named: '%{binding} %{must} declarar una computación %{target}'
45
- DeclaresComputation: '%{binding} %{must} declarar computaciones'
44
+ DeclaresComputation_except: '%{binding} %{must} declarar computaciones diferentes a %{target}%{matching}'
45
+ DeclaresComputation_like: '%{binding} %{must} declarar una computación parecida a %{target}%{matching}'
46
+ DeclaresComputation_named: '%{binding} %{must} declarar una computación %{target}%{matching}'
47
+ DeclaresComputation: '%{binding} %{must} declarar computaciones%{matching}'
46
48
  DeclaresComputationWithArity0_named: '%{target} %{must} declarar cero parametros'
47
49
  DeclaresComputationWithArity1_named: '%{target} %{must} tener un parámetro'
48
50
  DeclaresComputationWithArity2_named: '%{target} %{must} tener dos parámetros'
data/lib/locales/pt.yml CHANGED
@@ -9,6 +9,8 @@ pt:
9
9
  with_char: ' com o caractere <code>%{value}</code>'
10
10
  with_false: ' com o valor <code>%{keyword_False}</code>'
11
11
  with_literal: ' com um valor literal'
12
+ with_any_string: ' com uma string literal'
13
+ with_any_number: ' com um número literal'
12
14
  with_logic: ' com uma expressão booleana'
13
15
  with_math: ' com uma expressão matemática'
14
16
  with_nil: ' com <code>%{keyword_Nil}</code>'
@@ -39,10 +41,10 @@ pt:
39
41
  DeclaresClass_like: '%{binding} %{must} declarar uma classe semelhante a %{target}'
40
42
  DeclaresClass_named: '%{binding} %{must} declarar uma classe %{target}'
41
43
  DeclaresClass: '%{binding} %{must} declarar classes'
42
- DeclaresComputation_except: '%{binding} %{must} declarar cálculos diferentes de %{target}'
43
- DeclaresComputation_like: '%{binding} %{must} declarar uma computação semelhante a %{target}'
44
- DeclaresComputation_named: '%{binding} %{must} declarar uma computação %{target}'
45
- DeclaresComputation: '%{binding} %{must} declarar cálculos'
44
+ DeclaresComputation_except: '%{binding} %{must} declarar cálculos diferentes de %{target}%{matching}'
45
+ DeclaresComputation_like: '%{binding} %{must} declarar uma computação semelhante a %{target}%{matching}'
46
+ DeclaresComputation_named: '%{binding} %{must} declarar uma computação %{target}%{matching}'
47
+ DeclaresComputation: '%{binding} %{must} declarar cálculos%{matching}'
46
48
  DeclaresComputationWithArity0_named: '%{target} %{must} declarar parâmetros zero'
47
49
  DeclaresComputationWithArity1_named: '%{target} %{must} ter um parâmetro'
48
50
  DeclaresComputationWithArity2_named: '%{target} %{must} ter dois parâmetros'
data/lib/mulang/code.rb CHANGED
@@ -40,11 +40,11 @@ module Mulang
40
40
 
41
41
  def expect(binding='*', inspection)
42
42
  expectation = Mulang::Expectation.parse(binding: binding, inspection: inspection).as_v2.to_h
43
- expectation_results_for(analyse(expectations: [expectation])).first['result']
43
+ expectation_results_for(analyse({expectations: [expectation]})).first['result']
44
44
  end
45
45
 
46
46
  def custom_expect(edl)
47
- expectation_results_for(analyse(customExpectations: edl))
47
+ expectation_results_for(analyse({customExpectations: edl}))
48
48
  .map { |e| [e['expectation']['inspection'], e['result']] }
49
49
  .to_h
50
50
  end
@@ -5,7 +5,8 @@ class Mulang::Inspection::Matcher
5
5
  WithAnything WithChar WithFalse WithLiteral
6
6
  WithLogic WithMath WithNil WithNonliteral
7
7
  WithNumber WithReference WithString
8
- WithSymbol WithTrue)
8
+ WithSymbol WithTrue
9
+ WithAnyString WithAnyNumber)
9
10
 
10
11
  attr_accessor :type, :value
11
12
 
@@ -12,7 +12,7 @@ module Mulang
12
12
  ^(?<negation>Not:)?
13
13
  (?<type>[^:]+)
14
14
  (
15
- :(?<matcher>WithAnything|WithLiteral|WithNonliteral|WithLogic|WithMath|WithFalse|WithNil|WithTrue) |
15
+ :(?<matcher>WithAnything|WithLiteral|WithNonliteral|WithAnyString|WithAnyNumber|WithLogic|WithMath|WithFalse|WithNil|WithTrue) |
16
16
  :(?<matcher>WithReference|WithChar|WithNumber|WithString|WithSymbol):(?<value>[^:]+) |
17
17
  :(?<target>[^:]+)(:(?<matcher>[^:]+)(:(?<value>[^:]+))?)?
18
18
  )?$}.gsub(/\s/, '')
@@ -49,7 +49,7 @@ module Mulang::Language
49
49
  expectations: [],
50
50
  smellsSet: { tag: 'NoSmells' },
51
51
  includeOutputAst: false,
52
- normalizationOptions: normalization_options(options)
52
+ normalizationOptions: normalization_options(**options)
53
53
  }.merge(spec).compact
54
54
  }
55
55
  end
@@ -98,7 +98,7 @@ module Mulang::Language
98
98
  }
99
99
  end
100
100
 
101
- def build_analysis(*)
101
+ def build_analysis(*, **)
102
102
  super.deep_merge(spec: {originalLanguage: core_name}.compact)
103
103
  end
104
104
 
data/lib/mulang/tokens.rb CHANGED
@@ -131,6 +131,7 @@ module Mulang
131
131
  keyword_Return: 'return',
132
132
  keyword_While: 'while',
133
133
  keyword_Self: 'this',
134
+ keyword_ForEach: 'for..of',
134
135
  operator_And: '&amp;&amp;',
135
136
  operator_Divide: '/',
136
137
  operator_Equal: '===',
@@ -167,6 +168,7 @@ module Mulang
167
168
  keyword_Return: 'return',
168
169
  keyword_While: 'while',
169
170
  keyword_Self: 'self',
171
+ keyword_ForEach: 'for..in',
170
172
  operator_And: 'and',
171
173
  operator_Divide: '/',
172
174
  operator_Equal: '==',
@@ -1,4 +1,4 @@
1
1
  module Mulang
2
- VERSION = "6.10.0"
3
- MULANG_VERSION = "6.10.0"
2
+ VERSION = "6.11.1"
3
+ MULANG_VERSION = "6.11.1"
4
4
  end
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mulang
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.10.0
4
+ version: 6.11.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Franco Bulgarelli
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-02-04 00:00:00.000000000 Z
11
+ date: 2023-04-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mumukit-core
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">"
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.0'
19
+ version: '1.19'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">"
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.0'
26
+ version: '1.19'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: codeclimate-test-reporter
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -44,28 +44,28 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '5.0'
47
+ version: '6.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '5.0'
54
+ version: '6.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '12.3'
61
+ version: '13.0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '12.3'
68
+ version: '13.0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rspec
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -134,14 +134,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
134
134
  requirements:
135
135
  - - ">="
136
136
  - !ruby/object:Gem::Version
137
- version: '0'
137
+ version: '2.3'
138
138
  required_rubygems_version: !ruby/object:Gem::Requirement
139
139
  requirements:
140
140
  - - ">="
141
141
  - !ruby/object:Gem::Version
142
142
  version: '0'
143
143
  requirements: []
144
- rubygems_version: 3.0.3
144
+ rubygems_version: 3.3.26
145
145
  signing_key:
146
146
  specification_version: 4
147
147
  summary: Gem wrapper for mulang tool