rggen-systemverilog 0.15.0 → 0.16.0

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: cc0fa0eebf47d5df307cb4c9ed64ab2946267979155d84d2ff9f946f5fe73276
4
- data.tar.gz: 329fa0ec20a90177423cabe340b82e1b351f4464cffddd3bd67079eb023f4ca0
3
+ metadata.gz: 62ec6f5cb3ee1c7f88c2b46fa979376823e7d5f5098acf1cc41dd3b10a89de9b
4
+ data.tar.gz: 5c8976e639c443eb330be03e2c0487c261c50e46ef2fbac6e70adfb514023638
5
5
  SHA512:
6
- metadata.gz: 3d549ee0707e59423177fb364ebd95d65008930c712816720322fbf9ed11fc87fa59aed077c422b9aac85853c93d631d46c2c98be12bdd7788a974e0a14d099e
7
- data.tar.gz: 32ad0b9fb29df9625232ada4c7952a26ff384db80faccfdb1b3bedd9ae22effa60c34dc3cb252b87f3b9f6384c3eafec6a66fccacd761ebc996ba4fd856aef93
6
+ metadata.gz: 1f8e2778fd4771395143a01cc84e59077e097f33b50b4083d7209e32a81a1988f36d7af140661b07e6a975df35a5e266e8d82272fa6134ac0bd7ae2929aa0d04
7
+ data.tar.gz: ea482e0d904d91faf76b9575a4807ab92e55056c2ecb16fe4078cf03012314ba9d374088ca34570adbc9d64edec6fa21b647d7476b4c32e365c25946563afe36
@@ -75,8 +75,8 @@ RgGen.define_list_feature(:bit_field, :type) do
75
75
  end
76
76
 
77
77
  factory do
78
- def select_feature(_configuration, bit_field)
79
- target_features[bit_field.type]
78
+ def target_feature_key(_configuration, bit_field)
79
+ bit_field.type
80
80
  end
81
81
  end
82
82
  end
@@ -146,8 +146,8 @@ RgGen.define_list_feature(:register, :type) do
146
146
  end
147
147
 
148
148
  factory do
149
- def select_feature(_configuration, register)
150
- target_features[register.type]
149
+ def target_feature_key(_configuration, register)
150
+ register.type
151
151
  end
152
152
  end
153
153
  end
@@ -59,8 +59,8 @@ RgGen.define_list_feature(:bit_field, :type) do
59
59
  end
60
60
 
61
61
  factory do
62
- def select_feature(_configuration, bit_field)
63
- target_features[bit_field.type] || (
62
+ def target_feature_key(_configuration, bit_field)
63
+ target_features.key?(bit_field.type) && bit_field.type || (
64
64
  error "code generator for #{bit_field.type} " \
65
65
  'bit field type is not implemented'
66
66
  )
@@ -15,5 +15,7 @@ RgGen.define_simple_feature(:global, :array_port_format) do
15
15
  error "illegal input value for array port format: #{value.inspect}"
16
16
  end
17
17
  end
18
+
19
+ printable :array_port_format
18
20
  end
19
21
  end
@@ -20,5 +20,9 @@ RgGen.define_simple_feature(:global, :fold_sv_interface_port) do
20
20
  error "cannot convert #{value.inspect} into boolean"
21
21
  end
22
22
  end
23
+
24
+ printable :fold_sv_interface_port do
25
+ fold_sv_interface_port?
26
+ end
23
27
  end
24
28
  end
@@ -53,10 +53,11 @@ RgGen.define_list_feature(:register, :type) do
53
53
  end
54
54
 
55
55
  factory do
56
- def select_feature(_configuration, register)
57
- target_features[register.type] ||
58
- unless register.type == :default
59
- error "code generator for #{register.type} register type " \
56
+ def target_feature_key(_configuration, register)
57
+ type = register.type
58
+ (target_features.key?(type) || type == :default) && type ||
59
+ begin
60
+ error "code generator for #{type} register type " \
60
61
  'is not implemented'
61
62
  end
62
63
  end
@@ -40,8 +40,8 @@ RgGen.define_list_feature(:register_block, :protocol) do
40
40
  (error 'no protocols are available', position)
41
41
  end
42
42
 
43
- def select_feature(data)
44
- target_features[data.value]
43
+ def target_feature_key(data)
44
+ data.value
45
45
  end
46
46
 
47
47
  private
@@ -100,8 +100,8 @@ RgGen.define_list_feature(:register_block, :protocol) do
100
100
  end
101
101
 
102
102
  factory do
103
- def select_feature(configuration, _register_block)
104
- target_features[configuration.protocol]
103
+ def target_feature_key(configuration, _register_block)
104
+ configuration.protocol
105
105
  end
106
106
  end
107
107
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module RgGen
4
4
  module SystemVerilog
5
- VERSION = '0.15.0'
5
+ VERSION = '0.16.0'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rggen-systemverilog
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.15.0
4
+ version: 0.16.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Taichi Ishitani
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-09-18 00:00:00.000000000 Z
11
+ date: 2019-10-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: docile
@@ -170,5 +170,5 @@ requirements: []
170
170
  rubygems_version: 3.0.3
171
171
  signing_key:
172
172
  specification_version: 4
173
- summary: rggen-systemverilog-0.15.0
173
+ summary: rggen-systemverilog-0.16.0
174
174
  test_files: []