brotorift 0.4.3 → 0.4.4

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/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: