NumberToken operator()(const Reference& R)const { if( R.IsNull() ) throw NullReferenceException("Dereferencing a nullreference"); else throw std::logic_error("Table is not convertible to a number"); }
std::string operator()(const Reference& ref)const { if( ref.IsNull() ) throw NullReferenceException("Dereferencing a nullreference"); else return "Reference -> table"; }
Variable * Variable_null::at(const str8 &index) const { throw NullReferenceException(); return 0; }
Variable * Variable_null::at(size_t index) const { throw NullReferenceException(); return 0; }
NumberToken operator()(const NullReference&)const { throw NullReferenceException("Dereferencing a null reference"); }
std::string operator()(const NullReference&)const { throw NullReferenceException("Dereferencing a null reference"); }