brotorift 0.4.3 → 0.4.4

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 (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/compiler.rb +3 -9
  3. data/lib/runtime.rb +0 -21
  4. metadata +15 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ce2b5ca6a02afec4e1814db55786bf2a2d7872cddebe3d45b84e03d6c1cd6c31
4
- data.tar.gz: ea893b80ffd9db7ead1cf84f3d88293583d2b8de42e5bae4a9ad3c1898a862bf
3
+ metadata.gz: b35c5012c15f8bb488f1544b7ff131d8d3464fe2b5ce0c859139ffd3065bc92e
4
+ data.tar.gz: 9f645f7f92fba074526292136e4bc72fb4b6f66376e5f026201d9411c7a5d8cc
5
5
  SHA512:
6
- metadata.gz: c993122fa2c179935e7d3dff49cd253f84b4b5414172bf2090055c2f81e71d757f41dce4acda7f51f56f3ac9afe53ce6cc33f4302bb63cd217b467d8eb70b8ae
7
- data.tar.gz: d00343c272bca1e935bfe56d4ad4e82ce7981e32724fa453e97bc781953e86ae6ffc6889d113ed3a8aa7071a27f8828c09bdaff79e638d3e03e822e8b489d64f
6
+ metadata.gz: 53aa0520a38cde0a6a62367eccf92cf956c1ed0bc20a94a5a3e152be2fdacbf00fa5b112aa4efa7471f25d1ad9a90373051b6b77b2d6c4551bbf8ada7d2ef3d9
7
+ data.tar.gz: f7c8fd3dbd53e738389730af88e6f5e0af45d1761e3e903be34d6720c75c08052ae3bbe64d855e83feed8348c5222ea2ae26851638dc2ede078e39fcdd8dbae3
data/lib/compiler.rb CHANGED
@@ -24,10 +24,6 @@ class Compiler
24
24
  end
25
25
 
26
26
  def compile filename
27
- @runtime = self.compile_file filename
28
- end
29
-
30
- def compile_file filename
31
27
  content = File.read filename, encoding: 'utf-8'
32
28
  tokens = Lexer::lex content, filename
33
29
  begin
@@ -36,9 +32,8 @@ class Compiler
36
32
  add_error UnexpectedTokenError.new e.current
37
33
  return
38
34
  end
39
- runtime = Runtime.new filename
40
- self.compile_ast runtime, ast
41
- runtime
35
+ @runtime = Runtime.new filename if @runtime == nil
36
+ self.compile_ast @runtime, ast
42
37
  end
43
38
 
44
39
  def compile_ast runtime, ast
@@ -71,8 +66,7 @@ class Compiler
71
66
  add_error IncludeFileNotFoundError.new filename, include_ast.position
72
67
  return
73
68
  end
74
- include_runtime = self.compile_file filename
75
- @runtime.add_include include_runtime
69
+ self.compile filename
76
70
  end
77
71
 
78
72
  def compile_enum enum_ast
data/lib/runtime.rb CHANGED
@@ -193,7 +193,6 @@ class Runtime
193
193
  attr_reader :structs
194
194
  attr_reader :directions
195
195
  attr_reader :sequences
196
- attr_reader :includes
197
196
 
198
197
  def initialize filename
199
198
  @filename = filename
@@ -203,7 +202,6 @@ class Runtime
203
202
  @structs = {}
204
203
  @directions = []
205
204
  @sequences = {}
206
- @includes = []
207
205
 
208
206
  self.init_builtins
209
207
  end
@@ -256,11 +254,6 @@ class Runtime
256
254
  type_def = @structs[name]
257
255
  return type_def, self if type_def != nil
258
256
 
259
- @includes.each do |i|
260
- type_def = i.get_type name
261
- return type_def, i if type_def != nil
262
- end
263
-
264
257
  return nil, self
265
258
  end
266
259
 
@@ -272,11 +265,6 @@ class Runtime
272
265
  dir = @directions.find { |d| d.client == client and d.server == server and d.direction == direction }
273
266
  return dir if dir != nil
274
267
 
275
- @includes.each do |i|
276
- dir = i.get_direction client, direction, server
277
- return dir if dir != nil
278
- end
279
-
280
268
  return nil
281
269
  end
282
270
 
@@ -288,18 +276,9 @@ class Runtime
288
276
  sequence = @sequences[name]
289
277
  return sequence if sequence != nil
290
278
 
291
- @includes.each do |i|
292
- sequence = i.get_sequence name
293
- return sequence if sequence != nil
294
- end
295
-
296
279
  return nil
297
280
  end
298
281
 
299
- def add_include runtime
300
- @includes.push runtime
301
- end
302
-
303
282
  def get_node_directions node, side
304
283
  node_directions = {}
305
284
  @directions.each do |direction|
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: brotorift
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.3
4
+ version: 0.4.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Ren
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '3.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: filigree
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '='
46
+ - !ruby/object:Gem::Version
47
+ version: 0.2.0
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '='
53
+ - !ruby/object:Gem::Version
54
+ version: 0.2.0
41
55
  description: Brotorift generator
42
56
  email: lcdcdr2004@gmail.com
43
57
  executables: