code: public static NodeImpl setPropertyValue(final NodeImpl node, final Object value) {
      return new NodeImpl( //
          node.name, //
          node.parent, //
          node.isIterableValue, //
          node.index, //
          node.key, //
          node.kind, //
          node.parameterTypes, //
          node.parameterIndex, //
          value, //
          node.containerClass, //
          node.typeArgumentIndex //
      );
    }
docs: set property value to a copied node.
  
  @param node node to build
  @param value value to set
  @return new created node implementation