@|SOD_INSTBASE| macro (described below) is more suited to general use.
\end{describe}
-\begin{describe}[SOD_CAR]{mac} {@<arg> SOD_CAR(@<arg>, @<other-arg>^*);}
- Accepts one or more arguments and expands to just its first argument,
- discarding the others.
-
- It is only defined if the C implementation advertises support for C99. It
- is used in the definitions of message convenience macros for messages which
- accept a variable number of arguments but no required arguments, and is
- exported because the author has found such a thing useful in other
- contexts.
-\end{describe}
-
%%%--------------------------------------------------------------------------
\section{Utility macros} \label{sec:runtime.utility}
The following functions are provided in @|libsod|.
\begin{describe}[sod_subclassp]{fun}
- {int sod_subclassp(const SodClass *sub, const SodClass *super);}
+ {int sod_subclassp(const SodClass *@<sub>, const SodClass *@<super>);}
Decide whether one class @<sub> is actually a subclass of another class
@<super>.
\end{describe}
\begin{describe}[sod_convert]{fun}
- {void *sod_convert(const SodClass *cls, const void *obj);}
+ {void *sod_convert(const SodClass *@<cls>, const void *@<obj>);}
Performs general conversions (up-, down-, and cross-casts) on instance
pointers.