License Header change: Removed the LICENSE_END before beta
[scilab.git] / scilab / modules / api_scilab / src / cpp / template / api_optional.hpp
1 /*
2 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 * Copyright (C) 2015 - Scilab Enterprises - Antoine ELIAS
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 #include "gatewaystruct.hxx"
16
17 extern "C"
18 {
19 #include "api_scilab.h"
20 }
21
22 scilabVar API_PROTO(getOptional)(scilabEnv env, scilabOpt opt, const wchar_t* varname)
23 {
24     std::wstring name(varname);
25     types::optional_list* l = (types::optional_list*)opt;
26
27     const auto it = l->find(name);
28     if (it != l->end())
29     {
30         return (scilabVar)it->second;
31     }
32
33     return NULL;
34 }