fix missing-override warnings on Scilab types
[scilab.git] / scilab / modules / ast / includes / types / macrofile.hxx
1 /*
2  *  Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  *  Copyright (C) 2009-2010 - DIGITEO - Bruno JOFRET
4  *  Copyright (C) 2009-2009 - DIGITEO - Antoine ELIAS
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 #ifndef __MACROFILE_HXX__
18 #define __MACROFILE_HXX__
19
20 #include <string>
21 #include "callable.hxx"
22 #include "macro.hxx"
23
24 namespace types
25 {
26 class EXTERN_AST MacroFile : public Callable
27 {
28 public :
29     MacroFile(): Callable() {};
30     MacroFile(const std::wstring& _stName, const std::wstring& _stPath, const std::wstring& _stModule);
31     virtual                 ~MacroFile();
32
33     //FIXME : Should not return NULL
34     MacroFile*              clone() override;
35
36     inline ScilabType       getType(void) override
37     {
38         return ScilabMacroFile;
39     }
40     inline ScilabId         getId(void) override
41     {
42         return IdMacroFile;
43     }
44
45     bool                    isMacroFile() override
46     {
47         return true;
48     }
49
50     void                    whoAmI() override;
51
52     bool                    toString(std::wostringstream& ostr) override;
53
54     Callable::ReturnValue   call(typed_list &in, optional_list &opt, int _iRetCount, typed_list &out) override;
55     bool                    parse(void);
56
57     Macro*                  getMacro(void);
58
59     void                    setLines(int _iFirstLine, int _iLastLine) override;
60
61     bool                    getMemory(long long* _piSize, long long* _piSizePlusType) override;
62
63     /* return type as string ( double, int, cell, list, ... )*/
64     virtual std::wstring    getTypeStr() const override
65     {
66         return L"function";
67     }
68     /* return type as short string ( s, i, ce, l, ... )*/
69     virtual std::wstring    getShortTypeStr() const override
70     {
71         return L"function";
72     }
73
74     inline const std::wstring & getPath()
75     {
76         return m_stPath;
77     }
78
79     virtual int getNbInputArgument(void) override;
80     virtual int getNbOutputArgument(void) override;
81
82     bool operator==(const InternalType& it) override;
83
84 private :
85     std::wstring            m_stPath;
86     Macro*                  m_pMacro;
87 };
88 }
89
90
91 #endif /* !__MACROFILE_HXX__ */