- Scilab help
- Compatibility Functions
- asciimat
- firstnonsingleton
- makecell
- mstr2sci
- mtlb_0
- mtlb_a
- mtlb_all
- mtlb_any
- mtlb_axis
- mtlb_beta
- mtlb_box
- mtlb_close
- mtlb_colordef
- mtlb_conv
- mtlb_cumprod
- mtlb_cumsum
- mtlb_dec2hex
- mtlb_delete
- mtlb_diag
- mtlb_diff
- mtlb_dir
- mtlb_double
- mtlb_e
- mtlb_echo
- mtlb_eval
- mtlb_exist
- mtlb_eye
- mtlb_false
- mtlb_fft
- mtlb_fftshift
- mtlb_find
- mtlb_findstr
- mtlb_fliplr
- mtlb_fopen
- mtlb_format
- mtlb_fprintf
- mtlb_fread
- mtlb_fscanf
- mtlb_full
- mtlb_fwrite
- mtlb_grid
- mtlb_hold
- mtlb_i
- mtlb_ifft
- mtlb_imp
- mtlb_int16
- mtlb_int32
- mtlb_int8
- mtlb_is
- mtlb_isa
- mtlb_isfield
- mtlb_isletter
- mtlb_isspace
- mtlb_l
- mtlb_legendre
- mtlb_linspace
- mtlb_logic
- mtlb_logical
- mtlb_lower
- mtlb_max
- mtlb_min
- mtlb_more
- mtlb_num2str
- mtlb_ones
- mtlb_plot
- mtlb_prod
- mtlb_rand
- mtlb_randn
- mtlb_rcond
- mtlb_realmax
- mtlb_realmin
- mtlb_repmat
- mtlb_s
- mtlb_setstr
- mtlb_size
- mtlb_sort
- mtlb_strcmp
- mtlb_strcmpi
- mtlb_strfind
- mtlb_strrep
- mtlb_sum
- mtlb_t
- mtlb_toeplitz
- mtlb_tril
- mtlb_triu
- mtlb_true
- mtlb_uint16
- mtlb_uint32
- mtlb_uint8
- mtlb_upper
- mtlb_var
- mtlb_zeros

Please note that the recommended version of Scilab is 6.1.1. This page might be outdated.

However, this page did not exist in the previous stable version.

# mtlb_isa

Matlab isa emulation function

### Description

There is no Scilab equivalent function for Matlab `isa`

but some equivalent expressions can be used when the object "class" exists in Scilab.

The function `mtlb_isa(OBJ,class)`

is used by
`mfile2sci`

to replace `isa(OBJ,class)`

when it was not
possible to know what were the inputs while porting Matlab code to Scilab. This function will
determine the correct semantic at run time. If you want to have a
more efficient code it is possible to replace `mtlb_isa`

calls:

If

`class`

is equal to "logical",`mtlb_isa(OBJ,class)`

may be replaced by`type(OBJ)==4`

If

`class`

is equal to "char",`mtlb_isa(OBJ,class)`

may be replaced by`type(OBJ)==10`

If

`class`

is equal to "numeric",`mtlb_isa(OBJ,class)`

may be replaced by`or(type(OBJ)==[1,5,8])`

If

`class`

is equal to "intX" (X being equal to 8, 16, or 32),`mtlb_isa(OBJ,class)`

may be replaced by`typeof(OBJ)=="intX"`

If

`class`

is equal to "uintX" (X being equal to 8, 16, or 32),`mtlb_isa(OBJ,class)`

may be replaced by`typeof(OBJ)=="uintX"`

If

`class`

is equal to "single",`mtlb_isa(OBJ,class)`

may be replaced by`type(OBJ)==1`

If

`class`

is equal to "double",`mtlb_isa(OBJ,class)`

may be replaced by`type(OBJ)==1`

If

`class`

is equal to "cell",`mtlb_isa(OBJ,class)`

may be replaced by`typeof(OBJ)=="ce"`

If

`class`

is equal to "struct",`mtlb_isa(OBJ,class)`

may be replaced by`typeof(OBJ)=="st"`

If

`class`

is equal to "function_handle",`mtlb_isa(OBJ,class)`

may be replaced by`type(OBJ)==13`

If

`class`

is equal to "sparse",`mtlb_isa(OBJ,class)`

may be replaced by`type(OBJ)==5`

If

`class`

is equal to "lti",`mtlb_isa(OBJ,class)`

may be replaced by`typeof(OBJ)=="state-space"`

Caution: `mtlb_isa`

has not to be used for hand coded functions.

### Authors

- V.C.

## Comments

Add a comment:Please login to comment this page.