d2fbd014c70060d62e95c4fdaaf4ddb5a16096b0
[scilab.git] / scilab / modules / overloading / macros / st_i_generic.sci
1 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
2 // Copyright (C) INRIA
3 //
4 // Copyright (C) 2012 - 2016 - Scilab Enterprises
5 //
6 // This file is hereby licensed under the terms of the GNU GPL v2.0,
7 // pursuant to article 5.3.4 of the CeCILL v.2.1.
8 // This file was originally licensed under the terms of the CeCILL v2.1,
9 // and continues to be available under such terms.
10 // For more information, see the COPYING file which you should have received
11 // along with this program.
12
13 function M=st_i_generic(varargin)
14     [lhs,rhs]=argn(0)
15     M=varargin(rhs)
16     N=varargin(rhs-1)//inserted matrix
17     index=varargin(1) //
18     if M==[] then M=struct(),M(index)=N;return;end
19     if rhs==3&(type(index)==10|type(index)==15) then
20         if type(index)==15 then
21             M=struct()
22             M(index)=N
23         else
24             M=createstruct(index,N)
25         end
26     else
27         error(1)
28     end
29
30 endfunction