class EVOLICITY_CONTEXT_IMP

(source code)

Client examples: DJ_EVENTS_HTML_INDEXEIFFEL_NOTESEVOLICITY_TEST_APPFTP_BACKUPM3U_PLAYLISTREPOSITORY_SITEMAP_PAGESVG_TO_PNG_CONVERSION_TEST_APP

Description

A createable Evolicity context where you add variables in the following ways:

note
	description: "[
		A createable Evolicity context where you add variables in the following ways:
		
		* from a table of strings using `make_from_string_table'
		* from a table of referenceable object_table using `make_from_object_table'
		* Calling `put_variable' or `put_integer'
	]"

	author: "Finnian Reilly"
	copyright: "Copyright (c) 2001-2017 Finnian Reilly"
	contact: "finnian at eiffel hyphen loop dot com"

	license: "MIT license (See: en.wikipedia.org/wiki/MIT_License)"
	date: "2018-10-30 17:21:33 GMT (Tuesday 30th October 2018)"
	revision: "4"

class
	EVOLICITY_CONTEXT_IMP

inherit
	EVOLICITY_CONTEXT

create
	make, make_from_string_table, make_from_object_table

feature {NONE} -- Initialization

	make
			--
		do
			create object_table
			object_table.compare_objects
		end


	make_from_object_table (table: HASH_TABLE [ANY, STRING])
			--
		do
			create object_table.make_equal (table.capacity)
			object_table.merge (table)
		end

	make_from_string_table (table: HASH_TABLE [READABLE_STRING_GENERAL, STRING])

		do
			create object_table.make_equal (table.capacity)
			from table.start until table.after loop
				put_variable (table.item_for_iteration, table.key_for_iteration)
				table.forth
			end
		end

feature {NONE} -- Internal attributes

	object_table: EVOLICITY_OBJECT_TABLE [ANY]

end