diff doc/manual/manual_dyncallback_api.tex @ 490:17287342e273

manual: - removed all API description and referred to manual instead, to avoid outdated and/or duplicated doc - cleanups and clarificaions
author Tassilo Philipp
date Sun, 20 Mar 2022 14:26:55 +0100
parents b47168dacba6
children 71c884e610f0
line wrap: on
line diff
--- a/doc/manual/manual_dyncallback_api.tex	Fri Mar 18 12:36:49 2022 +0100
+++ b/doc/manual/manual_dyncallback_api.tex	Sun Mar 20 14:26:55 2022 +0100
@@ -17,84 +17,87 @@
 %
 %//////////////////////////////////////////////////////////////////////////////
 
-\clearpage
 \section{\emph{Dyncallback} C library API}
 
-This library extends \product{dyncall} with function callback support, allowing
-the user to dynamically create a callback object that can be called directly,
-or passed to functions expecting a function-pointer as argument.\\
-\\
-Invoking a \product{dyncallback} calls into a user-defined unified handler that 
-permits iteration and thus dynamic handling over the called-back-function's
-parameters.\\
-\\
-The flexibility is constrained by the set of supported types, though.\\
-\\
-For style conventions and supported types, see \product{dyncall} API section.
-In order to use \product{dyncallback}, include {\tt "dyncall\_callback.h"}.
-
-\subsection{Callback Object}
-
-The \emph{Callback Object} is the core component to this library.
-
-\paragraph{Types}
-
-\begin{lstlisting}[language=c]
-typedef struct DCCallback DCCallback;
-\end{lstlisting}
-
-\paragraph{Details}
-The \emph{Callback Object} is an object that mimics a fully typed function
-call to another function (a generic callback handler, in this case).\\
-\\
-This means, a pointer to this object is passed to a function accepting a pointer
-to a callback function \emph{as the very callback function pointer itself}.
-Or, if called directly, cast a pointer to this object to a function pointer and
-issue a call.
-
-
-\subsection{Allocation}
-
-\paragraph{Functions}
+See the dyncallback(3) manpage for more information.
 
-\begin{lstlisting}[language=c]
-DCCallback* dcbNewCallback(const char*        signature,
-                           DCCallbackHandler* funcptr,
-                           void*              userdata,
-                           DCaggr**           aggrs);
-void dcbFreeCallback(DCCallback* pcb);
-\end{lstlisting}
-
-\lstinline{dcbNewCallback} creates and initializes a new \emph{Callback} object,
-where \lstinline{signature} is the needed function signature (format is the
-one outlined in the language bindings-section of this manual, see Table \ref{sigchar})
-of the function to mimic, \lstinline{funcptr} is a pointer to a callback handler,
-and \lstinline{userdata} a pointer to custom data that might be useful in the
-handler.
-Use \lstinline{dcbFreeCallback} to destroy the \emph{Callback} object.\\
-\\
-As with \capi{dcNewCallVM}/\capi{dcFree}, this will allocate memory using the
-system allocators or custom overrides.
-
-
-\subsection{Callback handler}
-
-The unified callback handler's declaration used when creating a \capi{DCCallback}
-is:
-
-\begin{lstlisting}
-char cbHandler(DCCallback* cb,
-               DCArgs*     args,
-               DCValue*    result,
-               void*       userdata);
-\end{lstlisting}
-
-\capi{cb} is a pointer to the \capi{DCCallback} object in use, \capi{args} allows
-for dynamic iteration over the called-back-function's arguments (input) and
-\capi{result} is a pointer to a \capi{DCValue} object in order to store the
-callback's return value (output, to be set by handler).\\
-Finally, \capi{userdata} is a pointer to some user defined data that can be
-set when creating the callback object.
-The handler itself returns a signature character (see Table \ref{sigchar}) specifying the
-data type used for \capi{result}.
-
+%@@@ removed, as manpages are more precise and up to date ------------------->
+%
+%This library extends \product{dyncall} with function callback support, allowing
+%the user to dynamically create a callback object that can be called directly,
+%or passed to functions expecting a function-pointer as argument.\\
+%\\
+%Invoking a \product{dyncallback} calls into a user-defined unified handler that 
+%permits iteration and thus dynamic handling over the called-back-function's
+%parameters.\\
+%\\
+%The flexibility is constrained by the set of supported types, though.\\
+%\\
+%For style conventions and supported types, see \product{dyncall} API section.
+%In order to use \product{dyncallback}, include {\tt "dyncall\_callback.h"}.
+%
+%\subsection{Callback Object}
+%
+%The \emph{Callback Object} is the core component to this library.
+%
+%\paragraph{Types}
+%
+%\begin{lstlisting}[language=c]
+%typedef struct DCCallback DCCallback;
+%\end{lstlisting}
+%
+%\paragraph{Details}
+%The \emph{Callback Object} is an object that mimics a fully typed function
+%call to another function (a generic callback handler, in this case).\\
+%\\
+%This means, a pointer to this object is passed to a function accepting a pointer
+%to a callback function \emph{as the very callback function pointer itself}.
+%Or, if called directly, cast a pointer to this object to a function pointer and
+%issue a call.
+%
+%
+%\subsection{Allocation}
+%
+%\paragraph{Functions}
+%
+%\begin{lstlisting}[language=c]
+%DCCallback* dcbNewCallback(const DCsigchar*   signature,
+%                           DCCallbackHandler* funcptr,
+%                           void*              userdata,
+%                           DCaggr**           aggrs);
+%void dcbFreeCallback(DCCallback* pcb);
+%\end{lstlisting}
+%
+%\lstinline{dcbNewCallback} creates and initializes a new \emph{Callback} object,
+%where \lstinline{signature} is the needed function signature (format is the
+%one outlined in the language bindings-section of this manual, see Table \ref{sigchar})
+%of the function to mimic, \lstinline{funcptr} is a pointer to a callback handler,
+%and \lstinline{userdata} a pointer to custom data that might be useful in the
+%handler.
+%Use \lstinline{dcbFreeCallback} to destroy the \emph{Callback} object.\\
+%\\
+%As with \capi{dcNewCallVM}/\capi{dcFree}, this will allocate memory using the
+%system allocators or custom overrides.
+%
+%
+%\subsection{Callback handler}
+%
+%The unified callback handler's declaration used when creating a \capi{DCCallback}
+%is:
+%
+%\begin{lstlisting}
+%DCsigchar cbHandler(DCCallback* cb,
+%                    DCArgs*     args,
+%                    DCValue*    result,
+%                    void*       userdata);
+%\end{lstlisting}
+%
+%\capi{cb} is a pointer to the \capi{DCCallback} object in use, \capi{args} allows
+%for dynamic iteration over the called-back-function's arguments (input) and
+%\capi{result} is a pointer to a \capi{DCValue} object in order to store the
+%callback's return value (output, to be set by handler).\\
+%Finally, \capi{userdata} is a pointer to some user defined data that can be
+%set when creating the callback object.
+%The handler itself returns a signature character (see Table \ref{sigchar}) specifying the
+%data type used for \capi{result}.
+%