|
1 | 1 | # frozen_string_literal: true
|
2 | 2 |
|
3 | 3 | Synvert::Rewriter.new 'rails', 'convert_rails_env' do
|
4 |
| - configure(parser: Synvert::PARSER_PARSER) |
| 4 | + configure(parser: Synvert::PRISM_PARSER) |
5 | 5 |
|
6 | 6 | description <<~EOS
|
7 | 7 | It converts RAILS_ENV to Rails.env.
|
|
33 | 33 | # RAILS_ENV == 'test'
|
34 | 34 | # =>
|
35 | 35 | # Rails.env == 'test'
|
36 |
| - with_node node_type: 'const', to_source: 'RAILS_ENV' do |
37 |
| - replace_with 'Rails.env' |
38 |
| - end |
39 |
| - with_node node_type: 'const', to_source: '::RAILS_ENV' do |
| 36 | + with_node node_type: 'constant_read_node', name: 'RAILS_ENV' do |
40 | 37 | replace_with 'Rails.env'
|
41 | 38 | end
|
42 | 39 | end
|
|
45 | 42 | # Rails.env == 'test'
|
46 | 43 | # =>
|
47 | 44 | # Rails.env.test?
|
48 |
| - with_node node_type: 'send', receiver: 'Rails.env', message: '==', arguments: { size: 1 } do |
49 |
| - env = node.arguments.first.to_value |
50 |
| - replace_with "Rails.env.#{env}?" |
| 45 | + with_node node_type: 'call_node', receiver: 'Rails.env', name: '==', arguments: { node_type: 'arguments_node', arguments: { size: 1 } } do |
| 46 | + replace_with "Rails.env.{{arguments.arguments.0.to_value}}?" |
51 | 47 | end
|
52 | 48 |
|
53 | 49 | # 'development' == Rails.env
|
54 | 50 | # =>
|
55 | 51 | # Rails.env.development?
|
56 |
| - with_node node_type: 'send', arguments: { first: 'Rails.env' }, message: '==' do |
57 |
| - env = node.receiver.to_value |
58 |
| - replace_with "Rails.env.#{env}?" |
| 52 | + with_node node_type: 'call_node', name: '==', arguments: { node_type: 'arguments_node', arguments: { size: 1, first: 'Rails.env' } } do |
| 53 | + replace_with "Rails.env.{{receiver.to_value}}?" |
59 | 54 | end
|
60 | 55 |
|
61 | 56 | # Rails.env != 'test'
|
62 | 57 | # =>
|
63 | 58 | # !Rails.env.test?
|
64 |
| - with_node node_type: 'send', receiver: 'Rails.env', message: '!=', arguments: { size: 1 } do |
65 |
| - env = node.arguments.first.to_value |
66 |
| - replace_with "!Rails.env.#{env}?" |
| 59 | + with_node node_type: 'call_node', receiver: 'Rails.env', name: '!=', arguments: { node_type: 'arguments_node', arguments: { size: 1 } } do |
| 60 | + replace_with "!Rails.env.{{arguments.arguments.0.to_value}}?" |
67 | 61 | end
|
68 | 62 |
|
69 | 63 | # 'development' != Rails.env
|
70 | 64 | # =>
|
71 | 65 | # !Rails.env.development?
|
72 |
| - with_node node_type: 'send', arguments: { first: 'Rails.env' }, message: '!=' do |
73 |
| - env = node.receiver.to_value |
74 |
| - replace_with "!Rails.env.#{env}?" |
| 66 | + with_node node_type: 'call_node', name: '!=', arguments: { node_type: 'arguments_node', arguments: { size: 1, first: 'Rails.env' } } do |
| 67 | + replace_with "!Rails.env.{{receiver.to_value}}?" |
75 | 68 | end
|
76 | 69 | end
|
77 | 70 | end
|
0 commit comments