aboutsummaryrefslogtreecommitdiffstats
path: root/man3/libsimple_rawmemelemmove.3
diff options
context:
space:
mode:
authorMattias Andrée <maandree@kth.se>2018-11-25 15:28:01 +0100
committerMattias Andrée <maandree@kth.se>2018-11-25 15:28:01 +0100
commitaac46f74a6534b050c72f4bf0a469b714879c704 (patch)
treee7195bc86eff4cf831e663d63d112b4b7dd39594 /man3/libsimple_rawmemelemmove.3
parentAdd man pages (diff)
downloadlibsimple-aac46f74a6534b050c72f4bf0a469b714879c704.tar.gz
libsimple-aac46f74a6534b050c72f4bf0a469b714879c704.tar.bz2
libsimple-aac46f74a6534b050c72f4bf0a469b714879c704.tar.xz
Add man pages for [raw]memelem{cpy,move}
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to 'man3/libsimple_rawmemelemmove.3')
-rw-r--r--man3/libsimple_rawmemelemmove.3107
1 files changed, 107 insertions, 0 deletions
diff --git a/man3/libsimple_rawmemelemmove.3 b/man3/libsimple_rawmemelemmove.3
new file mode 100644
index 0000000..cafd956
--- /dev/null
+++ b/man3/libsimple_rawmemelemmove.3
@@ -0,0 +1,107 @@
+.TH LIBSIMPLE_RAWMEMELEMMOVE 3 2018-11-25 libsimple
+.SH NAME
+libsimple_rawmemelemmove, libsimple_rawmemelemcpy \- copy or move elements within an array
+.SH SYNOPSIS
+.nf
+#include <libsimple.h>
+
+static inline void *libsimple_rawmemelemmove(void *\fIdest\fP, const void *\fIsrc\fP, int \fIelem\fP, size_t \fIwidth\fP);
+static inline void *libsimple_rawmemelemcpy(void *\fIdest\fP, const void *\fIsrc\fP, int \fIelem\fP, size_t \fIwidth\fP);
+
+#ifndef rawmemelemmove
+# define rawmemelemmove libsimple_rawmemelemmove
+#endif
+#ifndef rawmemelemcpy
+# define rawmemelemcpy libsimple_rawmemelemcpy
+#endif
+.fi
+.PP
+Link with
+.IR \-lsimple .
+.SH DESCRIPTION
+The
+.BR libsimple_rawmemelemmove ()
+and
+.BR libsimple_rawmemelemcpy ()
+functions copy all elements,
+each with the width
+.IR width ,
+in
+.I src
+to
+.I dest
+until the element
+.I elem
+(with size
+.IR width )
+has been copied.
+.PP
+The arrays may overlap in the
+.BR libsimple_rawmemelemmove ()
+function but not in the
+.BR libsimple_rawmemelemcpy ()
+function.
+.SH RETURN VALUE
+The
+.BR libsimple_rawmemelemmove ()
+and
+.BR libsimple_rawmemelemcpy ()
+functions return a pointer directly behind
+the position of the element
+.I elem
+in
+.I dest
+after it was copied. If the element
+.I elem
+does not exist in
+.IR src ,
+the behaviour is undefined.
+.SH ERRORS
+The
+.BR libsimple_rawmemelemmove ()
+and
+.BR libsimple_rawmemelemcpy ()
+functions cannot fail.
+.SH ATTRIBUTES
+For an explanation of the terms used in this section, see
+.BR attributes (7).
+.TS
+allbox;
+lb lb lb
+l l l.
+Interface Attribute Value
+T{
+.BR libsimple_rawmemelemmove (),
+and
+.BR libsimple_rawmemelemcpy ()
+T} Thread safety MT-Safe
+T{
+.BR libsimple_rawmemelemmove (),
+and
+.BR libsimple_rawmemelemcpy ()
+T} Async-signal safety AS-Safe
+T{
+.BR libsimple_rawmemelemmove (),
+and
+.BR libsimple_rawmemelemcpy ()
+T} Async-cancel safety AC-Safe
+.TE
+.SH EXAMPLES
+None.
+.SH APPLICATION USAGE
+None.
+.SH RATIONALE
+None.
+.SH FUTURE DIRECTIONS
+None.
+.SH NOTES
+None.
+.SH BUGS
+None.
+.SH SEE ALSO
+.BR libsimple_memelemmove (3),
+.BR libsimple_mempmove (3),
+.BR libsimple_mempcpy (3),
+.BR libsimple_rawmemcmove (3),
+.BR memmove (3),
+.BR memcpy (3)