rkelly-remix 0.0.6 → 0.0.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.rdoc +8 -0
- data/lib/rkelly/constants.rb +1 -1
- data/lib/rkelly/generated_parser.rb +1 -1
- data/lib/rkelly/tokenizer.rb +3 -5
- data/test/test_tokenizer.rb +22 -0
- metadata +109 -109
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 01ee81b72db24f2205db2b4b78eb1b1b5e97cdbd
|
4
|
+
data.tar.gz: 365e18220d4b3ad8a6b6c32a18af6eb9fb6eb78f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1f512cab0910cb645016c57e257d1fff5f95ebeae450a21ead05b65ec853d53171c876aff9d2e81866fad2501373da15ab89273e3a11e9cff0e4b2f968e9b386
|
7
|
+
data.tar.gz: 02feb41fc8e9da7d1925b047adc6ee7791b135774cc57e0da2860f6891cd606ffadc71a9e5d1a0c2ad4095c1b7bb9eaf8ee894891e3958e4d8a0aee0a3fbfe3b
|
data/CHANGELOG.rdoc
CHANGED
@@ -1,5 +1,13 @@
|
|
1
1
|
= RKelly-Remix CHANGELOG
|
2
2
|
|
3
|
+
=== 0.0.7
|
4
|
+
|
5
|
+
* Allow reserved words reserved only in strict mode.
|
6
|
+
|
7
|
+
=== 0.0.6
|
8
|
+
|
9
|
+
* Properly treat all unicode whitespace characters as whitespace.
|
10
|
+
|
3
11
|
=== 0.0.5
|
4
12
|
|
5
13
|
* Update list of reserved words to match ECMAScript 5
|
data/lib/rkelly/constants.rb
CHANGED
data/lib/rkelly/tokenizer.rb
CHANGED
@@ -13,15 +13,13 @@ module RKelly
|
|
13
13
|
const true false null debugger
|
14
14
|
}.map {|kw| [kw, kw.upcase.to_sym] }]
|
15
15
|
|
16
|
-
#
|
17
|
-
#
|
16
|
+
# These 6 are always reserved in ECMAScript 5.1
|
17
|
+
# Some others are only reserved in strict mode, but RKelly doesn't
|
18
|
+
# differenciate between strict and non-strict mode code.
|
18
19
|
# http://www.ecma-international.org/ecma-262/5.1/#sec-7.6.1.2
|
19
20
|
# https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Reserved_Words
|
20
21
|
RESERVED = Hash[%w{
|
21
22
|
class enum export extends import super
|
22
|
-
|
23
|
-
implements interface package private protected public static
|
24
|
-
let yield
|
25
23
|
}.map {|kw| [kw, true] }]
|
26
24
|
|
27
25
|
LITERALS = {
|
data/test/test_tokenizer.rb
CHANGED
@@ -233,6 +233,28 @@ class TokenizerTest < Test::Unit::TestCase
|
|
233
233
|
assert_equal([[kw.upcase.to_sym, kw]], tokens)
|
234
234
|
end
|
235
235
|
end
|
236
|
+
|
237
|
+
%w{
|
238
|
+
class enum extends super export import
|
239
|
+
}.each do |rw|
|
240
|
+
define_method(:"test_future_reserved_word_#{rw}_is_reserved") do
|
241
|
+
tokens = @tokenizer.tokenize(rw)
|
242
|
+
assert_equal 1, tokens.length
|
243
|
+
assert_equal([[:RESERVED, rw]], tokens)
|
244
|
+
end
|
245
|
+
end
|
246
|
+
|
247
|
+
%w{
|
248
|
+
implements let private public yield
|
249
|
+
interface package protected static
|
250
|
+
}.each do |rw|
|
251
|
+
define_method(:"test_future_reserved_word_#{rw}_is_identifier") do
|
252
|
+
tokens = @tokenizer.tokenize(rw)
|
253
|
+
assert_equal 1, tokens.length
|
254
|
+
assert_equal([[:IDENT, rw]], tokens)
|
255
|
+
end
|
256
|
+
end
|
257
|
+
|
236
258
|
{
|
237
259
|
'==' => :EQEQ,
|
238
260
|
'!=' => :NE,
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rkelly-remix
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Aaron Patterson
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2015-01-14 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rdoc
|
@@ -31,14 +31,14 @@ dependencies:
|
|
31
31
|
requirements:
|
32
32
|
- - ~>
|
33
33
|
- !ruby/object:Gem::Version
|
34
|
-
version: '3.
|
34
|
+
version: '3.13'
|
35
35
|
type: :development
|
36
36
|
prerelease: false
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
39
|
- - ~>
|
40
40
|
- !ruby/object:Gem::Version
|
41
|
-
version: '3.
|
41
|
+
version: '3.13'
|
42
42
|
description: |-
|
43
43
|
RKelly Remix is a fork of the
|
44
44
|
RKelly[https://github.com/tenderlove/rkelly] JavaScript parser.
|
@@ -277,72 +277,14 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
277
277
|
- !ruby/object:Gem::Version
|
278
278
|
version: '0'
|
279
279
|
requirements: []
|
280
|
-
rubyforge_project:
|
281
|
-
rubygems_version: 2.0.
|
280
|
+
rubyforge_project:
|
281
|
+
rubygems_version: 2.0.14
|
282
282
|
signing_key:
|
283
283
|
specification_version: 4
|
284
284
|
summary: RKelly Remix is a fork of the RKelly[https://github.com/tenderlove/rkelly]
|
285
285
|
JavaScript parser.
|
286
286
|
test_files:
|
287
|
-
- test/
|
288
|
-
- test/test_ecma_visitor.rb
|
289
|
-
- test/test_arguments_node.rb
|
290
|
-
- test/test_array_node.rb
|
291
|
-
- test/global_object/test_15_1_1_1.rb
|
292
|
-
- test/global_object/test_15_1_1_2.rb
|
293
|
-
- test/global_object/test_15_1_1_3.rb
|
294
|
-
- test/test_function_body_node.rb
|
295
|
-
- test/test_greater_or_equal_node.rb
|
296
|
-
- test/test_if_node.rb
|
297
|
-
- test/test_op_x_or_equal_node.rb
|
298
|
-
- test/test_case_block_node.rb
|
299
|
-
- test/test_null_node.rb
|
300
|
-
- test/test_new_expr_node.rb
|
301
|
-
- test/test_this_node.rb
|
302
|
-
- test/test_less_node.rb
|
303
|
-
- test/test_subtract_node.rb
|
304
|
-
- test/test_element_node.rb
|
305
|
-
- test/function/test_15_3_1_1-1.rb
|
306
|
-
- test/test_rkelly.rb
|
307
|
-
- test/test_op_or_equal_node.rb
|
308
|
-
- test/test_assign_expr_node.rb
|
309
|
-
- test/test_modulus_node.rb
|
310
|
-
- test/test_left_shift_node.rb
|
311
|
-
- test/test_add_node.rb
|
312
|
-
- test/test_function_decl_node.rb
|
313
|
-
- test/test_multiply_node.rb
|
314
|
-
- test/test_conditional_node.rb
|
315
|
-
- test/test_tokenizer.rb
|
316
|
-
- test/test_op_and_equal_node.rb
|
317
|
-
- test/test_logical_or_node.rb
|
318
|
-
- test/test_parameter_node.rb
|
319
|
-
- test/test_pointcut_visitor.rb
|
320
|
-
- test/test_bit_or_node.rb
|
321
|
-
- test/test_label_node.rb
|
322
|
-
- test/test_postfix_node.rb
|
323
|
-
- test/test_return_node.rb
|
324
|
-
- test/test_not_equal_node.rb
|
325
|
-
- test/test_char_pos.rb
|
326
|
-
- test/test_prefix_node.rb
|
327
|
-
- test/test_scope_chain.rb
|
328
|
-
- test/test_number_node.rb
|
329
|
-
- test/test_function_call_node.rb
|
330
|
-
- test/test_true_node.rb
|
331
|
-
- test/test_var_decl_node.rb
|
332
|
-
- test/test_type_of_node.rb
|
333
|
-
- test/test_do_while_node.rb
|
334
|
-
- test/test_line_number.rb
|
335
|
-
- test/test_const_statement_node.rb
|
336
|
-
- test/test_less_or_equal_node.rb
|
337
|
-
- test/test_throw_node.rb
|
338
|
-
- test/test_strict_equal_node.rb
|
339
|
-
- test/test_regexp_node.rb
|
340
|
-
- test/test_comma_node.rb
|
341
|
-
- test/test_unary_minus_node.rb
|
342
|
-
- test/test_delete_node.rb
|
343
|
-
- test/test_right_shift_node.rb
|
344
|
-
- test/test_instance_of_node.rb
|
345
|
-
- test/test_block_node.rb
|
287
|
+
- test/execution_contexts/test_10_1_3-1.rb
|
346
288
|
- test/expressions/test_11_3_1.rb
|
347
289
|
- test/expressions/test_11_3_2.rb
|
348
290
|
- test/expressions/test_11_4_2.rb
|
@@ -355,62 +297,120 @@ test_files:
|
|
355
297
|
- test/expressions/test_11_5_1.rb
|
356
298
|
- test/expressions/test_11_5_2.rb
|
357
299
|
- test/expressions/test_11_5_3.rb
|
358
|
-
- test/expressions/test_11_9_1.rb
|
359
300
|
- test/expressions/test_11_6_1-1.rb
|
360
|
-
- test/
|
361
|
-
- test/
|
362
|
-
- test/
|
363
|
-
- test/
|
301
|
+
- test/expressions/test_11_9_1.rb
|
302
|
+
- test/function/test_15_3_1_1-1.rb
|
303
|
+
- test/global_object/test_15_1_1_1.rb
|
304
|
+
- test/global_object/test_15_1_1_2.rb
|
305
|
+
- test/global_object/test_15_1_1_3.rb
|
364
306
|
- test/object/test_15_2_1_1.rb
|
365
307
|
- test/object/test_15_2_1_2.rb
|
366
308
|
- test/object/test_15_2_2_1.rb
|
367
|
-
- test/test_in_node.rb
|
368
|
-
- test/test_while_node.rb
|
369
|
-
- test/test_op_multiply_equal_node.rb
|
370
|
-
- test/test_try_node.rb
|
371
|
-
- test/test_op_l_shift_equal_node.rb
|
372
|
-
- test/test_for_node.rb
|
373
|
-
- test/test_equal_node.rb
|
374
|
-
- test/test_var_statement_node.rb
|
375
|
-
- test/test_op_equal_node.rb
|
376
|
-
- test/test_property_node.rb
|
377
|
-
- test/test_comments.rb
|
378
309
|
- test/statements/test_12_5-1.rb
|
379
|
-
- test/
|
380
|
-
- test/
|
381
|
-
- test/
|
382
|
-
- test/
|
383
|
-
- test/test_global_object.rb
|
384
|
-
- test/test_false_node.rb
|
385
|
-
- test/test_setter_property_node.rb
|
310
|
+
- test/test_add_node.rb
|
311
|
+
- test/test_arguments_node.rb
|
312
|
+
- test/test_array_node.rb
|
313
|
+
- test/test_assign_expr_node.rb
|
386
314
|
- test/test_automatic_semicolon_insertion.rb
|
387
|
-
- test/
|
388
|
-
- test/
|
315
|
+
- test/test_bit_and_node.rb
|
316
|
+
- test/test_bit_or_node.rb
|
317
|
+
- test/test_bit_x_or_node.rb
|
318
|
+
- test/test_bitwise_not_node.rb
|
319
|
+
- test/test_block_node.rb
|
389
320
|
- test/test_bracket_accessor_node.rb
|
390
|
-
- test/
|
391
|
-
- test/
|
321
|
+
- test/test_break_node.rb
|
322
|
+
- test/test_case_block_node.rb
|
392
323
|
- test/test_case_clause_node.rb
|
393
|
-
- test/
|
324
|
+
- test/test_char_pos.rb
|
325
|
+
- test/test_char_range.rb
|
326
|
+
- test/test_comma_node.rb
|
327
|
+
- test/test_comments.rb
|
328
|
+
- test/test_conditional_node.rb
|
329
|
+
- test/test_const_statement_node.rb
|
330
|
+
- test/test_continue_node.rb
|
331
|
+
- test/test_delete_node.rb
|
332
|
+
- test/test_divide_node.rb
|
333
|
+
- test/test_do_while_node.rb
|
334
|
+
- test/test_dot_accessor_node.rb
|
335
|
+
- test/test_ecma_visitor.rb
|
336
|
+
- test/test_element_node.rb
|
337
|
+
- test/test_empty_statement_node.rb
|
338
|
+
- test/test_equal_node.rb
|
339
|
+
- test/test_evaluation_visitor.rb
|
394
340
|
- test/test_expression_statement_node.rb
|
341
|
+
- test/test_false_node.rb
|
342
|
+
- test/test_for_in_node.rb
|
343
|
+
- test/test_for_node.rb
|
344
|
+
- test/test_function_body_node.rb
|
345
|
+
- test/test_function_call_node.rb
|
346
|
+
- test/test_function_decl_node.rb
|
347
|
+
- test/test_function_expr_node.rb
|
348
|
+
- test/test_function_visitor.rb
|
395
349
|
- test/test_getter_property_node.rb
|
350
|
+
- test/test_global_object.rb
|
351
|
+
- test/test_greater_node.rb
|
352
|
+
- test/test_greater_or_equal_node.rb
|
353
|
+
- test/test_if_node.rb
|
354
|
+
- test/test_in_node.rb
|
355
|
+
- test/test_instance_of_node.rb
|
356
|
+
- test/test_label_node.rb
|
357
|
+
- test/test_left_shift_node.rb
|
358
|
+
- test/test_less_node.rb
|
359
|
+
- test/test_less_or_equal_node.rb
|
360
|
+
- test/test_line_number.rb
|
361
|
+
- test/test_logical_and_node.rb
|
362
|
+
- test/test_logical_not_node.rb
|
363
|
+
- test/test_logical_or_node.rb
|
364
|
+
- test/test_modulus_node.rb
|
365
|
+
- test/test_multiply_node.rb
|
366
|
+
- test/test_new_expr_node.rb
|
367
|
+
- test/test_not_equal_node.rb
|
368
|
+
- test/test_not_strict_equal_node.rb
|
369
|
+
- test/test_null_node.rb
|
370
|
+
- test/test_number_node.rb
|
371
|
+
- test/test_object_literal_node.rb
|
372
|
+
- test/test_op_and_equal_node.rb
|
396
373
|
- test/test_op_divide_equal_node.rb
|
397
|
-
- test/
|
398
|
-
- test/
|
374
|
+
- test/test_op_equal_node.rb
|
375
|
+
- test/test_op_l_shift_equal_node.rb
|
376
|
+
- test/test_op_minus_equal_node.rb
|
377
|
+
- test/test_op_mod_equal_node.rb
|
378
|
+
- test/test_op_multiply_equal_node.rb
|
379
|
+
- test/test_op_or_equal_node.rb
|
399
380
|
- test/test_op_plus_equal_node.rb
|
400
|
-
- test/test_evaluation_visitor.rb
|
401
381
|
- test/test_op_r_shift_equal_node.rb
|
382
|
+
- test/test_op_u_r_shift_equal_node.rb
|
383
|
+
- test/test_op_x_or_equal_node.rb
|
384
|
+
- test/test_parameter_node.rb
|
385
|
+
- test/test_parser.rb
|
386
|
+
- test/test_pointcut_visitor.rb
|
387
|
+
- test/test_postfix_node.rb
|
388
|
+
- test/test_prefix_node.rb
|
389
|
+
- test/test_property_node.rb
|
390
|
+
- test/test_regexp_node.rb
|
391
|
+
- test/test_resolve_node.rb
|
392
|
+
- test/test_return_node.rb
|
393
|
+
- test/test_right_shift_node.rb
|
394
|
+
- test/test_rkelly.rb
|
402
395
|
- test/test_runtime.rb
|
403
|
-
- test/
|
404
|
-
- test/
|
405
|
-
- test/test_bit_and_node.rb
|
406
|
-
- test/test_function_visitor.rb
|
407
|
-
- test/test_continue_node.rb
|
408
|
-
- test/test_object_literal_node.rb
|
409
|
-
- test/test_bitwise_not_node.rb
|
410
|
-
- test/test_divide_node.rb
|
411
|
-
- test/test_unsigned_right_shift_node.rb
|
412
|
-
- test/test_unary_plus_node.rb
|
413
|
-
- test/test_function_expr_node.rb
|
396
|
+
- test/test_scope_chain.rb
|
397
|
+
- test/test_setter_property_node.rb
|
414
398
|
- test/test_source_elements.rb
|
415
|
-
- test/
|
416
|
-
- test/
|
399
|
+
- test/test_strict_equal_node.rb
|
400
|
+
- test/test_string_node.rb
|
401
|
+
- test/test_subtract_node.rb
|
402
|
+
- test/test_switch_node.rb
|
403
|
+
- test/test_this_node.rb
|
404
|
+
- test/test_throw_node.rb
|
405
|
+
- test/test_tokenizer.rb
|
406
|
+
- test/test_true_node.rb
|
407
|
+
- test/test_try_node.rb
|
408
|
+
- test/test_type_of_node.rb
|
409
|
+
- test/test_unary_minus_node.rb
|
410
|
+
- test/test_unary_plus_node.rb
|
411
|
+
- test/test_unsigned_right_shift_node.rb
|
412
|
+
- test/test_var_decl_node.rb
|
413
|
+
- test/test_var_statement_node.rb
|
414
|
+
- test/test_void_node.rb
|
415
|
+
- test/test_while_node.rb
|
416
|
+
- test/test_with_node.rb
|