config.yml in yarp-0.7.0 vs config.yml in yarp-0.8.0

- old
+ new

@@ -397,10 +397,23 @@ comment: | Represents the use of the `&&` operator or the `and` keyword. left and right ^^^^^^^^^^^^^^ + - name: AndWriteNode + child_nodes: + - name: target + type: node + - name: value + type: node + - name: operator_loc + type: location + comment: | + Represents the use of the `&&=` operator. + + target &&= value + ^^^^^^^^^^^^^^^^ - name: ArgumentsNode child_nodes: - name: arguments type: node[] comment: | @@ -525,11 +538,11 @@ - name: locals type: constant[] - name: parameters type: node? kind: BlockParametersNode - - name: statements + - name: body type: node? - name: opening_loc type: location - name: closing_loc type: location @@ -712,60 +725,19 @@ type: node - name: inheritance_operator_loc type: location? - name: superclass type: node? - - name: statements + - name: body type: node? - name: end_keyword_loc type: location comment: | Represents a class declaration involving the `class` keyword. class Foo end ^^^^^^^^^^^^^ - - name: ClassVariableOperatorAndWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - comment: | - Represents the use of the `&&=` operator for assignment to a class variable. - - @@target &&= value - ^^^^^^^^^^^^^^^^ - - name: ClassVariableOperatorOrWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - comment: | - Represents the use of the `||=` operator for assignment to a class variable. - - @@target ||= value - ^^^^^^^^^^^^^^^^^^ - - name: ClassVariableOperatorWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - - name: operator - type: constant - comment: | - Represents assigning to a class variable using an operator that isn't `=`. - - @@target += value - ^^^^^^^^^^^^^^^^^ - name: ClassVariableReadNode comment: | Represents referencing a class variable. @@foo @@ -781,51 +753,10 @@ comment: | Represents writing to a class variable. @@foo = 1 ^^^^^^^^^ - - name: ConstantOperatorAndWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - comment: | - Represents the use of the `&&=` operator for assignment to a constant. - - Target &&= value - ^^^^^^^^^^^^^^^^ - - name: ConstantOperatorOrWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - comment: | - Represents the use of the `||=` operator for assignment to a constant. - - Target ||= value - ^^^^^^^^^^^^^^^^ - - name: ConstantOperatorWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - - name: operator - type: constant - comment: | - Represents assigning to a constant using an operator that isn't `=`. - - Target += value - ^^^^^^^^^^^^^^^ - name: ConstantPathNode child_nodes: - name: parent type: node? - name: child @@ -835,54 +766,10 @@ comment: | Represents accessing a constant through a path of `::` operators. Foo::Bar ^^^^^^^^ - - name: ConstantPathOperatorAndWriteNode - child_nodes: - - name: target - type: node - kind: ConstantPathNode - - name: operator_loc - type: location - - name: value - type: node - comment: | - Represents the use of the `&&=` operator for assignment to a constant path. - - Parent::Child &&= value - ^^^^^^^^^^^^^^^^^^^^^^^ - - name: ConstantPathOperatorOrWriteNode - child_nodes: - - name: target - type: node - kind: ConstantPathNode - - name: operator_loc - type: location - - name: value - type: node - comment: | - Represents the use of the `||=` operator for assignment to a constant path. - - Parent::Child ||= value - ^^^^^^^^^^^^^^^^^^^^^^^ - - name: ConstantPathOperatorWriteNode - child_nodes: - - name: target - type: node - kind: ConstantPathNode - - name: operator_loc - type: location - - name: value - type: node - - name: operator - type: constant - comment: | - Represents assigning to a constant path using an operator that isn't `=`. - - Parent::Child += value - ^^^^^^^^^^^^^^^^^^^^^^ - name: ConstantPathWriteNode child_nodes: - name: target type: node kind: ConstantPathNode @@ -927,11 +814,11 @@ - name: receiver type: node? - name: parameters type: node? kind: ParametersNode - - name: statements + - name: body type: node? - name: locals type: constant[] - name: def_keyword_loc type: location @@ -1121,51 +1008,10 @@ comment: | Represents the use of the `super` keyword without parentheses or arguments. super ^^^^^ - - name: GlobalVariableOperatorAndWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - comment: | - Represents the use of the `&&=` operator for assignment to a global variable. - - $target &&= value - ^^^^^^^^^^^^^^^^^ - - name: GlobalVariableOperatorOrWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - comment: | - Represents the use of the `||=` operator for assignment to a global variable. - - $target ||= value - ^^^^^^^^^^^^^^^^^ - - name: GlobalVariableOperatorWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - - name: operator - type: constant - comment: | - Represents assigning to a global variable using an operator that isn't `=`. - - $target += value - ^^^^^^^^^^^^^^^^ - name: GlobalVariableReadNode comment: | Represents referencing a global variable. $foo @@ -1261,51 +1107,10 @@ comment: | Represents the use of the `in` keyword in a case statement. case a; in b then c end ^^^^^^^^^^^ - - name: InstanceVariableOperatorAndWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - comment: | - Represents the use of the `&&=` operator for assignment to an instance variable. - - @target &&= value - ^^^^^^^^^^^^^^^^^ - - name: InstanceVariableOperatorOrWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - comment: | - Represents the use of the `||=` operator for assignment to an instance variable. - - @target ||= value - ^^^^^^^^^^^^^^^^^ - - name: InstanceVariableOperatorWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - - name: operator - type: constant - comment: | - Represents assigning to an instance variable using an operator that isn't `=`. - - @target += value - ^^^^^^^^^^^^^^^^ - name: InstanceVariableReadNode comment: | Represents referencing an instance variable. @foo @@ -1432,64 +1237,17 @@ - name: opening_loc type: location - name: parameters type: node? kind: BlockParametersNode - - name: statements + - name: body type: node? comment: | Represents using a lambda literal (not the lambda method call). ->(value) { value * 2 } ^^^^^^^^^^^^^^^^^^^^^^^ - - name: LocalVariableOperatorAndWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - - name: constant_id - type: constant - comment: | - Represents the use of the `&&=` operator for assignment to a local variable. - - target &&= value - ^^^^^^^^^^^^^^^^ - - name: LocalVariableOperatorOrWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - - name: constant_id - type: constant - comment: | - Represents the use of the `||=` operator for assignment to a local variable. - - target ||= value - ^^^^^^^^^^^^^^^^ - - name: LocalVariableOperatorWriteNode - child_nodes: - - name: name_loc - type: location - - name: operator_loc - type: location - - name: value - type: node - - name: constant_id - type: constant - - name: operator_id - type: constant - comment: | - Represents assigning to a local variable using an operator that isn't `=`. - - target += value - ^^^^^^^^^^^^^^^ - name: LocalVariableReadNode child_nodes: - name: constant_id type: constant - name: depth @@ -1554,11 +1312,11 @@ type: constant[] - name: module_keyword_loc type: location - name: constant_path type: node - - name: statements + - name: body type: node? - name: end_keyword_loc type: location comment: | Represents a module declaration involving the `module` keyword. @@ -1616,10 +1374,25 @@ comment: | Represents reading a numbered reference to a capture in the previous match. $1 ^^ + - name: OperatorWriteNode + child_nodes: + - name: target + type: node + - name: operator_loc + type: location + - name: operator + type: constant + - name: value + type: node + comment: | + Represents the use of an operator on a write. + + target += value + ^^^^^^^^^^^^^^^ - name: OptionalParameterNode child_nodes: - name: constant_id type: constant - name: name_loc @@ -1645,10 +1418,23 @@ comment: | Represents the use of the `||` operator or the `or` keyword. left or right ^^^^^^^^^^^^^ + - name: OrWriteNode + child_nodes: + - name: target + type: node + - name: value + type: node + - name: operator_loc + type: location + comment: | + Represents the use of the `||=` operator. + + target ||= value + ^^^^^^^^^^^^^^^^ - name: ParametersNode child_nodes: - name: requireds type: node[] - name: optionals @@ -1671,11 +1457,11 @@ def a(b, c, d) ^^^^^^^ end - name: ParenthesesNode child_nodes: - - name: statements + - name: body type: node? - name: opening_loc type: location - name: closing_loc type: location @@ -1914,11 +1700,11 @@ type: location - name: operator_loc type: location - name: expression type: node - - name: statements + - name: body type: node? - name: end_keyword_loc type: location comment: | Represents a singleton class declaration involving the `class` keyword. @@ -1930,11 +1716,10 @@ Represents the use of the `__ENCODING__` keyword. __ENCODING__ ^^^^^^^^^^^^ - name: SourceFileNode - is_migrated: true child_nodes: - name: filepath type: string comment: | Represents the use of the `__FILE__` keyword. @@ -2109,13 +1894,15 @@ type: node[] - name: statements type: node? kind: StatementsNode comment: | - case true - when true - ^^^^^^^^^ - end + Represents the use of the `when` keyword within a case statement. + + case true + when true + ^^^^^^^^^ + end - name: WhileNode child_nodes: - name: keyword_loc type: location - name: predicate