Merge remote-tracking branch 'origin/master' into jit
[scilab.git] / scilab / modules / ast / src / cpp / types / listinsert.cpp
1 /*
2 *  Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 *  Copyright (C) 2009-2009 - DIGITEO - Antoine ELIAS
4 *
5 *  This file must be used under the terms of the CeCILL.
6 *  This source file is licensed as described in the file COPYING, which
7 *  you should have received as part of this distribution.  The terms
8 *  are also available at
9 *  http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
10 *
11 */
12
13 #include <sstream>
14 #include <cstdio>
15
16 #include "listinsert.hxx"
17 #include "localization.h"
18
19 namespace types
20 {
21
22 ListInsert::ListInsert(InternalType* _pIT)
23 {
24     _pIT->IncreaseRef();
25     m_pInsert = _pIT;
26 }
27
28 ListInsert::~ListInsert()
29 {
30     if (m_pInsert != NULL)
31     {
32         m_pInsert->DecreaseRef();
33         if (m_pInsert->isDeletable())
34         {
35             delete m_pInsert;
36             m_pInsert = NULL;
37         }
38     }
39 }
40
41 void ListInsert::whoAmI()
42 {
43     std::cout << "types::ListInsert";
44 }
45
46 InternalType* ListInsert::clone(void)
47 {
48     return new ListInsert(m_pInsert);
49 }
50
51 bool ListInsert::toString(std::wostringstream& ostr)
52 {
53     ostr << L"FIXME : Implement ListInsert::toString" << std::endl;
54     return true;
55 }
56
57 InternalType* ListInsert::getInsert()
58 {
59     return m_pInsert;
60 }
61 }