class CLASS_DESCENDANTS_APP
Command line interface to CLASS_DESCENDANTS_COMMAND
Usage:
el_eiffel -descendants -out_dir doc/descendant -class $path -target $target_name
note
description: "Command line interface to ${CLASS_DESCENDANTS_COMMAND}"
notes: "[
Usage:
el_eiffel -descendants -out_dir doc/descendant -class $path -target $target_name
]"
author: "Finnian Reilly"
copyright: "Copyright (c) 2001-2022 Finnian Reilly"
contact: "finnian at eiffel hyphen loop dot com"
license: "MIT license (See: en.wikipedia.org/wiki/MIT_License)"
date: "2024-04-22 15:07:17 GMT (Monday 22nd April 2024)"
revision: "21"
class
CLASS_DESCENDANTS_APP
inherit
EL_COMMAND_LINE_APPLICATION [CLASS_DESCENDANTS_COMMAND]
redefine
Option_name, visible_types
end
EL_STRING_8_CONSTANTS
create
make
feature {NONE} -- Implementation
argument_specs: ARRAY [EL_COMMAND_ARGUMENT]
do
Result := <<
optional_argument ("build_dir", "Parent directory of EIFGENs", << file_must_exist >>),
optional_argument ("out_dir", "Output directory path", No_checks),
required_argument ("class", "Name of Eiffel class", No_checks),
optional_argument ("target", "Target name used to identify ecf file", No_checks)
>>
end
default_make: PROCEDURE [like command]
do
Result := agent {like command}.make (build_ise_platform, "doc", Empty_string_8, "classic")
end
build_ise_platform: DIR_PATH
do
create Result.make_expanded ("build/$ISE_PLATFORM")
end
log_filter_set: EL_LOG_FILTER_SET [like Current, CLASS_DESCENDANTS_COMMAND]
do
create Result.make
end
visible_types: TUPLE [EL_OS_COMMAND]
-- types with lio output visible in console
-- See: {EL_CONSOLE_MANAGER_I}.show_all
do
create Result
end
feature {NONE} -- Constants
Option_name: STRING = "descendants"
end