Merge remote-tracking branch 'origin/master' into windows
[scilab.git] / scilab / modules / output_stream / sci_gateway / cpp / sci_disp.cpp
1 /*
2  *  Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  *  Copyright (C) 2010-2010 - DIGITEO - ELIAS Antoine
4  *  Copyright (C) 2014 - Scilab Enterprises - Cedric Delamarre
5  *
6  * Copyright (C) 2012 - 2016 - Scilab Enterprises
7  *
8  * This file is hereby licensed under the terms of the GNU GPL v2.0,
9  * pursuant to article 5.3.4 of the CeCILL v.2.1.
10  * This file was originally licensed under the terms of the CeCILL v2.1,
11  * and continues to be available under such terms.
12  * For more information, see the COPYING file which you should have received
13  * along with this program.
14  *
15  */
16
17 #include "output_stream_gw.hxx"
18 #include "function.hxx"
19 #include "scilabWrite.hxx"
20 #include "types_tools.hxx"
21
22 extern "C"
23 {
24 #include "Scierror.h"
25 #include "localization.h"
26 }
27
28 types::Function::ReturnValue sci_disp(types::typed_list &in, int _iRetCount, types::typed_list &out)
29 {
30     types::typed_list::reverse_iterator it;
31
32     if (in.empty())
33     {
34         Scierror(999, _("%s: Wrong number of input arguments: At least %d expected.\n"), "disp", 1);
35         return types::Function::Error;
36     }
37
38     for (it = in.rbegin() ; it != in.rend() ; it++)
39     {
40         scilabForcedWrite("\n");
41         if (VariableToString(*it, SPACES_LIST) == types::Function::Error)
42         {
43             return types::Function::Error;
44         }
45     }
46
47     return types::Function::OK;
48 }