rggen-veryl 0.5.1 → 0.5.2

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: 9b41be6a310cc8b7aaa40c16a079f1e93e71e942598768051287d938d6e9144b
4
- data.tar.gz: 9514391db52afe5e859e40f0966d0ffe1da6fb9357e6ab40e60c2f5ccfee9e21
3
+ metadata.gz: cad5389b85d457e5d6adc888974bcd91347238caa68270a306680785ebb133c0
4
+ data.tar.gz: da0507974523b3d60a6abc8505d7c033896d7cff0fc3d81cc0cd7505e514ec19
5
5
  SHA512:
6
- metadata.gz: 5dbcc7f0763533b786d15d8dd7c808d7978068ec6acdc098643d8b3bc6b81cd1bac58a2eddc3bed90620f5bdd05d181a97f577c3473919632023c609775638a4
7
- data.tar.gz: 21a8cbf18a1a2100282972936ec9ee5ac4ad9ca37e9238a851461bafc6962cb2ff8bdf12d08b23e02f7abc4bd57b0a5402aa7b5029836faff4b592e5dbfcef15
6
+ metadata.gz: f179f2b8eaaa0cdea034b0694f8319e2e7ace6d60a737c183fd6fe77da7ad62d84dda21ce942156f22cd3f7c294e1ed684dd14f6a849fc65ec88ccd7e9618ea6
7
+ data.tar.gz: bc8ba074f1f2e472426a9f84f70f4d60a6ebe014e119fb6304b8315641d260bc8f18fac9f3345e2aeb5f55d2bd685ffd033875a881c5ad0142e13f25db37448a
@@ -23,6 +23,7 @@ RgGen.define_simple_feature(:register_block, :veryl_top) do
23
23
  write_file '<%= register_block.name %>.veryl' do |f|
24
24
  f.body do |code|
25
25
  code << module_definition(register_block.name) do |m|
26
+ m.attributes attributes
26
27
  m.package_imports packages
27
28
  m.params params
28
29
  m.ports ports
@@ -46,6 +47,10 @@ RgGen.define_simple_feature(:register_block, :veryl_top) do
46
47
  register_block.bus_width
47
48
  end
48
49
 
50
+ def attributes
51
+ { fmt: :skip }
52
+ end
53
+
49
54
  def packages
50
55
  ['rggen::rggen_rtl_pkg', *register_block.package_imports(:register_block)]
51
56
  end
@@ -5,6 +5,7 @@ module RgGen
5
5
  module Utility
6
6
  class ModuleDefinition < SystemVerilog::Common::Utility::StructureDefinition
7
7
  define_attribute :name
8
+ define_attribute :attributes
8
9
  define_attribute :package_imports
9
10
  define_attribute :generics
10
11
  define_attribute :params
@@ -14,7 +15,7 @@ module RgGen
14
15
  private
15
16
 
16
17
  def header_code(code)
17
- package_import_declaration(code)
18
+ attribute_declarations(code)
18
19
  module_header_begin(code)
19
20
  generic_declarations(code)
20
21
  param_declarations(code)
@@ -22,9 +23,9 @@ module RgGen
22
23
  module_header_end(code)
23
24
  end
24
25
 
25
- def package_import_declaration(code)
26
- package_imports&.each do |package|
27
- code << "import #{package}::*;" << nl
26
+ def attribute_declarations(code)
27
+ attributes&.each do |name, value|
28
+ code << "#[#{name}(#{value})]" << nl
28
29
  end
29
30
  end
30
31
 
@@ -65,7 +66,14 @@ module RgGen
65
66
  code << '{' << nl
66
67
  end
67
68
 
69
+ def package_import_declaration(code)
70
+ package_imports&.each do |package|
71
+ code << "import #{package}::*;" << nl
72
+ end
73
+ end
74
+
68
75
  def pre_body_code(code)
76
+ package_import_declaration(code)
69
77
  add_declarations_to_body(code, Array(variables))
70
78
  end
71
79
 
@@ -2,6 +2,6 @@
2
2
 
3
3
  module RgGen
4
4
  module Veryl
5
- VERSION = '0.5.1'
5
+ VERSION = '0.5.2'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rggen-veryl
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.5.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Taichi Ishitani
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-07-21 00:00:00.000000000 Z
10
+ date: 2025-08-04 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: rggen-systemverilog
@@ -132,5 +132,5 @@ required_rubygems_version: !ruby/object:Gem::Requirement
132
132
  requirements: []
133
133
  rubygems_version: 3.6.2
134
134
  specification_version: 4
135
- summary: rggen-veryl-0.5.1
135
+ summary: rggen-veryl-0.5.2
136
136
  test_files: []