This file is indexed.

/usr/share/freemat/toolbox/array/cast.m is in freemat-data 4.0-5.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
% CAST CAST Typecast Variable to Specified Type
% 
% Usage
% 
% The cast function allows you to typecast a variable from one
% type to another.  The syntax for its use is 
% 
%     y = cast(x,toclass)
% 
% where toclass is the name of the class to cast x to.  Note
% that the typecast must make sense, and that toclass must be
% one of the builtin types.  The current list of supported types is
%   -  'cell' for cell-arrays
% 
%   -  'struct' for structure-arrays
% 
%   -  'logical' for logical arrays
% 
%   -  'uint8' for unsigned 8-bit integers
% 
%   -  'int8' for signed 8-bit integers
% 
%   -  'uint16' for unsigned 16-bit integers
% 
%   -  'int16' for signed 16-bit integers
% 
%   -  'uint32' for unsigned 32-bit integers
% 
%   -  'int32' for signed 32-bit integers
% 
%   -  'uint64' for unsigned 64-bit integers
% 
%   -  'int64' for signed 64-bit integers
% 
%   -  'float' for 32-bit floating point numbers
% 
%   -  'single' is a synonym for 'float'
% 
%   -  'double' for 64-bit floating point numbers
% 
%   -  'char' for string arrays
% 

% Copyright (c) 2002-2007 Samit Basu
% Licensed under the GPL

function y = cast(a,toclass)
    switch(toclass)
      case 'cell'
        y = cell(a);
      case 'struct'
        y = struct(a);
      case 'logical'
        y = logical(a);
      case 'uint8'
        y = uint8(a);
      case 'int8'
        y = int8(a);
      case 'uint16'
        y = uint16(a);
      case 'int16'
        y = int16(a);
      case 'uint32'
        y = uint32(a);
      case 'int32'
        y = int32(a);
      case 'uint64'
        y = uint64(a);
      case 'int64'
        y = int64(a);
      case {'float','single'}
        y = float(a);
      case 'double'
        y = double(a);
      case 'char'
        y = char(a);
      otherwise
        error(['Unsupported class ' toclass ' requested in typecast'])
    end