* Bug 16328 fixed: typos exists => exist
[scilab.git] / scilab / modules / overloading / tests / unit_tests / overloadingName.dia.ref
1 //
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2010-2010 - DIGITEO - Bruno JOFRET
4 //
5 // Copyright (C) 2012 - 2016 - Scilab Enterprises
6 //
7 // This file is hereby licensed under the terms of the GNU GPL v2.0,
8 // pursuant to article 5.3.4 of the CeCILL v.2.1.
9 // This file was originally licensed under the terms of the CeCILL v2.1,
10 // and continues to be available under such terms.
11 // For more information, see the COPYING file which you should have received
12 // along with this program.
13 //
14 //
15 // <-- CLI SHELL MODE -->
16 // <-- ENGLISH IMPOSED -->
17 //
18 // This test is to check how overloading names are
19 // built then called.
20 // use mlist to define unknown type function.
21 //
22 // This test is base on the diary output.
23 //
24 overloadingNames = [
25     "%unknown_p" // Display
26     "%unknown_e" // Extraction
27     "%unknown_i_unknown" // Insertion
28     "%unknown_t" // transpose
29     "%unknown_0"
30     "%unknown_a_unknown" // addition
31     "%unknown_s_unknown" // subtraction
32     "%unknown_m_unknown" // mutiplication
33     "%unknown_x_unknown"
34     "%unknown_k_unknown"
35     "%unknown_u_unknown"
36     "%unknown_r_unknown" // division
37     "%unknown_d_unknown"
38     "%unknown_y_unknown"
39     "%unknown_v_unknown"
40     "%unknown_l_unknown" // right left division
41     "%unknown_q_unknown"
42     "%unknown_z_unknown"
43     "%unknown_w_unknown"
44     "%unknown_p_unknown" // power
45     "%unknown_j_unknown"
46     "%unknown_c_unknown" // column concat
47     "%unknown_f_unknown" // row concat
48     "%unknown_b_unknown" // implicit list
49     "%unknown_o_unknown" // equal
50     "%unknown_n_unknown" // different
51     "%unknown_g_unknown" // or
52     "%unknown_h_unknown" // and
53     "%unknown_1_unknown" // <
54     "%unknown_2_unknown" // >
55     "%unknown_3_unknown" // <=
56     "%unknown_4_unknown" // >=
57     "%unknown_5" // not
58 ];
59 // Generate all overloading functions...
60 for name = overloadingNames
61   execstr("function r="+name+"(varargin); " + ...
62          "disp(""Calling "+name+"...""); " + ...
63          "r = []; " + ...
64          "endfunction");
65 end
66 M = mlist("unknown");
67 if typeof(M) <> "unknown" then bugmes();quit;end
68 M
69  M  = 
70  Calling %unknown_p...
71 M(1)
72  Calling %unknown_e...
73  ans  =
74     []
75 M(1,2)
76  Calling %unknown_e...
77  ans  =
78     []
79 N = M
80  N  = 
81  Calling %unknown_p...
82 N(2) = M
83  Calling %unknown_i_unknown...
84  N  = 
85     []
86 M'
87  Calling %unknown_t...
88  ans  =
89     []
90 M.'
91  Calling %unknown_0...
92  ans  =
93     []
94 M + M
95  Calling %unknown_a_unknown...
96  ans  =
97     []
98 M - M
99  Calling %unknown_s_unknown...
100  ans  =
101     []
102 M * M
103  Calling %unknown_m_unknown...
104  ans  =
105     []
106 M .* M
107  Calling %unknown_x_unknown...
108  ans  =
109     []
110 M *. M
111  Calling %unknown_u_unknown...
112  ans  =
113     []
114 M .*. M
115  Calling %unknown_k_unknown...
116  ans  =
117     []
118 M / M
119  Calling %unknown_r_unknown...
120  ans  =
121     []
122 M ./ M
123  Calling %unknown_d_unknown...
124  ans  =
125     []
126 M /. M
127  Calling %unknown_v_unknown...
128  ans  =
129     []
130 M ./. M
131  Calling %unknown_y_unknown...
132  ans  =
133     []
134 M \ M
135  Calling %unknown_l_unknown...
136  ans  =
137     []
138 M .\ M
139  Calling %unknown_q_unknown...
140  ans  =
141     []
142 M \. M
143  Calling %unknown_w_unknown...
144  ans  =
145     []
146 M .\. M
147  Calling %unknown_z_unknown...
148  ans  =
149     []
150 M ^ M
151  Calling %unknown_p_unknown...
152  ans  =
153     []
154 M ** M
155  Calling %unknown_p_unknown...
156  ans  =
157     []
158 M .^ M
159  Calling %unknown_j_unknown...
160  ans  =
161     []
162 // M .** M <-- This does not exist in Scilab ... Wired ...
163 M:M
164  Calling %unknown_b_unknown...
165  ans  =
166     []
167 M == M
168  Calling %unknown_o_unknown...
169  ans  =
170     []
171 M <> M
172  Calling %unknown_n_unknown...
173  ans  =
174     []
175 M ~= M
176  Calling %unknown_n_unknown...
177  ans  =
178     []
179 M @= M
180  Calling %unknown_n_unknown...
181  ans  =
182     []
183 M < M
184  Calling %unknown_1_unknown...
185  ans  =
186     []
187 M > M
188  Calling %unknown_2_unknown...
189  ans  =
190     []
191 M <= M
192  Calling %unknown_3_unknown...
193  ans  =
194     []
195 M >= M
196  Calling %unknown_4_unknown...
197  ans  =
198     []
199 M | M
200  Calling %unknown_g_unknown...
201  ans  =
202     []
203 M & M
204  Calling %unknown_h_unknown...
205  ans  =
206     []
207 ~M
208  Calling %unknown_5...
209  ans  =
210     []
211 @M
212  Calling %unknown_5...
213  ans  =
214     []
215 // Clear all added functions
216 for name = overloadingNames
217   execstr("clear "+name);
218 end