This mostly focuses on the print help functions.
Fix the incorrectly spelled "aplied".
Fix the help messages in the read man pages.
Add *_format_code_name_* for an upper-case human friendly name.
Add this to the fss_write as well given that the programs follow the "programs as a library" design.
* FSS Delimit Parameter strings.
*
* fss_basic_list_read_delimit_mode_*:
- * - all: All delimits are to be aplied.
+ * - all: All delimits are to be applied.
* - content: Content are to have delimits applied.
* - content_greater: Content at this number or higher are to have delimits applied.
* - content_greater_object: Objects and Content at this number or higher are to have delimits applied.
const f_string_static_t fss_read_format_code_long_0000_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_long_0000_s, 0, FSS_READ_format_code_long_0000_s_length);
const f_string_static_t fss_read_format_code_human_0000_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_human_0000_s, 0, FSS_READ_format_code_human_0000_s_length);
const f_string_static_t fss_read_format_code_machine_0000_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_machine_0000_s, 0, FSS_READ_format_code_machine_0000_s_length);
+ const f_string_static_t fss_read_format_code_name_0000_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_name_0000_s, 0, FSS_READ_format_code_name_0000_s_length);
#endif // _di_fss_read_basic_s_
#ifdef __cplusplus
#define FSS_READ_format_code_long_0000_s "fss-0000"
#define FSS_READ_format_code_human_0000_s "basic"
#define FSS_READ_format_code_machine_0000_s "basic"
+ #define FSS_READ_format_code_name_0000_s "Basic"
#define FSS_READ_basic_standard_s_length 16
#define FSS_READ_format_code_long_0000_s_length 8
#define FSS_READ_format_code_human_0000_s_length 5
#define FSS_READ_format_code_machine_0000_s_length 5
+ #define FSS_READ_format_code_name_0000_s_length 4
extern const f_string_static_t fss_read_basic_standard_s;
extern const f_string_static_t fss_read_format_code_long_0000_s;
extern const f_string_static_t fss_read_format_code_human_0000_s;
extern const f_string_static_t fss_read_format_code_machine_0000_s;
+ extern const f_string_static_t fss_read_format_code_name_0000_s;
#endif // _di_fss_read_basic_s_
#ifdef __cplusplus
fll_program_print_help_usage(print, fss_read_basic_program_name_s, f_string_empty_s);
- fss_read_print_message_help_pipe(print);
-
- fss_read_print_message_help_end_next(print);
+ fss_read_print_message_help_note_header(print, fss_read_format_code_short_0000_s, fss_read_format_code_name_0000_s);
- fl_print_format("%r The FSS-0000 (Basic) specification does not support multi-line Content, therefore the parameter '%[%r%r%]'", print->to, f_string_eol_s, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_prepend_s, print->set->notable);
- fl_print_format(" does nothing.%r%r", print->to, f_string_eol_s, f_string_eol_s);
+ fss_read_print_message_help_pipe(print);
- fl_print_format(" This program does not use the parameter '%[%r%r%]', which therefore does nothing.%r", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_ignore_s, print->set->notable, f_string_eol_s);
- fl_print_format(" This parameter requires two values.%r", print->to, f_string_eol_s);
+ fss_read_print_message_help_note(print, F_false);
f_file_stream_flush(print->to);
f_file_stream_unlock(print->to);
const f_string_static_t fss_read_format_code_long_0002_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_long_0002_s, 0, FSS_READ_format_code_long_0002_s_length);
const f_string_static_t fss_read_format_code_human_0002_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_human_0002_s, 0, FSS_READ_format_code_human_0002_s_length);
const f_string_static_t fss_read_format_code_machine_0002_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_machine_0002_s, 0, FSS_READ_format_code_machine_0002_s_length);
+ const f_string_static_t fss_read_format_code_name_0002_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_name_0002_s, 0, FSS_READ_format_code_name_0002_s_length);
#endif // _di_fss_read_basic_list_s_
#ifdef __cplusplus
#define FSS_READ_format_code_long_0002_s "fss-0002"
#define FSS_READ_format_code_human_0002_s "basic list"
#define FSS_READ_format_code_machine_0002_s "basic_list"
+ #define FSS_READ_format_code_name_0002_s "Basic List"
#define FSS_READ_basic_list_standard_s_length 21
#define FSS_READ_format_code_long_0002_s_length 8
#define FSS_READ_format_code_human_0002_s_length 10
#define FSS_READ_format_code_machine_0002_s_length 10
+ #define FSS_READ_format_code_name_0002_s_length 10
extern const f_string_static_t fss_read_basic_list_standard_s;
extern const f_string_static_t fss_read_format_code_long_0002_s;
extern const f_string_static_t fss_read_format_code_human_0002_s;
extern const f_string_static_t fss_read_format_code_machine_0002_s;
+ extern const f_string_static_t fss_read_format_code_name_0002_s;
#endif // _di_fss_read_basic_list_s_
#ifdef __cplusplus
fll_program_print_help_usage(print, fss_read_basic_list_program_name_s, f_string_empty_s);
- fss_read_print_message_help_pipe(print);
-
- fss_read_print_message_help_end_next(print);
+ fss_read_print_message_help_note_header(print, fss_read_format_code_short_0002_s, fss_read_format_code_name_0002_s);
- fl_print_format("%r The FSS-0002 (Basic List) specification does not support quoted names, therefore the parameters '%[%r%r%]'", print->to, f_string_eol_s, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_single_s, print->set->notable);
- fl_print_format(" and '%[%r%r%]' do nothing.%r%r", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_double_s, print->set->notable, f_string_eol_s, f_string_eol_s);
+ fss_read_print_message_help_pipe(print);
- fl_print_format(" This program does not use the parameter '%[%r%r%]', which therefore does nothing.%r", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_ignore_s, print->set->notable, f_string_eol_s);
- fl_print_format(" This parameter requires two values.%r", print->to, f_string_eol_s);
+ fss_read_print_message_help_note(print, F_true);
f_file_stream_flush(print->to);
f_file_stream_unlock(print->to);
const f_string_static_t fss_read_format_code_long_0008_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_long_0008_s, 0, FSS_READ_format_code_long_0008_s_length);
const f_string_static_t fss_read_format_code_human_0008_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_human_0008_s, 0, FSS_READ_format_code_human_0008_s_length);
const f_string_static_t fss_read_format_code_machine_0008_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_machine_0008_s, 0, FSS_READ_format_code_machine_0008_s_length);
+ const f_string_static_t fss_read_format_code_name_0008_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_name_0008_s, 0, FSS_READ_format_code_name_0008_s_length);
#endif // _di_fss_read_embedded_list_s_
#ifdef __cplusplus
#define FSS_READ_format_code_long_0008_s "fss-0008"
#define FSS_READ_format_code_human_0008_s "embedded list"
#define FSS_READ_format_code_machine_0008_s "embedded_list"
+ #define FSS_READ_format_code_name_0008_s "Embedded List"
#define FSS_READ_embedded_list_standard_s_length 24
#define FSS_READ_format_code_long_0008_s_length 8
#define FSS_READ_format_code_human_0008_s_length 13
#define FSS_READ_format_code_machine_0008_s_length 13
+ #define FSS_READ_format_code_name_0008_s_length 13
extern const f_string_static_t fss_read_embedded_list_standard_s;
extern const f_string_static_t fss_read_format_code_long_0008_s;
extern const f_string_static_t fss_read_format_code_human_0008_s;
extern const f_string_static_t fss_read_format_code_machine_0008_s;
+ extern const f_string_static_t fss_read_format_code_name_0008_s;
#endif // _di_fss_read_embedded_list_s_
#ifdef __cplusplus
fll_program_print_help_usage(print, fss_read_embedded_list_program_name_s, f_string_empty_s);
- fss_read_print_message_help_pipe(print);
-
- fss_read_print_message_help_end_next(print);
+ fss_read_print_message_help_note_header(print, fss_read_format_code_short_0008_s, fss_read_format_code_name_0008_s);
- fl_print_format("%r The FSS-0008 (Embedded List) specification does not support quoted names, therefore the parameters '%[%r%r%]'", print->to, f_string_eol_s, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_single_s, print->set->notable);
- fl_print_format(" and '%[%r%r%]' do nothing.%r%r", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_double_s, print->set->notable, f_string_eol_s, f_string_eol_s);
+ fss_read_print_message_help_pipe(print);
- fl_print_format(" The parameter '%[%r%r%]' designates to not escape any valid nested Object or Content within some Content.%r", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_ignore_s, print->set->notable, f_string_eol_s);
- fl_print_format(" This parameter requires two values.%r", print->to, f_string_eol_s);
- fl_print_format(" This parameter is not used for ignoring anything from the input pipe.%r", print->to, f_string_eol_s);
- fl_print_format(" This parameter must be specified after a '%[%r%r%]'", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_content_s, print->set->notable);
- fl_print_format(" parameter and this applies only to the Content represented by that specific '%[%r%r%]' parameter.%r", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_content_s, print->set->notable, f_string_eol_s);
+ fss_read_print_message_help_note(print, F_true);
f_file_stream_flush(print->to);
f_file_stream_unlock(print->to);
const f_string_static_t fss_read_format_code_long_0001_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_long_0001_s, 0, FSS_READ_format_code_long_0001_s_length);
const f_string_static_t fss_read_format_code_human_0001_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_human_0001_s, 0, FSS_READ_format_code_human_0001_s_length);
const f_string_static_t fss_read_format_code_machine_0001_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_machine_0001_s, 0, FSS_READ_format_code_machine_0001_s_length);
+ const f_string_static_t fss_read_format_code_name_0001_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_name_0001_s, 0, FSS_READ_format_code_name_0001_s_length);
#endif // _di_fss_read_extended_s_
#ifdef __cplusplus
#define FSS_READ_format_code_long_0001_s "fss-0001"
#define FSS_READ_format_code_human_0001_s "extended"
#define FSS_READ_format_code_machine_0001_s "extended"
+ #define FSS_READ_format_code_name_0001_s "Extended"
#define FSS_READ_extended_standard_s_length 19
#define FSS_READ_format_code_long_0001_s_length 8
#define FSS_READ_format_code_human_0001_s_length 8
#define FSS_READ_format_code_machine_0001_s_length 8
+ #define FSS_READ_format_code_name_0001_s_length 8
extern const f_string_static_t fss_read_extended_standard_s;
extern const f_string_static_t fss_read_format_code_long_0001_s;
extern const f_string_static_t fss_read_format_code_human_0001_s;
extern const f_string_static_t fss_read_format_code_machine_0001_s;
+ extern const f_string_static_t fss_read_format_code_name_0001_s;
#endif // _di_fss_read_extended_s_
#ifdef __cplusplus
fll_program_print_help_usage(print, fss_read_extended_program_name_s, f_string_empty_s);
- fss_read_print_message_help_pipe(print);
-
- fss_read_print_message_help_end_next(print);
+ fss_read_print_message_help_note_header(print, fss_read_format_code_short_0001_s, fss_read_format_code_name_0001_s);
- fl_print_format("%r The FSS-0001 (Extended) specification does not support multi-line Content, therefore the parameter '%[%r%r%]'", print->to, f_string_eol_s, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_prepend_s, print->set->notable);
- fl_print_format(" does nothing.%r%r", print->to, f_string_eol_s, f_string_eol_s);
+ fss_read_print_message_help_pipe(print);
- fl_print_format(" This program does not use the parameter '%[%r%r%]', which therefore does nothing.%r", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_ignore_s, print->set->notable, f_string_eol_s);
- fl_print_format(" This parameter requires two values.%r", print->to, f_string_eol_s);
+ fss_read_print_message_help_note(print, F_false);
f_file_stream_flush(print->to);
f_file_stream_unlock(print->to);
const f_string_static_t fss_read_format_code_long_0003_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_long_0003_s, 0, FSS_READ_format_code_long_0003_s_length);
const f_string_static_t fss_read_format_code_human_0003_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_human_0003_s, 0, FSS_READ_format_code_human_0003_s_length);
const f_string_static_t fss_read_format_code_machine_0003_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_machine_0003_s, 0, FSS_READ_format_code_machine_0003_s_length);
+ const f_string_static_t fss_read_format_code_name_0003_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_name_0003_s, 0, FSS_READ_format_code_name_0003_s_length);
#endif // _di_fss_read_extended_list_s_
#ifdef __cplusplus
#define FSS_READ_format_code_long_0003_s "fss-0003"
#define FSS_READ_format_code_human_0003_s "extended list"
#define FSS_READ_format_code_machine_0003_s "extended_list"
+ #define FSS_READ_format_code_name_0003_s "Extended List"
#define FSS_READ_extended_list_standard_s_length 24
#define FSS_READ_format_code_long_0003_s_length 8
#define FSS_READ_format_code_human_0003_s_length 13
#define FSS_READ_format_code_machine_0003_s_length 13
+ #define FSS_READ_format_code_name_0003_s_length 13
extern const f_string_static_t fss_read_extended_list_standard_s;
extern const f_string_static_t fss_read_format_code_long_0003_s;
extern const f_string_static_t fss_read_format_code_human_0003_s;
extern const f_string_static_t fss_read_format_code_machine_0003_s;
+ extern const f_string_static_t fss_read_format_code_name_0003_s;
#endif // _di_fss_read_extended_list_s_
#ifdef __cplusplus
fll_program_print_help_usage(print, fss_read_extended_list_program_name_s, f_string_empty_s);
- fss_read_print_message_help_pipe(print);
-
- fss_read_print_message_help_end_next(print);
+ fss_read_print_message_help_note_header(print, fss_read_format_code_short_0003_s, fss_read_format_code_name_0003_s);
- fl_print_format("%r The FSS-0003 (Extended List) specification does not support quoted names, therefore the parameters '%[%r%r%]'", print->to, f_string_eol_s, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_single_s, print->set->notable);
- fl_print_format(" and '%[%r%r%]' do nothing.%r%r", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_double_s, print->set->notable, f_string_eol_s, f_string_eol_s);
+ fss_read_print_message_help_pipe(print);
- fl_print_format(" The parameter '%[%r%r%]' designates to not escape any valid nested Object or Content within some Content.%r", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_ignore_s, print->set->notable, f_string_eol_s);
- fl_print_format(" This parameter requires two values.%r", print->to, f_string_eol_s);
- fl_print_format(" This parameter is not used for ignoring anything from the input pipe.%r", print->to, f_string_eol_s);
- fl_print_format(" This parameter must be specified after a '%[%r%r%]'", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_content_s, print->set->notable);
- fl_print_format(" parameter and this applies only to the Content represented by that specific '%[%r%r%]' parameter.%r", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_content_s, print->set->notable, f_string_eol_s);
+ fss_read_print_message_help_note(print, F_true);
f_file_stream_flush(print->to);
f_file_stream_unlock(print->to);
if (main->program.parameters.array[fss_read_parameter_help_e].result & f_console_result_found_e) return;
if (main->program.parameters.array[fss_read_parameter_version_e].result & f_console_result_found_e) return;
+ if (main->program.parameters.array[fss_read_parameter_strip_invalid_e].result & f_console_result_found_e) {
+ main->setting.flag |= fss_read_main_flag_strip_invalid_e;
+ }
+
if ((main->program.parameters.array[fss_read_parameter_file_e].result & f_console_result_value_e) && main->program.parameters.array[fss_read_parameter_file_e].values.used) {
if (main->program.parameters.array[fss_read_parameter_file_e].values.used > 1) {
main->setting.state.status = F_status_set_error(F_parameter);
}; // enum
#endif // _di_fss_read_print_flag_e_
+/**
+ * FSS Delimit Parameter enumerations.
+ *
+ * fss_read_delimit_mode_*_e:
+ * - all: All delimits are to be applied.
+ * - content: Content are to have delimits applied.
+ * - content_greater: Content at this number or higher are to have delimits applied.
+ * - content_greater_object: Objects and Content at this number or higher are to have delimits applied.
+ * - content_lesser: Content at this number or lower are to have delimits applied.
+ * - content_lesser_object: Objects and Content at this number or lower are to have delimits applied.
+ * - content_object: Objects and Content are to have delimits applied
+ * - object: Objects arre to have delimits applied.
+ */
+#ifndef _di_fss_read_delimit_mode_e_
+ enum {
+ fss_read_delimit_mode_none_e = 0,
+ fss_read_delimit_mode_all_e,
+ fss_read_delimit_mode_content_e,
+ fss_read_delimit_mode_content_greater_e,
+ fss_read_delimit_mode_content_greater_object_e,
+ fss_read_delimit_mode_content_lesser_e,
+ fss_read_delimit_mode_content_lesser_object_e,
+ fss_read_delimit_mode_content_object_e,
+ fss_read_delimit_mode_object_e,
+ }; // enum
+#endif // _di_fss_read_delimit_mode_e_
+
#ifdef __cplusplus
} // extern "C"
#endif
const f_string_static_t fss_read_string_two_s = macro_f_string_static_t_initialize_1(FSS_READ_string_two_s, 0, FSS_READ_string_two_s_length);
#endif // _di_fss_read_s_
+#ifndef _di_fss_read_delimit_mode_s_
+ const f_string_static_t fss_read_delimit_mode_name_none_s = macro_f_string_static_t_initialize_1(FSS_READ_delimit_mode_name_none_s, 0, FSS_READ_delimit_mode_name_none_s_length);
+ const f_string_static_t fss_read_delimit_mode_name_all_s = macro_f_string_static_t_initialize_1(FSS_READ_delimit_mode_name_all_s, 0, FSS_READ_delimit_mode_name_all_s_length);
+ const f_string_static_t fss_read_delimit_mode_name_object_s = macro_f_string_static_t_initialize_1(FSS_READ_delimit_mode_name_object_s, 0, FSS_READ_delimit_mode_name_object_s_length);
+ const f_string_static_t fss_read_delimit_mode_name_greater_s = macro_f_string_static_t_initialize_1(FSS_READ_delimit_mode_name_greater_s, 0, FSS_READ_delimit_mode_name_greater_s_length);
+ const f_string_static_t fss_read_delimit_mode_name_lesser_s = macro_f_string_static_t_initialize_1(FSS_READ_delimit_mode_name_lesser_s, 0, FSS_READ_delimit_mode_name_lesser_s_length);
+#endif // _di_fss_read_delimit_mode_s_
+
#ifndef _di_fss_read_parameter_s_
const f_string_static_t fss_read_short_at_s = macro_f_string_static_t_initialize_1(FSS_READ_short_at_s, 0, FSS_READ_short_at_s_length);
const f_string_static_t fss_read_short_content_s = macro_f_string_static_t_initialize_1(FSS_READ_short_content_s, 0, FSS_READ_short_content_s_length);
#endif // _di_fss_read_pipe_s_
/**
- * A collection of static strings associated with FSS Payload Write.
+ * A collection of static strings associated with FSS Read.
*/
#ifndef _di_fss_read_s_
#define FSS_READ_string_two_s "two"
#endif // _di_fss_read_s_
/**
+ * FSS Delimit Parameter strings.
+ *
+ * fss_read_delimit_mode_*:
+ * - all: All delimits are to be aplied.
+ * - content: Content are to have delimits applied.
+ * - content_greater: Content at this number or higher are to have delimits applied.
+ * - content_greater_object: Objects and Content at this number or higher are to have delimits applied.
+ * - content_lesser: Content at this number or lower are to have delimits applied.
+ * - content_lesser_object: Objects and Content at this number or lower are to have delimits applied.
+ * - content_object: Objects and Content are to have delimits applied
+ * - object: Objects arre to have delimits applied.
+ */
+#ifndef _di_fss_read_delimit_mode_s_
+ #define FSS_READ_delimit_mode_name_none_s "none"
+ #define FSS_READ_delimit_mode_name_all_s "all"
+ #define FSS_READ_delimit_mode_name_object_s "object"
+ #define FSS_READ_delimit_mode_name_greater_s "+"
+ #define FSS_READ_delimit_mode_name_lesser_s "-"
+
+ #define FSS_READ_delimit_mode_name_none_s_length 4
+ #define FSS_READ_delimit_mode_name_all_s_length 3
+ #define FSS_READ_delimit_mode_name_object_s_length 6
+ #define FSS_READ_delimit_mode_name_greater_s_length 1
+ #define FSS_READ_delimit_mode_name_lesser_s_length 1
+
+ extern const f_string_static_t fss_read_delimit_mode_name_none_s;
+ extern const f_string_static_t fss_read_delimit_mode_name_all_s;
+ extern const f_string_static_t fss_read_delimit_mode_name_object_s;
+ extern const f_string_static_t fss_read_delimit_mode_name_greater_s;
+ extern const f_string_static_t fss_read_delimit_mode_name_lesser_s;
+#endif // _di_fss_read_delimit_mode_s_
+
+/**
* The main program parameters.
*/
#ifndef _di_fss_read_parameter_s_
#define FSS_READ_long_at_s_length 2
#define FSS_READ_long_content_s_length 7
- #define FSS_READ_long_columns_s_length 8
+ #define FSS_READ_long_columns_s_length 7
#define FSS_READ_long_delimit_s_length 7
#define FSS_READ_long_depth_s_length 5
#define FSS_READ_long_empty_s_length 5
fss_read_print_message_help(print);
- fll_program_print_help_option(print, fss_read_short_as_s, fss_read_long_as_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, "Designate the supported format to write as.");
+ fll_program_print_help_option(print, fss_read_short_as_s, fss_read_long_as_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, "Designate the supported format to read as.");
f_print_dynamic_raw(f_string_eol_s, print->to);
fll_program_print_help_usage(print, fss_read_program_name_s, f_string_empty_s);
+ fss_read_print_message_help_note_header(print, f_string_empty_s, f_string_empty_s);
+
fss_read_print_message_help_pipe(print);
- fss_read_print_message_help_end_next(print);
+ fss_read_print_message_help_note(print, F_false);
f_print_dynamic_raw(f_string_eol_s, print->to);
+ // @todo everything below needs to be reviewed and updated as appropriate.
+
fl_print_format(" The '%[%r%r%]' parameter supports the following standards with the specified possible case-sensitive values:%r", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_as_s, print->set->notable, f_string_eol_s);
// FSS-0000 (Basic)
f_print_dynamic_raw(f_string_eol_s, print->to);
- fll_program_print_help_option(print, fss_read_short_backtick_s, fss_read_long_backtick_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Use backticks to quote.");
- fll_program_print_help_option(print, fss_read_short_content_s, fss_read_long_content_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " The Content to write.");
- fll_program_print_help_option(print, fss_read_short_content_end_s, fss_read_long_content_end_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Write the end of Content characters.");
- fll_program_print_help_option(print, fss_read_short_content_next_s, fss_read_long_content_next_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, "Write the next Content characters (separates multi-Content apart).");
- fll_program_print_help_option(print, fss_read_short_double_s, fss_read_long_double_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Use double quotes (default).");
- fll_program_print_help_option(print, fss_read_short_file_s, fss_read_long_file_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Specify a file to send data to.");
- fll_program_print_help_option(print, fss_read_short_ignore_s, fss_read_long_ignore_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Ignore a given range within a Content.");
- fll_program_print_help_option(print, fss_read_short_object_s, fss_read_long_object_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " The Object to write.");
- fll_program_print_help_option(print, fss_read_short_object_open_s, fss_read_long_object_open_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Write the open Object characters.");
- fll_program_print_help_option(print, fss_read_short_partial_s, fss_read_long_partial_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Do not write a complete Object and Content set.");
- fll_program_print_help_option(print, fss_read_short_prepend_s, fss_read_long_prepend_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Prepend the given white space characters to the start of each multi-line Content.");
- fll_program_print_help_option(print, fss_read_short_single_s, fss_read_long_single_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Use single quotes.");
- fll_program_print_help_option(print, fss_read_short_trim_s, fss_read_long_trim_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Trim Object names.");
+ fll_program_print_help_option(print, fss_read_short_at_s, fss_read_long_at_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Select Object at this numeric index.");
+ fll_program_print_help_option(print, fss_read_short_content_s, fss_read_long_content_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Print the Content (default).");
+ fll_program_print_help_option(print, fss_read_short_columns_s, fss_read_long_columns_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Print the total number of columns.");
+ fll_program_print_help_option(print, fss_read_short_delimit_s, fss_read_long_delimit_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Designate how to handle applying delimits.");
+ fll_program_print_help_option(print, fss_read_short_depth_s, fss_read_long_depth_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Select Object at this numeric depth.");
+ fll_program_print_help_option(print, fss_read_short_empty_s, fss_read_long_empty_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Include empty Content when processing.");
+ fll_program_print_help_option(print, fss_read_short_line_s, fss_read_long_line_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Print only the Content at the given line.");
+ fll_program_print_help_option(print, fss_read_short_name_s, fss_read_long_name_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Select Object with this name.");
+ fll_program_print_help_option(print, fss_read_short_object_s, fss_read_long_object_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Print the Object.");
+ fll_program_print_help_option(print, fss_read_short_pipe_s, fss_read_long_pipe_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Print using the special pipe format.");
+ fll_program_print_help_option(print, fss_read_short_original_s, fss_read_long_original_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, "Print with the original quotes and escapes.");
+ fll_program_print_help_option(print, fss_read_short_select_s, fss_read_long_select_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Select sub-Content at this index.");
+ fll_program_print_help_option(print, fss_read_short_total_s, fss_read_long_total_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Print the total number of lines.");
+ fll_program_print_help_option(print, fss_read_short_trim_s, fss_read_long_trim_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Trim Object names on select or print.");
}
#endif // _di_fss_read_print_message_help_
-#ifndef _di_fss_read_print_message_help_end_next_
- void fss_read_print_message_help_end_next(fl_print_t * const print) {
+#ifndef _di_fss_read_print_message_help_note_header_
+ void fss_read_print_message_help_note_header(fl_print_t * const print, const f_string_static_t number, const f_string_static_t name) {
if (!print) return;
- fl_print_format(" The '%[%r%r%]',", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_object_open_s, print->set->notable);
- fl_print_format(" '%[%r%r%]', and", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_content_next_s, print->set->notable);
- fl_print_format(" '%[%r%r%]' help facilitate writing the designated data for when using", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_content_end_s, print->set->notable);
- fl_print_format(" '%[%r%r%]'.%r", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_partial_s, print->set->notable, f_string_eol_s);
+ fl_print_format(" %[Notes:%]%r This program will print the data associated with the given Object and Content based on the FSS", print->to, f_string_eol_s);
- fl_print_format(" These may also be used when there is no '%[%r%r%]' or", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_object_s, print->set->notable);
- fl_print_format(" '%[%r%r%]' specified to only print the designated data.%r", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_content_s, print->set->notable, f_string_eol_s);
+ if (number.used) {
+ fl_print_format("-%Q", print->to, number);
+
+ if (name.used) {
+ fl_print_format(" (%Q)", print->to, name);
+ }
+ }
+
+ fl_print_format(" standard.%r", print->to, f_string_eol_s);
+ }
+#endif // _di_fss_read_print_message_help_note_header_
+
+#ifndef _di_fss_read_print_message_help_note_
+ void fss_read_print_message_help_note(fl_print_t * const print, const uint8_t new_line) {
+
+ if (!print) return;
+
+ f_color_set_context_t * const set = print->set;
+
+ // TODO: this is just copied over and needs to be broken up somehow.
+ fl_print_format("%r All numeric positions (indexes) start at 0 instead of 1.%r", print->to, f_string_eol_s, f_string_eol_s);
+ fl_print_format(" For example, a file of 17 lines would range from 0 to 16.%r%r", print->to, f_string_eol_s, f_string_eol_s);
+
+ fl_print_format(" When using the %[%r%r%] option, an order of operations is enforced on the parameters.%r", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_depth_s, set->notable, f_string_eol_s);
+
+ fl_print_format(" When this order of operations is in effect, parameters to the right of a depth parameter are influenced by that depth parameter:%r", print->to, f_string_eol_s);
+
+ fl_print_format(" %[%r%r%]: An Object index at the specified depth.%r", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_at_s, set->notable, f_string_eol_s);
+ fl_print_format(" %[%r%r%]: A new depth within the specified depth, indexed from the root.%r", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_depth_s, set->notable, f_string_eol_s);
+ fl_print_format(" %[%r%r%]: An Object name at the specified depth.%r%r", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_name_s, set->notable, f_string_eol_s, f_string_eol_s);
+
+ fl_print_format(" The parameter %[%r%r%] must be in numeric order, but values in between may be skipped.%r", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_depth_s, set->notable, f_string_eol_s);
+ fl_print_format(" ('-d 0 -a 1 -d 2 -a 2' would specify index 1 at depth 0, any index at depth 1, and index 2 at depth 2.)%r", print->to, f_string_eol_s);
+ fl_print_format(" ('-d 2 -a 1 -d 0 -a 2' would be invalid because depth 2 is before depth 1.)%r%r", print->to, f_string_eol_s, f_string_eol_s);
+
+ fl_print_format(" The parameter %[%r%r%] selects a Content column.%r%r", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_select_s, set->notable, f_string_eol_s, f_string_eol_s);
+
+ fl_print_format(" Specify both %[%r%r%]", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_object_s, set->notable);
+ fl_print_format(" and the %[%r%r%] parameters to get the total objects.%r%r", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_total_s, set->notable, f_string_eol_s, f_string_eol_s);
+
+ fl_print_format(" When both %[%r%r%]", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_at_s, set->notable);
+ fl_print_format(" and %[%r%r%] parameters are specified (at the same depth),", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_name_s, set->notable);
+ fl_print_format(" the %[%r%r%] parameter value will be treated as a position relative to the specified", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_at_s, set->notable);
+ fl_print_format(" %[%r%r%] parameter value.%r%r", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_name_s, set->notable, f_string_eol_s, f_string_eol_s);
+
+ fl_print_format(" This program may support parameters, such as %[%r%r%]", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_depth_s, set->notable);
+ fl_print_format(" or %[%r%r%], even if not supported by the standard.%r", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_select_s, set->notable, f_string_eol_s);
+ fl_print_format(" This is done to help ensure consistency for scripting.%r%r", print->to, f_string_eol_s, f_string_eol_s);
+
+ fl_print_format(" For parameters like %[%r%r%],", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_depth_s, set->notable);
+ fl_print_format(" if the standard doesn't support nested Content, then only a depth of 0 would be valid.%r", print->to, f_string_eol_s);
+
+ fl_print_format(" For parameters like %[%r%r%],", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_select_s, set->notable);
+ fl_print_format(" if the standard doesn't support multiple Content groups, then only a select of 0 would be valid.%r%r", print->to, f_string_eol_s, f_string_eol_s);
+
+ fl_print_format(" The parameter %[%r%r%]", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_trim_s, set->notable);
+ fl_print_format(" will remove leading and trailing white spaces when selecting objects or when printing objects.%r%r", print->to, f_string_eol_s, f_string_eol_s);
+
+ fl_print_format(" When specifying both the %[%r%r%]", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_object_s, set->notable);
+ fl_print_format(" parameter and the %[%r%r%] parameter, the entire Object and Content are printed, including the formatting.%r", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_content_s, set->notable, f_string_eol_s);
+ fl_print_format(" Both the Object and Content printed are already escaped.%r", print->to, f_string_eol_s);
+
+ if (new_line == 0x2) {
+ fl_print_format(" Depending on the standard both the Object and Content are separated by either a New Line character '\\n' (U+000A) or a space.%r%r", print->to, f_string_eol_s, f_string_eol_s);
+ }
+ else if (new_line) {
+ fl_print_format(" Both the Object and Content are separated by a New Line character '\\n' (U+000A).%r%r", print->to, f_string_eol_s, f_string_eol_s);
+ }
+ else {
+ fl_print_format(" Both the Object and Content are separated by a space.%r%r", print->to, f_string_eol_s, f_string_eol_s);
+ }
+
+ fl_print_format(" The parameter %[%r%r%] accepts the following:%r", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_delimit_s, set->notable, f_string_eol_s);
+ fl_print_format(" - %[%r%]: Do not apply delimits.%r", print->to, set->notable, fss_read_delimit_mode_name_none_s, set->notable, f_string_eol_s);
+ fl_print_format(" - %[%r%]: (default) Apply all delimits.%r", print->to, set->notable, fss_read_delimit_mode_name_all_s, set->notable, f_string_eol_s);
+ fl_print_format(" - %[%r%]: Apply delimits for Objects.%r", print->to, set->notable, fss_read_delimit_mode_name_object_s, set->notable, f_string_eol_s); // @todo this isn't in embedded_list print, confirm/deny if this is intended or not.
+ fl_print_format(" - A number, 0 or greater: apply delimits for Content at the specified depth.%r", print->to, f_string_eol_s);
+ fl_print_format(" - A number, 0 or greater, followed by a %[%r%]: (such as '1+') apply delimits for Content at the specified depth and any greater depth (numerically).%r", print->to, set->notable, fss_read_delimit_mode_name_greater_s, set->notable, f_string_eol_s, f_string_eol_s);
+ fl_print_format(" - A number, 0 or lesser, followed by a %[%r%]: (such as '1-') apply delimits for Content at the specified depth and any lesser depth (numerically).%r%r", print->to, set->notable, fss_read_delimit_mode_name_lesser_s, set->notable, f_string_eol_s, f_string_eol_s);
+
+ fl_print_format(" The %[%r%r%] parameter may be specified multiple times to customize the delimit behavior.%r", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_delimit_s, set->notable, f_string_eol_s);
+
+ fl_print_format(" The %[%r%r%]", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_delimit_s, set->notable);
+ fl_print_format(" values %[%r%]", print->to, set->notable, fss_read_delimit_mode_name_none_s, set->notable);
+ fl_print_format(" and %[%r%],", print->to, set->notable, fss_read_delimit_mode_name_all_s, set->notable);
+ fl_print_format(" overrule all other delimit values.%r%r", print->to, f_string_eol_s, f_string_eol_s);
+
+ fl_print_format(" The parameters %[%r%r%]", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_columns_s, set->notable);
+ fl_print_format(" and %[%r%r%]", print->to, set->notable, f_console_symbol_long_normal_s, fss_read_long_select_s, set->notable);
+ fl_print_format(" refer to a Content column.%r", print->to, f_string_eol_s);
+ fl_print_format(" The word 'column' is being loosely defined to refer to a specific Content.%r", print->to, f_string_eol_s);
+ fl_print_format(" This is not to be confused with a depth.%r", print->to, f_string_eol_s);
}
-#endif // _di_fss_read_print_message_help_end_next_
+#endif // _di_fss_read_print_message_help_note_
#ifndef _di_fss_read_print_message_help_pipe_
void fss_read_print_message_help_pipe(fl_print_t * const print) {
if (!print) return;
+ // @todo there is a pipe input format but this documentation is for write rather than read, update this as appropriate or remove function entirely.
fl_print_format("%r The pipe uses the Backspace character '%[\\b%]' (%[U+0008%]) to designate the start of a Content.%r", print->to, f_string_eol_s, print->set->notable, print->set->notable, print->set->notable, print->set->notable, f_string_eol_s);
fl_print_format(" The pipe uses the Form Feed character '%[\\f%]' (%[U+000C%]) to designate the end of the last Content.%r", print->to, print->set->notable, print->set->notable, print->set->notable, print->set->notable, f_string_eol_s);
fl_print_format(" The pipe uses the Vertical Line character '%[\\v%]' (%[U+000B%]) is used to ignore a Content range (use this both before and after the range).%r", print->to, print->set->notable, print->set->notable, print->set->notable, print->set->notable, f_string_eol_s);
#endif // _di_fss_read_print_message_help_
/**
- * Print standard parts of the help regarding Object End, Content Next, and Content End usage.
+ * Print standard parts of the help regarding the notes header.
*
* This is expected to be called as part of the help printing and does not perform any locking.
*
* @param print
* The output structure to print to.
+ * @param number
+ * The FSS standard number, such as "0000".
+ * @param name
+ * The FSS standard name, such as "Basic".
*
* This does not alter print.custom.setting.state.status.
*/
-#ifndef _di_fss_read_print_message_help_end_next_
- extern void fss_read_print_message_help_end_next(fl_print_t * const print);
-#endif // _di_fss_read_print_message_help_end_next_
+#ifndef _di_fss_read_print_message_help_note_header_
+ extern void fss_read_print_message_help_note_header(fl_print_t * const print, const f_string_static_t number, const f_string_static_t name);
+#endif // _di_fss_read_print_message_help_note_header_
+
+/**
+ * Print standard parts of the help regarding notes.
+ *
+ * This is expected to be called as part of the help printing and does not perform any locking.
+ *
+ * @param print
+ * The output structure to print to.
+ *
+ * This does not alter print.custom.setting.state.status.
+ * @param new_line
+ * If 0x0 (F_false), then print help regarding space separating Object and Content.
+ * If 0x1 (F_true), then print help regarding new line separating Object and Content.
+ * If 0x2, then print both separation types (intended for use by the general fss_read program).
+ */
+#ifndef _di_fss_read_print_message_help_note_
+ extern void fss_read_print_message_help_note(fl_print_t * const print, const uint8_t new_line);
+#endif // _di_fss_read_print_message_help_note_
/**
* Print standard parts of the help regarding pipe usage.
const f_string_static_t fss_read_format_code_long_000e_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_long_000e_s, 0, FSS_READ_format_code_long_000e_s_length);
const f_string_static_t fss_read_format_code_human_000e_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_human_000e_s, 0, FSS_READ_format_code_human_000e_s_length);
const f_string_static_t fss_read_format_code_machine_000e_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_machine_000e_s, 0, FSS_READ_format_code_machine_000e_s_length);
+ const f_string_static_t fss_read_format_code_name_000e_s = macro_f_string_static_t_initialize_1(FSS_READ_format_code_name_000e_s, 0, FSS_READ_format_code_name_000e_s_length);
#endif // _di_fss_read_payload_s_
#ifdef __cplusplus
#define FSS_READ_format_code_long_000e_s "fss-000e"
#define FSS_READ_format_code_human_000e_s "payload"
#define FSS_READ_format_code_machine_000e_s "payload"
+ #define FSS_READ_format_code_name_000e_s "Payload"
#define FSS_READ_payload_s_length 7
#define FSS_READ_format_code_long_000e_s_length 8
#define FSS_READ_format_code_human_000e_s_length 7
#define FSS_READ_format_code_machine_000e_s_length 7
+ #define FSS_READ_format_code_name_000e_s_length 7
extern const f_string_static_t fss_read_payload_s;
extern const f_string_static_t fss_read_format_code_long_000e_s;
extern const f_string_static_t fss_read_format_code_human_000e_s;
extern const f_string_static_t fss_read_format_code_machine_000e_s;
+ extern const f_string_static_t fss_read_format_code_name_000e_s;
#endif // _di_fss_read_payload_s_
#ifdef __cplusplus
fss_read_print_message_help_pipe(print);
- fss_read_print_message_help_end_next(print);
+ fss_read_print_message_help_note(print, F_true);
+
+ // @todo use these stirngs in place of the format prints below.
+ //As an exceptional case, a --depth of 1 applies only to the explicit Object of 'header'.
+ //Content at this depth is processed as FSS-0001 Extended.
+ //
+ //The Content of the explicit Object of 'payload' will not contain any Content close pipe control codes when using --pipe.
fl_print_format("%r The FSS-000E (Payload) specification does not support quoted names, therefore the parameters '%[%r%r%]'", print->to, f_string_eol_s, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_single_s, print->set->notable);
fl_print_format(" and '%[%r%r%]' do nothing.%r%r", print->to, print->set->notable, f_console_symbol_long_normal_s, fss_read_long_double_s, print->set->notable, f_string_eol_s, f_string_eol_s);
[\fI\,OPTIONS\/\fR] [\fI\,FILENAMES\/\fR]
.SH DESCRIPTION
.PP
-This program will print the Content associated with the given Object and Content main based on the \fBFSS-0002 Basic List\fR standard.
+This program will print the data associated with the given Object and Content based on the \fBFSS-0002 Basic List\fR standard.
All numeric positions (indexes) start at 0 instead of 1.
For example, a file of 17 lines would range from 0 to 16.
[\fI\,OPTIONS\/\fR] [\fI\,FILENAMES\/\fR]
.SH DESCRIPTION
.PP
-This program will print the Content associated with the given Object and Content main based on the \fBFSS-0000 Basic\fR standard.
+This program will print the data associated with the given Object and Content based on the \fBFSS-0000 Basic\fR standard.
All numeric positions (indexes) start at 0 instead of 1.
For example, a file of 17 lines would range from 0 to 16.
[\fI\,OPTIONS\/\fR] [\fI\,FILENAMES\/\fR]
.SH DESCRIPTION
.PP
-This program will print the Content associated with the given Object and Content main based on the \fBFSS-0008 Embedded List\fR standard.
+This program will print the data associated with the given Object and Content based on the \fBFSS-0008 Embedded List\fR standard.
All numeric positions (indexes) start at 0 instead of 1.
For example, a file of 17 lines would range from 0 to 16.
[\fI\,OPTIONS\/\fR] [\fI\,FILENAMES\/\fR]
.SH DESCRIPTION
.PP
-This program will print the Content associated with the given Object and Content main based on the \fBFSS-0003 Extended List\fR standard.
+This program will print the data associated with the given Object and Content based on the \fBFSS-0003 Extended List\fR standard.
All numeric positions (indexes) start at 0 instead of 1.
For example, a file of 17 lines would range from 0 to 16.
[\fI\,OPTIONS\/\fR] [\fI\,FILENAMES\/\fR]
.SH DESCRIPTION
.PP
-This program will print the Content associated with the given Object and Content main based on the \fBFSS-0001 Extended\fR standard.
+This program will print the data associated with the given Object and Content based on the \fBFSS-0001 Extended\fR standard.
All numeric positions (indexes) start at 0 instead of 1.
For example, a file of 17 lines would range from 0 to 16.
[\fI\,OPTIONS\/\fR] [\fI\,FILENAMES\/\fR]
.SH DESCRIPTION
.PP
-This program will print the Content associated with the given Object and Content main based on the \fBFSS-000E Payload\fR standard.
+This program will print the data associated with the given Object and Content based on the \fBFSS-000E Payload\fR standard.
All numeric positions (indexes) start at 0 instead of 1.
For example, a file of 17 lines would range from 0 to 16.
const f_string_static_t fss_write_format_code_long_0000_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_long_0000_s, 0, FSS_WRITE_format_code_long_0000_s_length);
const f_string_static_t fss_write_format_code_human_0000_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_human_0000_s, 0, FSS_WRITE_format_code_human_0000_s_length);
const f_string_static_t fss_write_format_code_machine_0000_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_machine_0000_s, 0, FSS_WRITE_format_code_machine_0000_s_length);
+ const f_string_static_t fss_write_format_code_name_0000_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_name_0000_s, 0, FSS_WRITE_format_code_name_0000_s_length);
#endif // _di_fss_write_basic_s_
#ifdef __cplusplus
#define FSS_WRITE_format_code_long_0000_s "fss-0000"
#define FSS_WRITE_format_code_human_0000_s "basic"
#define FSS_WRITE_format_code_machine_0000_s "basic"
+ #define FSS_WRITE_format_code_name_0000_s "Basic"
#define FSS_WRITE_basic_standard_s_length 16
#define FSS_WRITE_format_code_long_0000_s_length 8
#define FSS_WRITE_format_code_human_0000_s_length 5
#define FSS_WRITE_format_code_machine_0000_s_length 5
+ #define FSS_WRITE_format_code_name_0000_s_length 5
extern const f_string_static_t fss_write_basic_standard_s;
extern const f_string_static_t fss_write_format_code_long_0000_s;
extern const f_string_static_t fss_write_format_code_human_0000_s;
extern const f_string_static_t fss_write_format_code_machine_0000_s;
+ extern const f_string_static_t fss_write_format_code_name_0000_s;
#endif // _di_fss_write_basic_s_
#ifdef __cplusplus
const f_string_static_t fss_write_format_code_long_0002_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_long_0002_s, 0, FSS_WRITE_format_code_long_0002_s_length);
const f_string_static_t fss_write_format_code_human_0002_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_human_0002_s, 0, FSS_WRITE_format_code_human_0002_s_length);
const f_string_static_t fss_write_format_code_machine_0002_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_machine_0002_s, 0, FSS_WRITE_format_code_machine_0002_s_length);
+ const f_string_static_t fss_write_format_code_name_0002_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_name_0002_s, 0, FSS_WRITE_format_code_name_0002_s_length);
#endif // _di_fss_write_basic_list_s_
#ifdef __cplusplus
#define FSS_WRITE_format_code_long_0002_s "fss-0002"
#define FSS_WRITE_format_code_human_0002_s "basic list"
#define FSS_WRITE_format_code_machine_0002_s "basic_list"
+ #define FSS_WRITE_format_code_name_0002_s "Basic List"
#define FSS_WRITE_basic_list_standard_s_length 21
#define FSS_WRITE_format_code_long_0002_s_length 8
#define FSS_WRITE_format_code_human_0002_s_length 10
#define FSS_WRITE_format_code_machine_0002_s_length 10
+ #define FSS_WRITE_format_code_name_0002_s_length 10
extern const f_string_static_t fss_write_basic_list_standard_s;
extern const f_string_static_t fss_write_format_code_long_0002_s;
extern const f_string_static_t fss_write_format_code_human_0002_s;
extern const f_string_static_t fss_write_format_code_machine_0002_s;
+ extern const f_string_static_t fss_write_format_code_name_0002_s;
#endif // _di_fss_write_basic_list_s_
#ifdef __cplusplus
const f_string_static_t fss_write_format_code_long_0008_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_long_0008_s, 0, FSS_WRITE_format_code_long_0008_s_length);
const f_string_static_t fss_write_format_code_human_0008_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_human_0008_s, 0, FSS_WRITE_format_code_human_0008_s_length);
const f_string_static_t fss_write_format_code_machine_0008_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_machine_0008_s, 0, FSS_WRITE_format_code_machine_0008_s_length);
+ const f_string_static_t fss_write_format_code_name_0008_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_name_0008_s, 0, FSS_WRITE_format_code_name_0008_s_length);
#endif // _di_fss_write_embedded_list_s_
#ifdef __cplusplus
#define FSS_WRITE_format_code_long_0008_s "fss-0008"
#define FSS_WRITE_format_code_human_0008_s "embedded list"
#define FSS_WRITE_format_code_machine_0008_s "embedded_list"
+ #define FSS_WRITE_format_code_name_0008_s "Embedded List"
#define FSS_WRITE_embedded_list_standard_s_length 24
#define FSS_WRITE_format_code_long_0008_s_length 8
#define FSS_WRITE_format_code_human_0008_s_length 13
#define FSS_WRITE_format_code_machine_0008_s_length 13
+ #define FSS_WRITE_format_code_name_0008_s_length 13
extern const f_string_static_t fss_write_embedded_list_standard_s;
extern const f_string_static_t fss_write_format_code_long_0008_s;
extern const f_string_static_t fss_write_format_code_human_0008_s;
extern const f_string_static_t fss_write_format_code_machine_0008_s;
+ extern const f_string_static_t fss_write_format_code_name_0008_s;
#endif // _di_fss_write_embedded_list_s_
#ifdef __cplusplus
const f_string_static_t fss_write_format_code_long_0001_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_long_0001_s, 0, FSS_WRITE_format_code_long_0001_s_length);
const f_string_static_t fss_write_format_code_human_0001_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_human_0001_s, 0, FSS_WRITE_format_code_human_0001_s_length);
const f_string_static_t fss_write_format_code_machine_0001_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_machine_0001_s, 0, FSS_WRITE_format_code_machine_0001_s_length);
+ const f_string_static_t fss_write_format_code_name_0001_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_name_0001_s, 0, FSS_WRITE_format_code_name_0001_s_length);
#endif // _di_fss_write_extended_s_
#ifdef __cplusplus
#define FSS_WRITE_format_code_long_0001_s "fss-0001"
#define FSS_WRITE_format_code_human_0001_s "extended"
#define FSS_WRITE_format_code_machine_0001_s "extended"
+ #define FSS_WRITE_format_code_name_0001_s "Extended"
#define FSS_WRITE_extended_standard_s_length 19
#define FSS_WRITE_format_code_long_0001_s_length 8
#define FSS_WRITE_format_code_human_0001_s_length 8
#define FSS_WRITE_format_code_machine_0001_s_length 8
+ #define FSS_WRITE_format_code_name_0001_s_length 8
extern const f_string_static_t fss_write_extended_standard_s;
extern const f_string_static_t fss_write_format_code_long_0001_s;
extern const f_string_static_t fss_write_format_code_human_0001_s;
extern const f_string_static_t fss_write_format_code_machine_0001_s;
+ extern const f_string_static_t fss_write_format_code_name_0001_s;
#endif // _di_fss_write_extended_s_
#ifdef __cplusplus
const f_string_static_t fss_write_format_code_long_0003_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_long_0003_s, 0, FSS_WRITE_format_code_long_0003_s_length);
const f_string_static_t fss_write_format_code_human_0003_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_human_0003_s, 0, FSS_WRITE_format_code_human_0003_s_length);
const f_string_static_t fss_write_format_code_machine_0003_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_machine_0003_s, 0, FSS_WRITE_format_code_machine_0003_s_length);
+ const f_string_static_t fss_write_format_code_name_0003_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_name_0003_s, 0, FSS_WRITE_format_code_name_0003_s_length);
#endif // _di_fss_write_extended_list_s_
#ifdef __cplusplus
#define FSS_WRITE_format_code_long_0003_s "fss-0003"
#define FSS_WRITE_format_code_human_0003_s "extended list"
#define FSS_WRITE_format_code_machine_0003_s "extended_list"
+ #define FSS_WRITE_format_code_name_0003_s "Extended List"
#define FSS_WRITE_extended_list_standard_s_length 24
#define FSS_WRITE_format_code_long_0003_s_length 8
#define FSS_WRITE_format_code_human_0003_s_length 13
#define FSS_WRITE_format_code_machine_0003_s_length 13
+ #define FSS_WRITE_format_code_name_0003_s_length 13
extern const f_string_static_t fss_write_extended_list_standard_s;
extern const f_string_static_t fss_write_format_code_long_0003_s;
extern const f_string_static_t fss_write_format_code_human_0003_s;
extern const f_string_static_t fss_write_format_code_machine_0003_s;
+ extern const f_string_static_t fss_write_format_code_name_0003_s;
#endif // _di_fss_write_extended_list_s_
#ifdef __cplusplus
const f_string_static_t fss_write_format_code_long_000e_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_long_000e_s, 0, FSS_WRITE_format_code_long_000e_s_length);
const f_string_static_t fss_write_format_code_human_000e_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_human_000e_s, 0, FSS_WRITE_format_code_human_000e_s_length);
const f_string_static_t fss_write_format_code_machine_000e_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_machine_000e_s, 0, FSS_WRITE_format_code_machine_000e_s_length);
+ const f_string_static_t fss_write_format_code_name_000e_s = macro_f_string_static_t_initialize_1(FSS_WRITE_format_code_name_000e_s, 0, FSS_WRITE_format_code_name_000e_s_length);
#endif // _di_fss_write_payload_s_
#ifdef __cplusplus
#define FSS_WRITE_format_code_long_000e_s "fss-000e"
#define FSS_WRITE_format_code_human_000e_s "payload"
#define FSS_WRITE_format_code_machine_000e_s "payload"
+ #define FSS_WRITE_format_code_name_000e_s "Payload"
#define FSS_WRITE_payload_s_length 7
#define FSS_WRITE_format_code_long_000e_s_length 8
#define FSS_WRITE_format_code_human_000e_s_length 7
#define FSS_WRITE_format_code_machine_000e_s_length 7
+ #define FSS_WRITE_format_code_name_000e_s_length 7
extern const f_string_static_t fss_write_payload_s;
extern const f_string_static_t fss_write_format_code_long_000e_s;
extern const f_string_static_t fss_write_format_code_human_000e_s;
extern const f_string_static_t fss_write_format_code_machine_000e_s;
+ extern const f_string_static_t fss_write_format_code_name_000e_s;
#endif // _di_fss_write_payload_s_
#ifdef __cplusplus