]> Kevux Git Server - fll/commitdiff
Bugfix: FSS Embedded Read has incomplete and incorrect code.
authorKevin Day <Kevin@kevux.org>
Sun, 25 Aug 2024 03:24:56 +0000 (22:24 -0500)
committerKevin Day <Kevin@kevux.org>
Sun, 25 Aug 2024 03:24:56 +0000 (22:24 -0500)
I never noticed that I had not implemented the `--columns` support for FSS Embedded Read.
The `--columns` is now properly supported and has runtime tests.

The `--select` is not always printing a number.
Make sure a number, even if it is `0`, is always printed.
The `--select` now also follows the more strict behavior as implemented in the 0.7 branch

Update the `--total` to match the more strict behavior as implemented in the 0.7 branch.

154 files changed:
level_3/fss_embedded_list_read/c/private-read.c
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-name--select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-name-a-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-name-a-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-name-a-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-name-a-select-100-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-name-a-select-2-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-name-a-select-5-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-name-a-select-6-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-name-hi-select-1-empty-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-name-hi-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-name-payload-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-name-мир-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-content-name-привет_has_space-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object-name--select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object-name-a-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object-name-a-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object-name-a-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object-name-a-select-100-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object-name-a-select-2-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object-name-a-select-5-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object-name-a-select-6-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object-name-hi-select-1-empty-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object-name-hi-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object-name-payload-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object-name-мир-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object-name-привет_has_space-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name--select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-a-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-a-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-a-select-0-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-a-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-a-select-100-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-a-select-2-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-a-select-5-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-a-select-6-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-a-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-hi-select-1-empty-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-hi-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-payload-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-мир-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-привет_has_space-select-0-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-привет_has_space-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-name-привет_has_space-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0000-basic-object_and_content-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-name--select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-name-a-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-name-a-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-name-a-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-name-a-select-100-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-name-a-select-2-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-name-a-select-5-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-name-a-select-6-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-name-hi-select-1-empty-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-name-hi-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-name-payload-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-name-мир-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-content-name-привет_has_space-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object-name--select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object-name-a-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object-name-a-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object-name-a-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object-name-a-select-100-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object-name-a-select-2-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object-name-a-select-5-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object-name-a-select-6-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object-name-hi-select-1-empty-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object-name-hi-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object-name-payload-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object-name-мир-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object-name-привет_has_space-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name--select-0-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name--select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name--total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-a-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-a-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-a-select-0-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-a-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-a-select-100-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-a-select-2-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-a-select-5-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-a-select-6-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-a-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-hi-select-0-empty-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-hi-select-0-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-hi-select-1-empty-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-hi-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-hi-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-payload-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-мир-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-name-привет_has_space-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0001-empty_name_list-object_and_content-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-name--select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-name-a-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-name-a-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-name-a-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-name-a-select-100-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-name-a-select-2-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-name-a-select-5-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-name-a-select-6-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-name-hi-select-1-empty-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-name-hi-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-name-payload-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-name-мир-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-content-name-привет_has_space-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object-name--select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object-name-a-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object-name-a-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object-name-a-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object-name-a-select-100-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object-name-a-select-2-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object-name-a-select-5-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object-name-a-select-6-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object-name-hi-select-1-empty-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object-name-hi-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object-name-payload-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object-name-мир-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object-name-привет_has_space-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name--select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-a-columns-empty.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-a-columns.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-a-select-0-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-a-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-a-select-100-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-a-select-2-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-a-select-5-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-a-select-6-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-a-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-hi-select-0-empty-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-hi-select-0-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-hi-select-1-empty-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-hi-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-hi-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-payload-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-мир-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-привет_has_space-select-0-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-привет_has_space-select-1-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-name-привет_has_space-total.expect
level_3/fss_embedded_list_read/tests/runtime/fss_0008/expect/test-0002-mixed-object_and_content-total.expect

index d44773566f0f9208f815d24b399763cb34b94e0d..69cfb68fc0edd6cebccbd4c28da82419ebfedda9 100644 (file)
@@ -310,7 +310,13 @@ extern "C" {
         }
 
         // This standard does not support multiple content groups.
-        if (select) return F_none;
+        if (select) {
+          if (data->main->parameters.array[fss_embedded_list_read_parameter_total_e].result == f_console_result_found_e) {
+            fll_print_format("%r%r", data->main->output.to.stream, f_string_ascii_0_s, f_string_eol_s);
+          }
+
+          return F_none;
+        }
       }
     }
 
