config.yml in yarp-0.8.0 vs config.yml in yarp-0.9.0
- old
+ new
@@ -397,23 +397,10 @@
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: |
@@ -729,21 +716,70 @@
type: node?
- name: body
type: node?
- name: end_keyword_loc
type: location
+ - name: name
+ type: string
comment: |
Represents a class declaration involving the `class` keyword.
class Foo end
^^^^^^^^^^^^^
+ - name: ClassVariableAndWriteNode
+ 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: ClassVariableOrWriteNode
+ 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: ClassVariableReadNode
comment: |
Represents referencing a class variable.
@@foo
^^^^^
+ - name: ClassVariableTargetNode
+ comment: |
+ Represents writing to a class variable in a context that doesn't have an explicit value.
+
+ @@foo, @@bar = baz
+ ^^^^^ ^^^^^
- name: ClassVariableWriteNode
child_nodes:
- name: name_loc
type: location
- name: value
@@ -753,10 +789,65 @@
comment: |
Represents writing to a class variable.
@@foo = 1
^^^^^^^^^
+ - name: ConstantAndWriteNode
+ 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: ConstantOrWriteNode
+ 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: ConstantPathAndWriteNode
+ 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: ConstantPathNode
child_nodes:
- name: parent
type: node?
- name: child
@@ -766,20 +857,63 @@
comment: |
Represents accessing a constant through a path of `::` operators.
Foo::Bar
^^^^^^^^
- - name: ConstantPathWriteNode
+ - name: ConstantPathOperatorWriteNode
child_nodes:
- name: target
type: node
kind: ConstantPathNode
- name: operator_loc
- type: location?
+ 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: ConstantPathOrWriteNode
+ 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: ConstantPathTargetNode
+ child_nodes:
+ - name: parent
type: node?
+ - name: child
+ type: node
+ - name: delimiter_loc
+ type: location
comment: |
+ Represents writing to a constant path in a context that doesn't have an explicit value.
+
+ Foo::Foo, Bar::Bar = baz
+ ^^^^^^^^ ^^^^^^^^
+ - name: ConstantPathWriteNode
+ child_nodes:
+ - name: target
+ type: node
+ kind: ConstantPathNode
+ - name: operator_loc
+ type: location
+ - name: value
+ type: node
+ comment: |
Represents writing to a constant path.
::Foo = 1
^^^^^^^^^
@@ -792,18 +926,24 @@
comment: |
Represents referencing a constant.
Foo
^^^
+ - name: ConstantTargetNode
+ comment: |
+ Represents writing to a constant in a context that doesn't have an explicit value.
+
+ Foo, Bar = baz
+ ^^^ ^^^
- name: ConstantWriteNode
child_nodes:
- name: name_loc
type: location
- name: value
- type: node?
+ type: node
- name: operator_loc
- type: location?
+ type: location
comment: |
Represents writing to a constant.
Foo = 1
^^^^^^^
@@ -1008,24 +1148,71 @@
comment: |
Represents the use of the `super` keyword without parentheses or arguments.
super
^^^^^
+ - name: GlobalVariableAndWriteNode
+ 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: GlobalVariableOrWriteNode
+ 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: GlobalVariableReadNode
comment: |
Represents referencing a global variable.
$foo
^^^^
+ - name: GlobalVariableTargetNode
+ comment: |
+ Represents writing to a global variable in a context that doesn't have an explicit value.
+
+ $foo, $bar = baz
+ ^^^^ ^^^^
- name: GlobalVariableWriteNode
child_nodes:
- name: name_loc
type: location
- name: operator_loc
- type: location?
+ type: location
- name: value
- type: node?
+ type: node
comment: |
Represents writing to a global variable.
$foo = 1
^^^^^^^^
@@ -1107,24 +1294,71 @@
comment: |
Represents the use of the `in` keyword in a case statement.
case a; in b then c end
^^^^^^^^^^^
+ - name: InstanceVariableAndWriteNode
+ 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: InstanceVariableOrWriteNode
+ 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: InstanceVariableReadNode
comment: |
Represents referencing an instance variable.
@foo
^^^^
+ - name: InstanceVariableTargetNode
+ comment: |
+ Represents writing to an instance variable in a context that doesn't have an explicit value.
+
+ @foo, @bar = baz
+ ^^^^ ^^^^
- name: InstanceVariableWriteNode
child_nodes:
- name: name_loc
type: location
- name: value
- type: node?
+ type: node
- name: operator_loc
- type: location?
+ type: location
comment: |
Represents writing to an instance variable.
@foo = 1
^^^^^^^^
@@ -1232,22 +1466,79 @@
end
- name: LambdaNode
child_nodes:
- name: locals
type: constant[]
+ - name: operator_loc
+ type: location
- name: opening_loc
type: location
+ - name: closing_loc
+ type: location
- name: parameters
type: node?
kind: BlockParametersNode
- name: body
type: node?
comment: |
Represents using a lambda literal (not the lambda method call).
->(value) { value * 2 }
^^^^^^^^^^^^^^^^^^^^^^^
+ - name: LocalVariableAndWriteNode
+ child_nodes:
+ - name: name_loc
+ type: location
+ - name: operator_loc
+ type: location
+ - name: value
+ type: node
+ - name: constant_id
+ type: constant
+ - name: depth
+ type: uint32
+ 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
+ - name: depth
+ type: uint32
+ comment: |
+ Represents assigning to a local variable using an operator that isn't `=`.
+
+ target += value
+ ^^^^^^^^^^^^^^^
+ - name: LocalVariableOrWriteNode
+ child_nodes:
+ - name: name_loc
+ type: location
+ - name: operator_loc
+ type: location
+ - name: value
+ type: node
+ - name: constant_id
+ type: constant
+ - name: depth
+ type: uint32
+ comment: |
+ Represents the use of the `||=` operator for assignment to a local variable.
+
+ target ||= value
+ ^^^^^^^^^^^^^^^^
- name: LocalVariableReadNode
child_nodes:
- name: constant_id
type: constant
- name: depth
@@ -1257,22 +1548,33 @@
variable of the same name has already been written to in the same scope,
otherwise it is parsed as a method call.
foo
^^^
+ - name: LocalVariableTargetNode
+ child_nodes:
+ - name: constant_id
+ type: constant
+ - name: depth
+ type: uint32
+ comment: |
+ Represents writing to a local variable in a context that doesn't have an explicit value.
+
+ foo, bar = baz
+ ^^^ ^^^
- name: LocalVariableWriteNode
child_nodes:
- name: constant_id
type: constant
- name: depth
type: uint32
- name: value
- type: node?
+ type: node
- name: name_loc
type: location
- name: operator_loc
- type: location?
+ type: location
comment: |
Represents writing to a local variable.
foo = 1
^^^^^^^
@@ -1316,10 +1618,12 @@
type: node
- name: body
type: node?
- name: end_keyword_loc
type: location
+ - name: name
+ type: string
comment: |
Represents a module declaration involving the `module` keyword.
module Foo end
^^^^^^^^^^^^^^
@@ -1374,25 +1678,10 @@
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
@@ -1418,23 +1707,10 @@
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
@@ -1810,11 +2086,11 @@
- name: SymbolNode
child_nodes:
- name: opening_loc
type: location?
- name: value_loc
- type: location
+ type: location?
- name: closing_loc
type: location?
- name: unescaped
type: string
comment: |
@@ -1867,10 +2143,12 @@
^^^^^^^^^^^^^^^^^^^^^^^
- name: UntilNode
child_nodes:
- name: keyword_loc
type: location
+ - name: closing_loc
+ type: location?
- name: predicate
type: node
- name: statements
type: node?
kind: StatementsNode
@@ -1904,9 +2182,11 @@
end
- name: WhileNode
child_nodes:
- name: keyword_loc
type: location
+ - name: closing_loc
+ type: location?
- name: predicate
type: node
- name: statements
type: node?
kind: StatementsNode