Refactoring of ScilabException in AST, exec, execstr.
[scilab.git] / scilab / modules / abstractSyntaxTree / src / cpp / scilabexception.cpp
1 /*
2  *  Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  *  Copyright (C) 2010 - 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 "scilabexception.hxx"
14
15 extern "C"
16 {
17 #include "lasterror.h"
18 #include "charEncoding.h"
19 }
20
21 namespace ast
22 {
23     ScilabException::ScilabException(std::wstring _wstErrorMesssage)
24     {
25         m_wstErrorMessage = _wstErrorMesssage;
26     }
27
28     ScilabException::ScilabException(std::string _stErrorMesssage)
29     {
30         m_wstErrorMessage = to_wide_string(_stErrorMesssage.c_str());
31     }
32
33     void ScilabException::SetErrorMessage(std::wstring _wstErrorMesssage)
34     {
35         m_wstErrorMessage = _wstErrorMesssage;
36     }
37
38     std::wstring ScilabException::GetErrorMessage(void)
39     {
40         return m_wstErrorMessage;
41     }
42
43
44     ScilabException::ScilabException(const Location& _ErrorLocation)
45     {
46         m_ErrorLocation     = _ErrorLocation;
47     }
48
49     ScilabException::ScilabException(std::wstring _wstErrorMesssage, int _iErrorNumber, const Location& _ErrorLocation)
50     {
51         m_wstErrorMessage   = _wstErrorMesssage;
52         m_iErrorNumber      = _iErrorNumber;
53         m_ErrorLocation     = _ErrorLocation;
54     }
55
56     ScilabException::ScilabException()
57     {
58         m_wstErrorMessage   = L"";
59         m_iErrorNumber      = 0;
60     }
61
62     void ScilabException::SetErrorNumber(int _iErrorNumber)
63     {
64         m_iErrorNumber = _iErrorNumber;
65     } 
66
67     int ScilabException::GetErrorNumber(void)
68     {
69         return m_iErrorNumber;
70     }
71
72     void ScilabException::SetErrorLocation(const Location& _ErrorLocation)
73     {
74         m_ErrorLocation = _ErrorLocation;
75     }
76
77     Location& ScilabException::GetErrorLocation(void)
78     {
79         return m_ErrorLocation;
80     }
81
82 }