aboutsummaryrefslogtreecommitdiffstats
path: root/man3/libnormalform_free.3
diff options
context:
space:
mode:
authorMattias Andrée <maandree@kth.se>2024-07-19 01:29:42 +0200
committerMattias Andrée <maandree@kth.se>2024-07-19 01:29:42 +0200
commit4294ec0ed06ee34920c9edaeebaeb8b65c720791 (patch)
treee0cded59452597c04fb38f403745a384675cb5f9 /man3/libnormalform_free.3
downloadlibnormalform-4294ec0ed06ee34920c9edaeebaeb8b65c720791.tar.gz
libnormalform-4294ec0ed06ee34920c9edaeebaeb8b65c720791.tar.bz2
libnormalform-4294ec0ed06ee34920c9edaeebaeb8b65c720791.tar.xz
First commit
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to '')
-rw-r--r--man3/libnormalform_free.373
1 files changed, 73 insertions, 0 deletions
diff --git a/man3/libnormalform_free.3 b/man3/libnormalform_free.3
new file mode 100644
index 0000000..7846dc5
--- /dev/null
+++ b/man3/libnormalform_free.3
@@ -0,0 +1,73 @@
+.TH LIBNORMALFORM_FREE 3 LIBNORMALFORM
+.SH NAME
+libnormalform_free \- Release a reference
+
+.SH SYNOPSIS
+.nf
+#include <libnormalform.h>
+
+void libnormalform_free(/* LIBNORMALFORM_SENTENCE | struct libnormalform_term */ *\fIobj\fP);
+.fi
+.PP
+Link with
+.IR -lnormalform .
+
+.SH DESCRIPTION
+The
+.BR libnormalform_free ()
+function can operate on both the type
+.I LIBNORMALFORM_SENTENCE *
+and the type
+.IR "struct libnormalform_term *" .
+The function recursively deallocates
+.IR obj ,
+however sence
+.I LIBNORMALFORM_SENTENCE *
+is reference counted,
+.IR obj ,
+if it is a
+.IR "LIBNORMALFORM_SENTENCE *" ,
+and any
+.IR "LIBNORMALFORM_SENTENCE *"
+stored in side it, will have it's reference
+count decreased by one, and the object is
+only deallocated (recursively) once the the
+reference count reaches 0.
+.PP
+No action is taken if
+.I obj
+is
+.IR NULL .
+
+.SH RETURN VALUE
+None.
+
+.SH ERRORS
+None.
+
+.SH ATTRIBUTES
+For an explanation of the terms used in this
+section, see
+.BR attributes (7)
+and
+.IR "info \(dq(libc)POSIX Safety Concepts\(dq" .
+.TS
+allbox;
+lb lb lb
+l l l.
+Interface Attribute Value
+T{
+.BR libnormalform_free ()
+T} Thread safety MT-Safe race:\fIobj\fP
+T{
+.BR libnormalform_free ()
+T} Async-signal safety AS-Unsafe heap
+T{
+.BR libnormalform_free ()
+T} Async-cancel safety AC-Unsafe heap
+.TE
+
+.SH SEE ALSO
+.BR libnormalform (7),
+.BR libnormalform_ref (3),
+.BR libnormalform_free (3)