function isAssignmentTarget(node) {
			const parent = node.parent;

			switch (parent.type) {
				case "AssignmentExpression":
				case "AssignmentPattern":
					return parent.left === node;

				case "Property":
					return (
						parent.parent.type === "ObjectPattern" &&
						parent.value === node
					);
				case "ArrayPattern":
				case "RestElement":
					return true;

				default:
					return false;
			}
		}
Checks if a given identifier reference or member expression is an assignment
target.
@param {ASTNode} node The node to check.
@returns {boolean} `true` if the node is an assignment target.