dcm 0.0.17 → 0.0.18

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/codinginfo.rb +20 -7
  3. data/lib/version.rb +1 -1
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 178c96d7543921916d9ce230357dcde49fae0c99d6cd6f7893ea340e24cbb169
4
- data.tar.gz: 193d267c359f51cb7ac48a15478916c4760118918941eb0721fa7bda4797c7a0
3
+ metadata.gz: 3aaa1587b03304465c420597c49eb4e1f2da31b398179619a369a661e132f403
4
+ data.tar.gz: 7f50432f400c44d7df6811be4824074e5e3b4ddd6ba093bf56228d2844365719
5
5
  SHA512:
6
- metadata.gz: be1e020c36af16f739a0a964ec4e294f496af0430380654d15127a691032e50a3065c72529eb4d0e3c2ab4062012c14956be0c77030a6e3aa768050897c9d261
7
- data.tar.gz: 3dd9027dfc17a483c9df7c7b99607142e86cc85c7767e58f2a2c759183ec1ac46cc1a6439962450f2f7b60ec0ff0cb92cd082c0a8ff92595010282a0af86a767
6
+ metadata.gz: 4c30e958e78c5a792876bd5cd82efa5203e1aa68c743f7ea3c6cb5adda5df6de955d2b4005c4ebcf02fa5759c1383260118e64db93f38c6653cc046257e557bc
7
+ data.tar.gz: 8e6c1b9898ddfa1aeaee8ac0d714ef1a25667441f9b46870c41da349dbd58826c6afc28415cecbb16ebcf9b9b50d341e2b9c2c472d0c6904a1b1117583ab8062
data/lib/codinginfo.rb CHANGED
@@ -10,16 +10,29 @@ class Codinginfo
10
10
  # the package and value can be merged
11
11
 
12
12
  attr_reader :name, :value, :package
13
+ attr_accessor :assignments
13
14
  def initialize(name:, package: nil, value: nil)
14
- @name = name
15
- @package = package
16
- @value = value
15
+ @name = name
16
+ @package = package
17
+ @value = value
18
+ @assignments = []
17
19
  end
18
20
 
19
- def label_prefix
20
- return /^#{name}_(\w+_)?#{value}\./ if package.nil?
21
+ def match?(assignments, label)
22
+ # assignments
23
+ # .values
24
+ # .select { _1.name == name }
25
+ # .map { combine(_1) }
26
+ # .any? { label.name.match?(_1.label_prefix) }
27
+ label.name.match?(label_prefix)
28
+ end
21
29
 
22
- [name, package, value].join("_") + "."
30
+ def label_prefix
31
+ if package
32
+ [name, package, value].join("_") + "."
33
+ else
34
+ /^#{name}_([A-Za-z]+_)?#{value}\./
35
+ end
23
36
  end
24
37
 
25
38
  def to_s = "#{name}=#{value}"
@@ -133,7 +146,7 @@ class Codinginfo
133
146
  end
134
147
 
135
148
  def has_matching_cvar?(label)
136
- variant.cvars.any? { label.name.match?(_1.label_prefix) }
149
+ variant.cvars.any? { _1.match?(@assignments, label) }
137
150
  end
138
151
 
139
152
  def add_cvar_prefix(name, variant)
data/lib/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Dcm
2
- VERSION = "0.0.17"
2
+ VERSION = "0.0.18"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dcm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.17
4
+ version: 0.0.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonas Mueller
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-12-05 00:00:00.000000000 Z
11
+ date: 2024-12-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: automotive-ecu