libzmq/doc/zmq_msg_copy.adoc
Francesco Montorsi b6ca9b2983 Feature: modernize API documentation
* migrate from the old, unmaintained "asciidoc-py" tool to the new "asciidoctor" generator
* migrate from asciidoc-py syntax to the modern Asciidoc syntax (especially page titles and section titles)
* remove the need of "xmlto" utility to create the manpage output; use asciidoctor for that
* add HTML output support to the doc/Makefile by using asciidoctor
* change API documentation files extension from .txt to .adoc to make it more explicit that they are Asciidoc-encoded (as a bonus several IDE plugins will autodetect the .adoc format as Asciidoc)
* remove asciidoc.conf: asciidoctor does not support that; this also required replacing the macro linkzmq into all documentation pages
* add a new Github action CI do deploy to Github Pages the static HTMLs produced by Asciidoctors
* removed references to the "xmlto" and "a2x" tools from the build and packaging systems: Asciidoctor can convert the documentation directly to e.g. pdf (via extended converters) and anyway there was no code/target for using "xmlto" and "a2x" tools anyway
2023-10-25 23:59:38 +02:00

64 lines
1.7 KiB
Plaintext

= zmq_msg_copy(3)
== NAME
zmq_msg_copy - copy content of a message to another message
== SYNOPSIS
*int zmq_msg_copy (zmq_msg_t '*dest', zmq_msg_t '*src');*
== DESCRIPTION
The _zmq_msg_copy()_ function shall copy the message object referenced by 'src'
to the message object referenced by 'dest'. The original content of 'dest', if
any, shall be released. You must initialise 'dest' before copying to it.
CAUTION: The implementation may choose not to physically copy the message
content, rather to share the underlying buffer between 'src' and 'dest'. Avoid
modifying message content after a message has been copied with
_zmq_msg_copy()_, doing so can result in undefined behaviour. If what you need
is an actual hard copy, initialize a new message using _zmq_msg_init_buffer()_
with the message content.
CAUTION: Never access 'zmq_msg_t' members directly, instead always use the
_zmq_msg_ family of functions.
== RETURN VALUE
The _zmq_msg_copy()_ function shall return zero if successful. Otherwise it
shall return `-1` and set 'errno' to one of the values defined below.
== ERRORS
*EFAULT*::
Invalid message.
== EXAMPLE
.Copying a message
----
zmq_msg_t msg;
zmq_msg_init_buffer (&msg, "Hello, World", 12);
zmq_msg_t copy;
zmq_msg_init (&copy);
zmq_msg_copy (&copy, &msg);
...
zmq_msg_close (&copy);
zmq_msg_close (&msg);
----
== SEE ALSO
xref:zmq_msg_move.adoc[zmq_msg_move]
xref:zmq_msg_init.adoc[zmq_msg_init]
xref:zmq_msg_init_size.adoc[zmq_msg_init_size]
xref:zmq_msg_init_buffer.adoc[zmq_msg_init_buffer]
xref:zmq_msg_init_data.adoc[zmq_msg_init_data]
xref:zmq_msg_close.adoc[zmq_msg_close]
xref:zmq.adoc[zmq]
== AUTHORS
This page was written by the 0MQ community. To make a change please
read the 0MQ Contribution Policy at <http://www.zeromq.org/docs:contributing>.