* Bug 15599 fixed: now degree of zero polynomial is -Inf
[scilab.git] / scilab / modules / ast / includes / types / void.hxx
1 /*
2  *  Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  *  Copyright (C) 2009-2010 - DIGITEO - 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
16 #ifndef __VOID_HXX__
17 #define __VOID_HXX__
18
19 #include "types.hxx"
20
21 namespace types
22 {
23 class EXTERN_AST Void : public InternalType
24 {
25 public :
26     Void() {};
27     virtual                 ~Void();
28
29     Void*                   clone();
30
31     inline ScilabType       getType(void)
32     {
33         return ScilabVoid;
34     }
35     inline ScilabId         getId(void)
36     {
37         return IdVoid;
38     }
39
40     bool                    isVoid()
41     {
42         return true;
43     }
44
45     void                    whoAmI();
46
47     bool                    toString(std::wostringstream& ostr);
48
49     /* return type as string ( double, int, cell, list, ... )*/
50     virtual std::wstring    getTypeStr() const
51     {
52         return L"void";
53     }
54     /* return type as short string ( s, i, ce, l, ... )*/
55     virtual std::wstring    getShortTypeStr() const
56     {
57         return L"";
58     }
59 };
60 }
61
62
63 #endif /* !__VOID_HXX__ */