summaryrefslogtreecommitdiffstats
path: root/scilab/modules/ast/tests/unit_tests/newtype.hxx
blob: f20d3c6b93a2bd3d780b26cb9a2a8326cdf612b6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
/*
*  Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
*  Copyright (C) 2014 - Scilab Enterprises - Cedric Delamarre
*
*  This file must be used under the terms of the CeCILL.
*  This source file is licensed as described in the file COPYING, which
*  you should have received as part of this distribution.  The terms
*  are also available at
*  http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
*
*/

#include "user.hxx"

class NewType : public types::UserType
{
public:
    NewType()
    {
        bHasToString = true;
    }

    NewType(bool _VariableToString)
    {
        bHasToString = _VariableToString;
    }

    ~NewType() {}

    bool                    hasToString()
    {
        return bHasToString;
    }

    bool                    toString(std::ostringstream& ostr)
    {
        ostr << "This is my type.";
        return true;
    }

    std::string            getTypeStr()
    {
        return "NewType";
    }

    std::string            getShortTypeStr()
    {
        return "nt";
    }

    NewType*    clone()
    {
        return new NewType();
    }

private:
    bool bHasToString;
};