File: typeof.sci

package info (click to toggle)
scilab 2.6-4
  • links: PTS
  • area: non-free
  • in suites: woody
  • size: 54,632 kB
  • ctags: 40,267
  • sloc: ansic: 267,851; fortran: 166,549; sh: 10,005; makefile: 4,119; tcl: 1,070; cpp: 233; csh: 143; asm: 135; perl: 130; java: 39
file content (51 lines) | stat: -rw-r--r-- 961 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
function [tf]=typeof(object)
// Copyright INRIA
select type(object)
case 1 then tf='constant';
case 2 then tf='polynomial';
case 4 then tf='boolean';
case 5 then tf='sparse';
case 6 then tf='boolean sparse';
case 7 then tf='Matlab sparse';
case 8 then 
  it=inttype(object)
  tf=''
  if int(it/10)==1 then
    tf='u'
    it=modulo(it,10)
  end
  tf=tf+'int'+string(8*it)
case 10 then tf='string';
case 11 then tf='function';
case 13 then tf='function';
case 14 then tf='library';
case 128 then tf='pointer';
case 129 then tf='size implicit';  
case 15 then tf='list'
case 16 then
  o1=object(1);
  select o1(1)
  case 'r' then 
    tf='rational';
  case 'lss' then 
    tf='state-space'
  else
    tf=o1(1)
  end
case 17 then
   o1=getfield(1,object)
   select o1(1)
   case 'hm' then
     tf='hypermat'
   else
     tf=o1(1)
   end
 else
   [tp,nm]=typename()
   k=find(tp==type(object))
   if k<>[] then
     tf=nm(k(1))
   else
     tf='unknown'
   end
 end