Nom

mtlb_isa — Fonction d'émulation de la fonction Matlab isa

Description

Il n'y a pas de fonction Scilab équivalente à la fonction Matlab isa mais quand la "classe" d'objet recherchée existe dans Scilab, des expressions équivalentes existent.

La fonction mtlb_isa(OBJ,class) est utilisée par mfile2sci pour remplacer isa(OBJ,class) quand il n'était pas possible de savoir ce qu'étaient les paramètres d'entrée pendant la conversion d'un code Matlab vers Scilab. Cette fonction va déterminer la sémantique correcte pendant l'exécution. Pour obtenir un code plus performant on peut remplacer les appels à mtlb_isa :

  • Si class est égal à "logical", mtlb_isa(OBJ,class) peut être remplacé par type(OBJ)==4

  • Si class est égal à "char", mtlb_isa(OBJ,class) peut être remplacé par type(OBJ)==10

  • Si class est égal à "numeric", mtlb_isa(OBJ,class) peut être remplacé par or(type(OBJ)==[1,5,8])

  • Si class est égal à "intX" (X valant 8, 16 ou 32), mtlb_isa(OBJ,class) peut être remplacé par typeof(OBJ)=="intX"

  • Si class est égal à "uintX" (X valant 8, 16 ou 32), mtlb_isa(OBJ,class) peut être remplacé par typeof(OBJ)=="uintX"

  • Si class est égal à "single", mtlb_isa(OBJ,class) peut être remplacé par type(OBJ)==1

  • Si class est égal à "double", mtlb_isa(OBJ,class) peut être remplacé par type(OBJ)==1

  • Si class est égal à "cell", mtlb_isa(OBJ,class) peut être remplacé par typeof(OBJ)=="ce"

  • Si class est égal à "struct", mtlb_isa(OBJ,class) peut être remplacé par typeof(OBJ)=="st"

  • Si class est égal à "function_handle", mtlb_isa(OBJ,class) peut être remplacé par type(OBJ)==13

  • Si class est égal à "sparse", mtlb_isa(OBJ,class) peut être remplacé par type(OBJ)==5

  • Si class est égal à "lti", mtlb_isa(OBJ,class) peut être remplacé par typeof(OBJ)=="state-space"

Attention : mtlb_isa ne doit pas être utilisée pour une programmation manuelle.

Voir Aussi

type , typeof

Auteurs

V.C.