diff options
Diffstat (limited to 'Sluift/Lua/Value.h')
| -rw-r--r-- | Sluift/Lua/Value.h | 92 | 
1 files changed, 46 insertions, 46 deletions
| diff --git a/Sluift/Lua/Value.h b/Sluift/Lua/Value.h index 55aa347..13c4a0c 100644 --- a/Sluift/Lua/Value.h +++ b/Sluift/Lua/Value.h @@ -1,60 +1,60 @@  /* - * Copyright (c) 2010-2013 Remko Tronçon - * Licensed under the GNU General Public License v3. - * See Documentation/Licenses/GPLv3.txt for more information. + * Copyright (c) 2010-2016 Isode Limited. + * All rights reserved. + * See the COPYING file for more information.   */  #pragma once  #include <map> +#include <memory>  #include <string>  #include <vector> +  #include <boost/variant.hpp> -#include <boost/shared_ptr.hpp> -#include <boost/smart_ptr/make_shared.hpp>  struct lua_State;  namespace Swift { -	namespace Lua { -		struct Nil {}; - -		typedef boost::make_recursive_variant< -				Nil, -				bool, -				int,  -				std::string, -				std::vector< boost::recursive_variant_ >, -				std::map<std::string, boost::shared_ptr<boost::recursive_variant_> > -			>::type Value; - -		typedef std::map<std::string, boost::shared_ptr<Value> > Table; -		typedef std::vector<Value> Array; -		 -		inline boost::shared_ptr<Value> nilRef() { -			return boost::make_shared<Value>(Nil()); -		} - -		inline boost::shared_ptr<Value> valueRef(const std::string& value) { -			return boost::make_shared<Value>(value); -		} - -		inline boost::shared_ptr<Value> intRef(int value) { -			return boost::make_shared<Value>(value); -		} - -		inline boost::shared_ptr<Value> boolRef(bool value) { -			return boost::make_shared<Value>(value); -		} - -		inline boost::shared_ptr<Value> valueRef(const Table& table) { -			return boost::make_shared<Value>(table); -		} - -		inline boost::shared_ptr<Value> valueRef(const Array& array) { -		 	return boost::make_shared<Value>(array); -		} - -		void pushValue(lua_State* state, const Value& value); -	} +    namespace Lua { +        struct Nil {}; + +        typedef boost::make_recursive_variant< +                Nil, +                bool, +                int, +                std::string, +                std::vector< boost::recursive_variant_ >, +                std::map<std::string, std::shared_ptr<boost::recursive_variant_> > +            >::type Value; + +        typedef std::map<std::string, std::shared_ptr<Value> > Table; +        typedef std::vector<Value> Array; + +        inline std::shared_ptr<Value> nilRef() { +            return std::make_shared<Value>(Nil()); +        } + +        inline std::shared_ptr<Value> valueRef(const std::string& value) { +            return std::make_shared<Value>(value); +        } + +        inline std::shared_ptr<Value> intRef(int value) { +            return std::make_shared<Value>(value); +        } + +        inline std::shared_ptr<Value> boolRef(bool value) { +            return std::make_shared<Value>(value); +        } + +        inline std::shared_ptr<Value> valueRef(const Table& table) { +            return std::make_shared<Value>(table); +        } + +        inline std::shared_ptr<Value> valueRef(const Array& array) { +             return std::make_shared<Value>(array); +        } + +        void pushValue(lua_State* state, const Value& value); +    }  } | 
 Swift
 Swift