/*
 * Verrückte Turing-Maschinen — A turing complete game
 * Copyright (C) 2016-2018 kcf <vidofnir@folksprak.org>
 * 
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <https://www.gnu.org/licenses/>.
 */

namespace mod_vtm
	{
		
		export namespace mod_data
			{
					
				/**
				 * @author kcf <vidofnir@folksprak.org>
				 */
				var _store = {};
				
				
				/**
				 * @author kcf <vidofnir@folksprak.org>
				 */
				export function write(key : string, value : any) : void
					{
						_store[key] = value;
					}
				
				
				/**
				 * @author kcf <vidofnir@folksprak.org>
				 */
				export function read(key : string) : lib_errormonade.type_errormonade<any>
					{
						if (key in _store)
							{
								return (lib_errormonade.create_just<any>(_store[key]));
							}
						else
							{
								return (lib_errormonade.create_nothing<any>());
							}
					}
				
			}
		
	}


/**
 * @author kcf <vidofnir@folksprak.org>
 */
function jsonp_handle(objekt : {key : string; value : any;}) : void
	{
		mod_vtm.mod_data.write(objekt.key, objekt.value);
	}