@@ -498,9 +504,24 @@ extern "C" {
         f_array_length_t total = 0;
 
         for (i = 0; i < items->used; ++i) {
+
           if (skip[i]) continue;
 
           ++total;
+
+          if (data->main->parameters.array[fss_embedded_list_read_parameter_content_e].result == f_console_result_found_e) {
+            for (j = items->array[i].content.array[0].start; j <= items->array[i].content.array[0].stop; ++j) {
+
+              if (!data->buffer.string[j]) continue;
+
+              if (data->buffer.string[j] == f_string_eol_s.string[0]) {
+                ++total;
+              }
+            } // for
+
+            // When printing both Objects and Content, the closing brace must also be counted.
+            ++total;
+          }
         } // for
 
         fll_print_format("%ul%r", data->main->output.to.stream, total, f_string_eol_s);
@@ -508,6 +529,21 @@ extern "C" {
         return F_none;
       }
 
+      if (data->main->parameters.array[fss_embedded_list_read_parameter_columns_e].result == f_console_result_found_e) {
+        for (i = 0; i < items->used; ++i) {
+
+          if (skip[i]) continue;
+
+          fll_print_format("%r%r", data->main->output.to.stream, f_string_ascii_1_s, f_string_eol_s);
+
+          return F_none;
+        } // for
+
+        fll_print_format("%r%r", data->main->output.to.stream, f_string_ascii_0_s, f_string_eol_s);
+
+        return F_none;
+      }
+
       f_status_t (*print_object)(const f_string_static_t, const f_string_range_t, const f_array_lengths_t, FILE *) = &f_print_except_dynamic_partial;
 
       if (data->main->parameters.array[fss_embedded_list_read_parameter_trim_e].result == f_console_result_found_e) {
@@ -539,11 +575,7 @@ extern "C" {
     }
 
     // Process contents.
-    bool include_empty = 0;
-
-    if (data->main->parameters.array[fss_embedded_list_read_parameter_empty_e].result == f_console_result_found_e) {
-      include_empty = 1;
-    }
+    const bool include_empty = (data->main->parameters.array[fss_embedded_list_read_parameter_empty_e].result == f_console_result_found_e) ? 1 : 0;
 
     if (data->main->parameters.array[fss_embedded_list_read_parameter_total_e].result == f_console_result_found_e) {
       f_array_length_t total = 0;
@@ -585,6 +617,23 @@ extern "C" {
       return F_none;
     }
 
+    if (data->main->parameters.array[fss_embedded_list_read_parameter_columns_e].result == f_console_result_found_e) {
+      for (i = 0; i < items->used; ++i) {
+
+        if (skip[i]) continue;
+
+        if (items->array[i].content.used || data->main->parameters.array[fss_embedded_list_read_parameter_empty_e].result == f_console_result_found_e) {
+          fll_print_format("%r%r", data->main->output.to.stream, f_string_ascii_1_s, f_string_eol_s);
+
+          return F_none;
+        }
+      } // for
+
+      fll_print_format("%r%r", data->main->output.to.stream, f_string_ascii_0_s, f_string_eol_s);
+
+      return F_none;
+    }
+
     if (data->main->parameters.array[fss_embedded_list_read_parameter_line_e].result == f_console_result_additional_e) {
       f_array_length_t line_current = 0;
 
index 5c6833df139138214ac4838a051ef86b2b53e589..d00491fd7e5bb6fa28c517a0bb32b8b506539d4d 100644 (file)
@@ -1,11 +1 @@
-  b c
-  e f
-  g h
-  мир
-  z
-  quoted, "yep".
-  \"and so does this" "have space"
-  But still a valid list.
-  Check this.
-  ...
-  a second "a".
+1
index 5c6833df139138214ac4838a051ef86b2b53e589..d00491fd7e5bb6fa28c517a0bb32b8b506539d4d 100644 (file)
@@ -1,11 +1 @@
-  b c
-  e f
-  g h
-  мир
-  z
-  quoted, "yep".
-  \"and so does this" "have space"
-  But still a valid list.
-  Check this.
-  ...
-  a second "a".
+1
index 65b0a48c6425f622a732200ffd9e43a94511843a..d00491fd7e5bb6fa28c517a0bb32b8b506539d4d 100644 (file)
@@ -1,13 +1 @@
-empty
-d
-a
-привет
-y 
-"мир"
-привет has space
-"This is quoted"
-AlsoGood
-hi     
-привет has space   
-a
-also_empty
+1
index a3d6a83895d0106cc7e163b51eb098074a41f8c7..d00491fd7e5bb6fa28c517a0bb32b8b506539d4d 100644 (file)
@@ -1,37 +1 @@
-empty{
-}
-d{
-  b c
-}
-a{
-  e f
-  g h
-}
-привет{
-  мир
-}
-y {
-  z
-}
-"мир"{
-  quoted, "yep".
-}
-привет has space{
-  \"and so does this" "have space"
-}
-"This is quoted"{
-  But still a valid list.
-}
-AlsoGood{
-}
-hi     {
-  Check this.
-}
-привет has space   {
-  ...
-}
-a{
-  a second "a".
-}
-also_empty{
-}
+1
index a3d6a83895d0106cc7e163b51eb098074a41f8c7..d00491fd7e5bb6fa28c517a0bb32b8b506539d4d 100644 (file)
@@ -1,37 +1 @@
-empty{
-}
-d{
-  b c
-}
-a{
-  e f
-  g h
-}
-привет{
-  мир
-}
-y {
-  z
-}
-"мир"{
-  quoted, "yep".
-}
-привет has space{
-  \"and so does this" "have space"
-}
-"This is quoted"{
-  But still a valid list.
-}
-AlsoGood{
-}
-hi     {
-  Check this.
-}
-привет has space   {
-  ...
-}
-a{
-  a second "a".
-}
-also_empty{
-}
+1
index bbd7eb3efa3deedb03b6d974549148f9acdf22e7..d00491fd7e5bb6fa28c517a0bb32b8b506539d4d 100644 (file)
@@ -1,20 +1 @@
-a b привет
-c d
- # not a comment
- \\# nor is this.
-\# even this is not.
-привет мир a 
-  
- # a valid list:
-   with content.
-  another "A" list.
-  quoted, "yep".
-  # has a comment
-  But this is not a comment.
-  not a list\:
-  a b привет
-  c d
-  привет мир a 
-
-  yep.
-  fin  
+1
index bbd7eb3efa3deedb03b6d974549148f9acdf22e7..d00491fd7e5bb6fa28c517a0bb32b8b506539d4d 100644 (file)
@@ -1,20 +1 @@
-a b привет
-c d
- # not a comment
- \\# nor is this.
-\# even this is not.
-привет мир a 
-  
- # a valid list:
-   with content.
-  another "A" list.
-  quoted, "yep".
-  # has a comment
-  But this is not a comment.
-  not a list\:
-  a b привет
-  c d
-  привет мир a 
-
-  yep.
-  fin  
+1
index 0386be0c7a2395d1296be5fe21f694b1c44b3c5b..d00491fd7e5bb6fa28c517a0bb32b8b506539d4d 100644 (file)
@@ -1,10 +1 @@
-a b привет
-c d
- # not a comment
- \\# nor is this.
-\# even this is not.
-привет мир a 
-  
- # a valid list:
-   with content.
-  another "A" list.
+1
index 0386be0c7a2395d1296be5fe21f694b1c44b3c5b..d00491fd7e5bb6fa28c517a0bb32b8b506539d4d 100644 (file)
@@ -1,10 +1 @@
-a b привет
-c d
- # not a comment
- \\# nor is this.
-\# even this is not.
-привет мир a 
-  
- # a valid list:
-   with content.
-  another "A" list.
+1
index 9d794f30ef56f8278a9de6ebbc5a4dd9ddff701b..d00491fd7e5bb6fa28c517a0bb32b8b506539d4d 100644 (file)
@@ -1,34 +1 @@
-a{
-a b привет
-c d
- # not a comment
- \\# nor is this.
-\# even this is not.
-привет мир a 
-  
- # a valid list:
-   with content.
-}
-a{
-  another "A" list.
-}
-"мир"{
-  quoted, "yep".
-}
-привет has space{
-  # has a comment
-  But this is not a comment.
-}
-empty{
-}
-hi{
-  not a list\:
-  a b привет
-  c d
-  привет мир a 
-
-}
-has spaces {
-  yep.
-  fin  
-}
+1
index 9d794f30ef56f8278a9de6ebbc5a4dd9ddff701b..d00491fd7e5bb6fa28c517a0bb32b8b506539d4d 100644 (file)
@@ -1,34 +1 @@
-a{
-a b привет
-c d
- # not a comment
- \\# nor is this.
-\# even this is not.
-привет мир a 
-  
- # a valid list:
-   with content.
-}
-a{
-  another "A" list.
-}
-"мир"{
-  quoted, "yep".
-}
-привет has space{
-  # has a comment
-  But this is not a comment.
-}
-empty{
-}
-hi{
-  not a list\:
-  a b привет
-  c d
-  привет мир a 
-
-}
-has spaces {
-  yep.
-  fin  
-}
+1
index e5f0c478ec437494aa4e9c8fdb4cdee05515b1b3..d00491fd7e5bb6fa28c517a0bb32b8b506539d4d 100644 (file)
@@ -1,14 +1 @@
-a{
-a b привет
-c d
- # not a comment
- \\# nor is this.
-\# even this is not.
-привет мир a 
-  
- # a valid list:
-   with content.
-}
-a{
-  another "A" list.
-}
+1
index e5f0c478ec437494aa4e9c8fdb4cdee05515b1b3..d00491fd7e5bb6fa28c517a0bb32b8b506539d4d 100644 (file)
@@ -1,14 +1 @@
-a{
-a b привет
-c d
- # not a comment
- \\# nor is this.
-\# even this is not.
-привет мир a 
-  
- # a valid list:
-   with content.
-}
-a{
-  another "A" list.
-}
+1