aboutsummaryrefslogtreecommitdiffstats
path: root/man3/LIBNORMALFORM_SENTENCE.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_SENTENCE.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 'man3/LIBNORMALFORM_SENTENCE.3')
-rw-r--r--man3/LIBNORMALFORM_SENTENCE.361
1 files changed, 61 insertions, 0 deletions
diff --git a/man3/LIBNORMALFORM_SENTENCE.3 b/man3/LIBNORMALFORM_SENTENCE.3
new file mode 100644
index 0000000..8af097e
--- /dev/null
+++ b/man3/LIBNORMALFORM_SENTENCE.3
@@ -0,0 +1,61 @@
+.TH LIBNORMALFORM_SENTENCE 3 LIBNORMALFORM
+.SH NAME
+LIBNORMALFORM_SENTENCE \- Logical sentence description object
+
+.SH SYNOPSIS
+.nf
+#include <libnormalform.h>
+
+typedef struct libnormalform_sentence LIBNORMALFORM_SENTENCE;
+.fi
+
+.SH DESCRIPTION
+The
+.B LIBNORMALFORM_SENTENCE
+type is a reference counted opaque data type used to
+describe logical sentences of the first order.
+.PP
+Instances of this type can have there references count
+increased using the
+.BR libnormalform_ref (3)
+function and decreased (and deallocated if 0 is reached)
+using the
+.BR libnormalform_free (3)
+function.
+.PP
+Because this type contains temporary memory and caches,
+and not mechanisms to avoid race conditions, instances
+of this type cannot be safely used by any function from
+two threads at the same time. However, the function
+.BR libnormalform_clone (3)
+can be used to create a brand new but identical instance
+which can safely be used in another thread.
+.PP
+Instances can be serialised, as human-readable strings,
+and deserialised using the
+.BR libnormalform_to_string (3)
+and
+.BR libnormalform_from_string (3)
+functions.
+.PP
+Apart from the
+.BR libnormalform_ref (3)
+and
+.BR libnormalform_clone (3)
+functions, every function that return objects of this
+type, will acquire the ownership of the any reference
+to instances of this type passed into the function,
+they will also fail without modifying
+.I errno
+if any of them are
+.IR NULL ,
+but they will still acquire the ownership of the
+references in this case or any other time they fail.
+
+.SH NOTES
+The name
+.B struct libnormalform_sentence
+is exposed only for type safety and should not be used.
+
+.SH SEE ALSO
+.BR libnormalform (7)