Browse Source

Formatting

master
Dylan Baker 4 years ago
parent
commit
58838d390a
5 changed files with 31 additions and 48 deletions
  1. 1
    1
      lib/ahem/lexer.rb
  2. 3
    1
      lib/ahem/parser.rb
  3. 19
    29
      spec/ast/function_call_spec.rb
  4. 2
    5
      spec/lexer_spec.rb
  5. 6
    12
      spec/parser_spec.rb

+ 1
- 1
lib/ahem/lexer.rb View File

@@ -112,7 +112,7 @@ class Lexer
112 112
       Token.new(TokenKinds::ROCKET)
113 113
     elsif source.match(/\A\#/)
114 114
       @position += 1
115
-      Token.new(TokenKinds::HASH)      
115
+      Token.new(TokenKinds::HASH)
116 116
     elsif source.match(/\A!/)
117 117
       @position += 1
118 118
       Token.new(TokenKinds::OPERATOR, :!)

+ 3
- 1
lib/ahem/parser.rb View File

@@ -284,7 +284,9 @@ class Parser
284 284
         raise "Unexpected token #{token.type}"
285 285
       end
286 286
 
287
-    while [TokenKinds::LPAREN, TokenKinds::LBRACKET, TokenKinds::HASH].include?(@current_token.type)
287
+    while [TokenKinds::LPAREN, TokenKinds::LBRACKET, TokenKinds::HASH].include?(
288
+      @current_token.type
289
+    )
288 290
       case @current_token.type
289 291
       when TokenKinds::LPAREN
290 292
         args = arguments

+ 19
- 29
spec/ast/function_call_spec.rb View File

@@ -186,18 +186,16 @@ RSpec.describe AST::FunctionCall do
186 186
   end
187 187
 
188 188
   it 'allows calling an anonymous function directly' do
189
-    result = AST::FunctionCall.new(
190
-      AST::FunctionDefinition.new(
191
-        nil,
192
-        [],
193
-        AST::Block.new(
194
-          [
195
-            AST::Number.new(5.0)
196
-          ]
197
-        )
198
-      ),
199
-      []
200
-    ).execute(Environment.new)
189
+    result =
190
+      AST::FunctionCall.new(
191
+        AST::FunctionDefinition.new(
192
+          nil,
193
+          [],
194
+          AST::Block.new([AST::Number.new(5.0)])
195
+        ),
196
+        []
197
+      )
198
+        .execute(Environment.new)
201 199
     expect(result).to eq(5.0)
202 200
   end
203 201
 
@@ -209,7 +207,7 @@ RSpec.describe AST::FunctionCall do
209 207
   # }
210 208
   # let y = outer();
211 209
   # y();
212
-  it 'keeps a reference to a closure\'s environment' do
210
+  it "keeps a reference to a closure's environment" do
213 211
     env = Environment.new
214 212
     AST::FunctionDefinition.new(
215 213
       AST::Identifier.new('outer'),
@@ -223,26 +221,18 @@ RSpec.describe AST::FunctionCall do
223 221
           AST::FunctionDefinition.new(
224 222
             nil,
225 223
             [],
226
-            AST::Block.new(
227
-              [
228
-                AST::Identifier.new('x'),
229
-              ]
230
-            )
224
+            AST::Block.new([AST::Identifier.new('x')])
231 225
           )
232 226
         ]
233 227
       )
234
-    ).execute(env)
228
+    )
229
+      .execute(env)
235 230
     AST::VariableDeclaration.new(
236 231
       AST::Identifier.new('y'),
237
-      AST::FunctionCall.new(
238
-        AST::Identifier.new('outer'),
239
-        []
240
-      )
241
-    ).execute(env)
242
-    result = AST::FunctionCall.new(
243
-      AST::Identifier.new('y'),
244
-      []
245
-    ).execute(env)
246
-    expect(result).to eq("hello world")
232
+      AST::FunctionCall.new(AST::Identifier.new('outer'), [])
233
+    )
234
+      .execute(env)
235
+    result = AST::FunctionCall.new(AST::Identifier.new('y'), []).execute(env)
236
+    expect(result).to eq('hello world')
247 237
   end
248 238
 end

+ 2
- 5
spec/lexer_spec.rb View File

@@ -180,11 +180,8 @@ RSpec.describe Lexer do
180 180
   end
181 181
 
182 182
   it 'lexes hashes' do
183
-    expect(Lexer.new("#").scan_all).to eq(
184
-      [
185
-        Token.new(TokenKinds::HASH),
186
-        Token.new(TokenKinds::EOF)
187
-      ]
183
+    expect(Lexer.new('#').scan_all).to eq(
184
+      [Token.new(TokenKinds::HASH), Token.new(TokenKinds::EOF)]
188 185
     )
189 186
   end
190 187
 end

+ 6
- 12
spec/parser_spec.rb View File

@@ -459,10 +459,7 @@ RSpec.describe Parser do
459 459
     expect(parse('func()();')).to eq(
460 460
       [
461 461
         AST::FunctionCall.new(
462
-          AST::FunctionCall.new(
463
-            AST::Identifier.new('func'),
464
-            [],
465
-          ),
462
+          AST::FunctionCall.new(AST::Identifier.new('func'), []),
466 463
           []
467 464
         )
468 465
       ]
@@ -477,10 +474,7 @@ RSpec.describe Parser do
477 474
             AST::Index.new(
478 475
               AST::FunctionCall.new(
479 476
                 AST::Index.new(
480
-                  AST::FunctionCall.new(
481
-                    AST::Identifier.new('func'),
482
-                    []
483
-                  ),
477
+                  AST::FunctionCall.new(AST::Identifier.new('func'), []),
484 478
                   AST::Number.new(0.0)
485 479
                 ),
486 480
                 []
@@ -500,8 +494,8 @@ RSpec.describe Parser do
500 494
       [
501 495
         AST::Property.new(
502 496
           AST::Identifier.new('hello'),
503
-          AST::Identifier.new('world'),
504
-        ),
497
+          AST::Identifier.new('world')
498
+        )
505 499
       ]
506 500
     )
507 501
   end
@@ -512,9 +506,9 @@ RSpec.describe Parser do
512 506
         AST::FunctionCall.new(
513 507
           AST::Property.new(
514 508
             AST::Identifier.new('hello'),
515
-            AST::Identifier.new('world'),
509
+            AST::Identifier.new('world')
516 510
           ),
517
-          []          
511
+          []
518 512
         )
519 513
       ]
520 514
     )

Loading…
Cancel
Save