herb 0.7.2-x86-linux-musl → 0.7.4-x86-linux-musl

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.
Files changed (133) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +2 -0
  3. data/README.md +1 -1
  4. data/Rakefile +46 -1
  5. data/config.yml +714 -0
  6. data/ext/herb/extconf.rb +2 -1
  7. data/ext/herb/nodes.c +1 -1
  8. data/herb.gemspec +3 -0
  9. data/lib/herb/3.0/herb.so +0 -0
  10. data/lib/herb/3.1/herb.so +0 -0
  11. data/lib/herb/3.2/herb.so +0 -0
  12. data/lib/herb/3.3/herb.so +0 -0
  13. data/lib/herb/3.4/herb.so +0 -0
  14. data/lib/herb/engine.rb +8 -1
  15. data/lib/herb/version.rb +1 -1
  16. data/src/analyze.c +5 -9
  17. data/src/analyze_helpers.c +17 -6
  18. data/src/herb.c +2 -2
  19. data/src/include/parser.h +2 -2
  20. data/src/include/pretty_print.h +1 -1
  21. data/src/include/version.h +1 -1
  22. data/src/parser.c +3 -2
  23. data/src/pretty_print.c +1 -1
  24. data/templates/ext/herb/error_helpers.c.erb +85 -0
  25. data/templates/ext/herb/error_helpers.h.erb +12 -0
  26. data/templates/ext/herb/nodes.c.erb +90 -0
  27. data/templates/ext/herb/nodes.h.erb +9 -0
  28. data/templates/javascript/packages/core/src/errors.ts.erb +193 -0
  29. data/templates/javascript/packages/core/src/node-type-guards.ts.erb +325 -0
  30. data/templates/javascript/packages/core/src/nodes.ts.erb +414 -0
  31. data/templates/javascript/packages/core/src/visitor.ts.erb +29 -0
  32. data/templates/javascript/packages/node/extension/error_helpers.cpp.erb +113 -0
  33. data/templates/javascript/packages/node/extension/error_helpers.h.erb +17 -0
  34. data/templates/javascript/packages/node/extension/nodes.cpp.erb +111 -0
  35. data/templates/javascript/packages/node/extension/nodes.h.erb +17 -0
  36. data/templates/lib/herb/ast/nodes.rb.erb +117 -0
  37. data/templates/lib/herb/errors.rb.erb +106 -0
  38. data/templates/lib/herb/visitor.rb.erb +28 -0
  39. data/templates/sig/serialized_ast_errors.rbs.erb +10 -0
  40. data/templates/sig/serialized_ast_nodes.rbs.erb +10 -0
  41. data/templates/src/ast_nodes.c.erb +145 -0
  42. data/templates/src/ast_pretty_print.c.erb +97 -0
  43. data/templates/src/errors.c.erb +245 -0
  44. data/templates/src/include/ast_nodes.h.erb +46 -0
  45. data/templates/src/include/ast_pretty_print.h.erb +14 -0
  46. data/templates/src/include/errors.h.erb +58 -0
  47. data/templates/src/visitor.c.erb +47 -0
  48. data/templates/template.rb +406 -0
  49. data/templates/wasm/error_helpers.cpp.erb +93 -0
  50. data/templates/wasm/error_helpers.h.erb +15 -0
  51. data/templates/wasm/nodes.cpp.erb +79 -0
  52. data/templates/wasm/nodes.h.erb +15 -0
  53. data/vendor/prism/Rakefile +75 -0
  54. data/vendor/prism/config.yml +4713 -0
  55. data/vendor/prism/include/prism/ast.h +8190 -0
  56. data/vendor/prism/include/prism/defines.h +260 -0
  57. data/vendor/prism/include/prism/diagnostic.h +455 -0
  58. data/vendor/prism/include/prism/encoding.h +283 -0
  59. data/vendor/prism/include/prism/node.h +129 -0
  60. data/vendor/prism/include/prism/options.h +482 -0
  61. data/vendor/prism/include/prism/pack.h +163 -0
  62. data/vendor/prism/include/prism/parser.h +933 -0
  63. data/vendor/prism/include/prism/prettyprint.h +34 -0
  64. data/vendor/prism/include/prism/regexp.h +43 -0
  65. data/vendor/prism/include/prism/static_literals.h +121 -0
  66. data/vendor/prism/include/prism/util/pm_buffer.h +236 -0
  67. data/vendor/prism/include/prism/util/pm_char.h +204 -0
  68. data/vendor/prism/include/prism/util/pm_constant_pool.h +218 -0
  69. data/vendor/prism/include/prism/util/pm_integer.h +130 -0
  70. data/vendor/prism/include/prism/util/pm_list.h +103 -0
  71. data/vendor/prism/include/prism/util/pm_memchr.h +29 -0
  72. data/vendor/prism/include/prism/util/pm_newline_list.h +113 -0
  73. data/vendor/prism/include/prism/util/pm_string.h +200 -0
  74. data/vendor/prism/include/prism/util/pm_strncasecmp.h +32 -0
  75. data/vendor/prism/include/prism/util/pm_strpbrk.h +46 -0
  76. data/vendor/prism/include/prism/version.h +29 -0
  77. data/vendor/prism/include/prism.h +408 -0
  78. data/vendor/prism/src/diagnostic.c +848 -0
  79. data/vendor/prism/src/encoding.c +5235 -0
  80. data/vendor/prism/src/node.c +8676 -0
  81. data/vendor/prism/src/options.c +328 -0
  82. data/vendor/prism/src/pack.c +509 -0
  83. data/vendor/prism/src/prettyprint.c +8941 -0
  84. data/vendor/prism/src/prism.c +23302 -0
  85. data/vendor/prism/src/regexp.c +790 -0
  86. data/vendor/prism/src/serialize.c +2268 -0
  87. data/vendor/prism/src/static_literals.c +617 -0
  88. data/vendor/prism/src/token_type.c +703 -0
  89. data/vendor/prism/src/util/pm_buffer.c +357 -0
  90. data/vendor/prism/src/util/pm_char.c +318 -0
  91. data/vendor/prism/src/util/pm_constant_pool.c +342 -0
  92. data/vendor/prism/src/util/pm_integer.c +670 -0
  93. data/vendor/prism/src/util/pm_list.c +49 -0
  94. data/vendor/prism/src/util/pm_memchr.c +35 -0
  95. data/vendor/prism/src/util/pm_newline_list.c +125 -0
  96. data/vendor/prism/src/util/pm_string.c +383 -0
  97. data/vendor/prism/src/util/pm_strncasecmp.c +36 -0
  98. data/vendor/prism/src/util/pm_strpbrk.c +206 -0
  99. data/vendor/prism/templates/ext/prism/api_node.c.erb +282 -0
  100. data/vendor/prism/templates/include/prism/ast.h.erb +226 -0
  101. data/vendor/prism/templates/include/prism/diagnostic.h.erb +130 -0
  102. data/vendor/prism/templates/java/org/prism/AbstractNodeVisitor.java.erb +22 -0
  103. data/vendor/prism/templates/java/org/prism/Loader.java.erb +434 -0
  104. data/vendor/prism/templates/java/org/prism/Nodes.java.erb +403 -0
  105. data/vendor/prism/templates/javascript/src/deserialize.js.erb +448 -0
  106. data/vendor/prism/templates/javascript/src/nodes.js.erb +197 -0
  107. data/vendor/prism/templates/javascript/src/visitor.js.erb +78 -0
  108. data/vendor/prism/templates/lib/prism/compiler.rb.erb +43 -0
  109. data/vendor/prism/templates/lib/prism/dispatcher.rb.erb +103 -0
  110. data/vendor/prism/templates/lib/prism/dot_visitor.rb.erb +189 -0
  111. data/vendor/prism/templates/lib/prism/dsl.rb.erb +133 -0
  112. data/vendor/prism/templates/lib/prism/inspect_visitor.rb.erb +131 -0
  113. data/vendor/prism/templates/lib/prism/mutation_compiler.rb.erb +19 -0
  114. data/vendor/prism/templates/lib/prism/node.rb.erb +515 -0
  115. data/vendor/prism/templates/lib/prism/reflection.rb.erb +136 -0
  116. data/vendor/prism/templates/lib/prism/serialize.rb.erb +602 -0
  117. data/vendor/prism/templates/lib/prism/visitor.rb.erb +55 -0
  118. data/vendor/prism/templates/rbi/prism/dsl.rbi.erb +68 -0
  119. data/vendor/prism/templates/rbi/prism/node.rbi.erb +164 -0
  120. data/vendor/prism/templates/rbi/prism/visitor.rbi.erb +18 -0
  121. data/vendor/prism/templates/sig/prism/_private/dot_visitor.rbs.erb +45 -0
  122. data/vendor/prism/templates/sig/prism/dsl.rbs.erb +31 -0
  123. data/vendor/prism/templates/sig/prism/mutation_compiler.rbs.erb +7 -0
  124. data/vendor/prism/templates/sig/prism/node.rbs.erb +132 -0
  125. data/vendor/prism/templates/sig/prism/visitor.rbs.erb +17 -0
  126. data/vendor/prism/templates/sig/prism.rbs.erb +89 -0
  127. data/vendor/prism/templates/src/diagnostic.c.erb +523 -0
  128. data/vendor/prism/templates/src/node.c.erb +333 -0
  129. data/vendor/prism/templates/src/prettyprint.c.erb +166 -0
  130. data/vendor/prism/templates/src/serialize.c.erb +406 -0
  131. data/vendor/prism/templates/src/token_type.c.erb +369 -0
  132. data/vendor/prism/templates/template.rb +689 -0
  133. metadata +112 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4ba53107af6902e7c0d0b248f97a11a07e1bd32c9fbd474b070c81ebc6343663
4
- data.tar.gz: d0fd42861728899987425c12b99a04650d4b632cc41fccee91e14c04a8f998ea
3
+ metadata.gz: f400dff0999c0a83648f114189c222f6bcdbf2321affde0df35c39ee200ca71d
4
+ data.tar.gz: e2f334f876964c727d8d76b1b6b6956443e60cc37563dc82c3439b4c2cd3cd4d
5
5
  SHA512:
6
- metadata.gz: 5580fbbc70fe117398f44569fb368a782a617e449cf7a535d286e06222735b073339eceb5aa703b326cc29e53d53b98f5171a97f00afb0b4ad8bedaef39cccd9
7
- data.tar.gz: ba639708ce5cce3bd44d7078f3969e4ec7038ec162f22223efb62463ecf15479adbed6781ab3016eb8212c997840c31a1493004ab46afde84053c14b38eac53d
6
+ metadata.gz: 91470ea4a0b0b79f91c530bf845ec7b104f368a1e07deb2a55319cc754ef95092822ba1e775bbf8f1448f34e549023e42bae7d408dd6bd3589f0bc227f04a98a
7
+ data.tar.gz: df4072299a153696f71be5af04414fce573de75561c2b8c81a3f45d08358934ce0e33f6e8f58bf8a5a21728f91ede1434e2b67a53eecba6518a88193fde20b0b
data/Makefile CHANGED
@@ -101,6 +101,7 @@ clean:
101
101
  rm -f $(exec) $(test_exec) $(lib_name) $(shared_lib_name) $(ruby_extension)
