\section{ISA Test Type of Variable}

\subsection{Usage}

Tests the type of a variable.  The syntax for its
use is
\begin{verbatim}
   y = isa(x,type)
\end{verbatim}
where \verb|x| is the variable to test, and \verb|type| is
the type.  Supported built-in types are
\begin{itemize}
\item  \verb|'cell'| for cell-arrays

\item  \verb|'struct'| for structure-arrays

\item  \verb|'logical'| for logical arrays

\item  \verb|'uint8'| for unsigned 8-bit integers

\item  \verb|'int8'| for signed 8-bit integers

\item  \verb|'uint16'| for unsigned 16-bit integers

\item  \verb|'int16'| for signed 16-bit integers

\item  \verb|'uint32'| for unsigned 32-bit integers

\item  \verb|'int32'| for signed 32-bit integers

\item  \verb|'uint64'| for unsigned 64-bit integers

\item  \verb|'int64'| for signed 64-bit integers

\item  \verb|'float'| for 32-bit floating point numbers

\item  \verb|'double'| for 64-bit floating point numbers

\item  \verb|'complex'| for complex floating point numbers with 32-bits per field

\item  \verb|'dcomplex'| for complex floating point numbers with 64-bits per field

\item  \verb|'string'| for string arrays

\end{itemize}
If the argument is a user-defined type (via the \verb|class| function), then
the name of that class is returned.
\subsection{Examples}

Here are some examples of the \verb|isa| call.
\begin{verbatim}
--> a = {1}
a = 
  <cell array> - size: [1 1]
 [1]    
--> isa(a,'string')
ans = 
  <logical>  - size: [1 1]
 0  
--> isa(a,'cell')
ans = 
  <logical>  - size: [1 1]
 1  

\end{verbatim}
Here we use \verb|isa| along with shortcut boolean evaluation to 
safely determine if a variable contains the string \verb|'hello'|
\begin{verbatim}
--> a = 'hello'
a = 
  <string>  - size: [1 5]
 hello
--> isa(a,'string') && strcmp(a,'hello')
ans = 
  <logical>  - size: [1 1]
 1  

\end{verbatim}
