| 20 | Namespace::Ptr ScriptGlobal::m_Globals = new Namespace(); |
| 21 | |
| 22 | Value ScriptGlobal::Get(const String& name, const Value *defaultValue) |
| 23 | { |
| 24 | Value result; |
| 25 | |
| 26 | if (!m_Globals->Get(name, &result)) { |
| 27 | if (defaultValue) |
| 28 | return *defaultValue; |
| 29 | |
| 30 | BOOST_THROW_EXCEPTION(std::invalid_argument("Tried to access undefined script variable '" + name + "'")); |
| 31 | } |
| 32 | |
| 33 | return result; |
| 34 | } |
| 35 | |
| 36 | void ScriptGlobal::Set(const String& name, const Value& value) |
| 37 | { |