102
102
  rm -rf $(objects) $(test_objects) $(extension_objects) lib/herb/*.bundle tmp
103
103
  rm -rf $(prism_path)
104
+ rake prism:clean
104
105
 
105
106
  bundle_install:
106
107
  bundle install
@@ -110,6 +111,7 @@ templates: bundle_install
110
111
 
111
112
  prism: bundle_install
112
113
  cd $(prism_path) && ruby templates/template.rb && make static && cd -
114
+ rake prism:vendor
113
115
 
114
116
  format:
115
117
  $(clang_format) -i $(project_and_extension_files)
data/README.md CHANGED
@@ -99,7 +99,7 @@ Commands:
99
99
  bundle exec herb version Prints the versions of the Herb gem and the libherb library.
100
100
  ```
101
101
 
102
- For detailed information, like how you can use Herb progamatiacally in Ruby and JavaScript, visit the [documentation site](https://herb-tools.dev/bindings/ruby/reference).
102
+ For detailed information, like how you can use Herb programatically in Ruby and JavaScript, visit the [documentation site](https://herb-tools.dev/bindings/ruby/reference).
103
103
 
104
104
 
105
105
  ## Background and Talk
data/Rakefile CHANGED
@@ -128,6 +128,51 @@ task :templates do
128
128
  end
129
129
  end
130
130
 
131
+ prism_vendor_path = "vendor/prism"
132
+
133
+ namespace :prism do
134
+ desc "Setup and vendor Prism"
135
+ task :vendor do
136
+ Rake::Task["prism:clean"].execute
137
+
138
+ prism_bundle_path = `bundle show prism`.chomp
139
+
140
+ puts prism_bundle_path
141
+
142
+ if prism_bundle_path.empty?
143
+ puts "Make sure to run `bundle install` in the herb project directory first"
144
+ exit 1
145
+ end
146
+
147
+ FileUtils.mkdir_p(prism_vendor_path)
148
+
149
+ files = [
150
+ "config.yml",
151
+ "Rakefile",
152
+ "src/",
153
+ "include/",
154
+ "templates/"
155
+ ]
156
+
157
+ files.each do |file|
158
+ vendored_file_path = prism_vendor_path + "/#{file}"
159
+ puts "Vendoring '#{file}' Prism file to #{vendored_file_path}"
160
+ FileUtils.cp_r(prism_bundle_path + "/#{file}", prism_vendor_path)
161
+ end
162
+ end
163
+
164
+ desc "Clean vendored Prism in vendor/prism/"
165
+ task :clean do
166
+ puts "Cleaning up vendored Prism at #{prism_vendor_path}..."
167
+ begin
168
+ FileUtils.rm_r(prism_vendor_path)
169
+ puts "Cleaned up vendored Prism."
170
+ rescue Errno::ENOENT
171
+ puts "Vendored prism at: #{prism_vendor_path} didn't exist. Skipping."
172
+ end
173
+ end
174
+ end
175
+
131
176
  namespace :templates do
132
177
  desc "Watch template files and regenerate on changes"
133
178
  task :watch do
@@ -199,4 +244,4 @@ task rbs_inline: :templates do
199
244
  end
200
245
  end
201
246
 
202
- task default: [:templates, :make, :compile, :test]
247
+ task default: [:templates, "prism:vendor", :make, :compile, :test]