aboutsummaryrefslogtreecommitdiff
path: root/cutl/compiler/context.txx
diff options
context:
space:
mode:
Diffstat (limited to 'cutl/compiler/context.txx')
-rw-r--r--cutl/compiler/context.txx87
1 files changed, 0 insertions, 87 deletions
diff --git a/cutl/compiler/context.txx b/cutl/compiler/context.txx
deleted file mode 100644
index 68525e2..0000000
--- a/cutl/compiler/context.txx
+++ /dev/null
@@ -1,87 +0,0 @@
-// file : cutl/compiler/context.txx
-// license : MIT; see accompanying LICENSE file
-
-namespace cutl
-{
- namespace compiler
- {
- template <typename X>
- X& context::
- get (std::string const& key)
- {
- map::iterator i (map_.find (key));
-
- if (i == map_.end ())
- throw no_entry ();
-
- try
- {
- return i->second. template value<X> ();
- }
- catch (container::any::typing const&)
- {
- throw typing ();
- }
- }
-
- template <typename X>
- X const& context::
- get (std::string const& key) const
- {
- map::const_iterator i (map_.find (key));
-
- if (i == map_.end ())
- throw no_entry ();
-
- try
- {
- return i->second. template value<X> ();
- }
- catch (container::any::typing const&)
- {
- throw typing ();
- }
- }
-
- template <typename X>
- X const& context::
- get (std::string const& key, X const& default_value) const
- {
- map::const_iterator i (map_.find (key));
-
- if (i == map_.end ())
- return default_value;
-
- try
- {
- return i->second. template value<X> ();
- }
- catch (container::any::typing const&)
- {
- throw typing ();
- }
- }
-
- template <typename X>
- X& context::
- set (std::string const& key, X const& value)
- {
- try
- {
- std::pair<map::iterator, bool> r (
- map_.insert (map::value_type (key, value)));
-
- X& x (r.first->second. template value<X> ());
-
- if (!r.second)
- x = value;
-
- return x;
- }
- catch (container::any::typing const&)
- {
- throw typing ();
- }
- }
- }
-}