Ruby 4.1 リファレンスマニュアル

instance method Prism::Node#copy

copy(**params) -> Prism::NodeRuby 3.3 から[permalink][rdoc][edit]

自身と同じクラスの新しいノードを、指定したフィールドだけを差し替えて複製します。渡せるキーワードはノードクラスごとのフィールド名で、指定しなかったフィールドは自身の値を引き継ぎます。

require "prism"

call = Prism.parse("1 + 2").value.statements.body[0]
copied = call.copy
p copied.class        # => Prism::CallNode
p copied.equal?(call) # => false