class EL_MODULE_LIO

(source code)

Client examples: DJ_EVENTS_PUBLISHERREPOSITORY_PUBLISHEREIFFEL_NOTESLOCALIZATION_COMMAND_SHELLSUBJECT_LISTUNCHECKED_TRANSLATIONS_LISTDIGEST_ROUTINES_TEST_SETSTORABLE_TEST_SET

Description

Access to instance of EL_CONSOLE_ONLY_LOG which serves as an extension of the standard io object. As the name implies, output is sent only to the terminal console.

Features

note
	description: "[
		Access to instance of [$source EL_CONSOLE_ONLY_LOG] which serves as an extension of the standard `io'
		object. As the name implies, output is sent only to the terminal console.
		
		**Features**
		
		* Output through `lio' object is color highlighted for the gnome-terminal.
		
		* Output filtering is available via `Console.show' and `Console.show_all'
	]"

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

	license: "MIT license (See: en.wikipedia.org/wiki/MIT_License)"
	date: "2018-02-21 17:01:25 GMT (Wednesday 21st February 2018)"
	revision: "4"

class
	EL_MODULE_LIO

inherit
	EL_MODULE

	EL_MODULE_CONSOLE

	EL_MODULE_ARGS

feature -- Access

	Lio: EL_LOGGABLE
		once
			Result := new_lio
		end

feature -- Status query

	is_lio_enabled: BOOLEAN
		-- True if the `Current' type has been registered in console manger with call to
		-- `Console.show ({MY_TYPE})'
		do
			Result := Console.is_type_visible ({like Current})
		end

feature {NONE} -- Implementation

	new_lio: EL_LOGGABLE
		do
			if Args.has_silent then
				create {EL_SILENT_LOG} Result
			else
				create {EL_CONSOLE_ONLY_LOG} Result.make
			end
		end
end