From: Kevin Day Date: Sat, 7 Sep 2024 00:08:42 +0000 (-0500) Subject: Bugfix: Get the FSS Embedded List Read working as expected based on runtime tests. X-Git-Tag: 0.7.0~69 X-Git-Url: https://git.kevux.org/?a=commitdiff_plain;h=92b24db32d05efd3ca692904c451b7d7a32e7e4d;p=fll Bugfix: Get the FSS Embedded List Read working as expected based on runtime tests. A good portion of clean ups and design changes to address special cases or anything overlooked. The runtime tests now pass as expected. This does not address the currently incomplete depth processing of the FSS Embedded List Read. There are still some situations that need to be fixed. --- diff --git a/level_1/fl_fss/c/fss/embedded_list.c b/level_1/fl_fss/c/fss/embedded_list.c index 41c324a0c..3e6193649 100644 --- a/level_1/fl_fss/c/fss/embedded_list.c +++ b/level_1/fl_fss/c/fss/embedded_list.c @@ -61,11 +61,10 @@ extern "C" { f_number_unsigned_t slash_first = 0; f_number_unsigned_t slash_last = 0; f_number_unsigned_t before_list_open = position_previous; + f_number_unsigned_t close_location = 0; - // 0x0 = false, 0x1 = true, 0x2 = false, but there is a delimited comment, comment_delimit is set. - uint8_t graph_first = 0x1; - uint8_t is_open = F_false; - uint8_t is_object = F_false; + // 0x0 = is false for all, 0x1 = is first graph, 0x2 = is delimited comment, 0x4 = is open, 0x8 = is object, 0x10 = is delimited close. + uint8_t is_state = 0x1; // Initialize depth 1 start position. // Positions_start.used is used as a max depth (such that cache->positions->used == max depth + 1). @@ -79,68 +78,30 @@ extern "C" { if (state->interrupt) { state->interrupt((void *) state, 0); - - if (F_status_set_fine(state->status) == F_interrupt) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_set_fine(state->status) == F_interrupt) break; } if (buffer.string[range->start] == f_fss_eol_s.string[0]) { - if (graph_first == 0x2) { + if (is_state & 0x2) { state->status = f_memory_array_increase(state->step_small, sizeof(f_number_unsigned_t), (void **) &delimits->array, &delimits->used, &delimits->size); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; delimits->array[delimits->used++] = comment_delimit; } - newline_last = range->start; - position_previous = range->start++; - graph_first = 0x1; + newline_last = position_previous = range->start++; line_start = range->start; - - if (range->start >= buffer.used || range->start > range->stop) { - delimits->used = delimits_used; - comments->used = comments_used; - - if (depth) { - state->status = (range->start >= buffer.used) ? F_end_not_nest_eos : F_end_not_nest_stop; - } - else { - state->status = (range->start >= buffer.used) ? F_data_not_eos : F_data_not_stop; - } - - return; - } - - continue; + is_state = 0x1; } - - if (buffer.string[range->start] == f_fss_slash_s.string[0]) { - slash_first = range->start; - slash_last = range->start; + else if (buffer.string[range->start] == f_fss_slash_s.string[0] && (is_state & 0x1)) { + slash_first = slash_last = position_previous = range->start++; cache->slashes->array[depth] = 1; - position_previous = range->start++; for (; range->start <= range->stop && range->start < buffer.used && (buffer.string[range->start] == f_fss_placeholder_s.string[0] || buffer.string[range->start] == f_fss_slash_s.string[0]); ++range->start) { if (state->interrupt) { state->interrupt((void *) state, 0); - - if (F_status_set_fine(state->status) == F_interrupt) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_set_fine(state->status) == F_interrupt) break; } position_previous = range->start; @@ -151,19 +112,7 @@ extern "C" { } } // for - if (range->start >= buffer.used || range->start > range->stop) { - delimits->used = delimits_used; - comments->used = comments_used; - - if (depth) { - state->status = (range->start >= buffer.used) ? F_end_not_nest_eos : F_end_not_nest_stop; - } - else { - state->status = (range->start >= buffer.used) ? F_data_not_eos : F_data_not_stop; - } - - return; - } + if (F_status_is_error(state->status) || state->status == F_interrupt || range->start >= buffer.used || range->start > range->stop) break; // All slashes for an open are delimited (because it could represent a slash in the object name). // For example 'object {' = valid open, name 'object', 'object \{' represents 'object {', 'object \\{' = valid open, name 'object \', 'object \\\{' represents 'object \{', etc.. @@ -171,31 +120,23 @@ extern "C" { // For example '}' = valid close, '\}' represents '}', '\\}' represents '\}', '\\\}' represents '\\}', '\\\\}' represents '\\\}', and so on.. // When slash is odd and a (delimited) valid open/close is found, then save delimited positions and continue. if (buffer.string[range->start] == f_fss_eol_s.string[0]) { - if (graph_first == 0x2) { + if (is_state & 0x2) { state->status = f_memory_array_increase(state->step_small, sizeof(f_number_unsigned_t), (void **) &delimits->array, &delimits->used, &delimits->size); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; delimits->array[delimits->used++] = comment_delimit; } - newline_last = range->start; - position_previous = range->start++; + newline_last = position_previous = range->start++; line_start = range->start; - graph_first = 0x1; + is_state = 0x1; } else if (buffer.string[range->start] == f_fss_embedded_list_open_s.string[0] || buffer.string[range->start] == f_fss_embedded_list_close_s.string[0]) { before_list_open = position_previous; - is_open = F_false; - graph_first = 0x0; + is_state &= ~0x15; if (buffer.string[range->start] == f_fss_embedded_list_open_s.string[0]) { - is_open = F_true; + is_state |= 0x4; } position_previous = range->start++; @@ -204,29 +145,10 @@ extern "C" { if (state->interrupt) { state->interrupt((void *) state, 0); - - if (F_status_set_fine(state->status) == F_interrupt) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_set_fine(state->status) == F_interrupt) break; } - if (buffer.string[range->start] == f_fss_eol_s.string[0]) { - if (graph_first == 0x2) { - state->status = f_memory_array_increase(state->step_small, sizeof(f_number_unsigned_t), (void **) &delimits->array, &delimits->used, &delimits->size); - if (F_status_is_error(state->status)) break; - - delimits->array[delimits->used++] = comment_delimit; - } - - newline_last = range->start; - line_start = range->start + 1; - graph_first = 0x1; - - break; - } + if (buffer.string[range->start] == f_fss_eol_s.string[0]) break; if (buffer.string[range->start] != f_fss_placeholder_s.string[0]) { if (f_fss_is_space(buffer, *range, state) == F_false) break; @@ -238,47 +160,25 @@ extern "C" { if (F_status_is_error(state->status)) break; } // while - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status) || state->status == F_interrupt || range->start >= buffer.used || range->start > range->stop) break; - if (F_status_is_error(state->status) || range->start >= buffer.used || range->start > range->stop) { - delimits->used = delimits_used; - comments->used = comments_used; + // This is a valid object open/close that has been delimited, save the slash delimit positions. + if (buffer.string[range->start] == f_fss_eol_s.string[0]) { + newline_last = range->start; + line_start = newline_last + 1; - if (F_status_is_error_not(state->status)) { - if (depth) { - state->status = (range->start >= buffer.used) ? F_end_not_nest_eos : F_end_not_nest_stop; + if (is_state & 0x4) { + if (cache->slashes->array[depth] % 2 == 0) { + is_state |= 0x8; } else { - state->status = (range->start >= buffer.used) ? F_data_not_eos : F_data_not_stop; + is_state &= ~0x8; } - } - return; - } - - // This is a valid object open/close that has been delimited, save the slash delimit positions. - if (buffer.string[range->start] == f_fss_eol_s.string[0]) { - newline_last = range->start; - line_start = range->start + 1; - graph_first = 0x1; - - if (is_open) { - is_object = cache->slashes->array[depth] % 2 == 0 ? F_true : F_false; range->start = slash_first; state->status = f_memory_array_increase_by((cache->slashes->array[depth] / 2) + 1, sizeof(f_number_unsigned_t), (void **) &delimits->array, &delimits->used, &delimits->size); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; // Apply slash delimits, only slashes and placeholders should be present. while (cache->slashes->array[depth]) { @@ -296,7 +196,7 @@ extern "C" { } // while // When slashes are even, the object is valid and needs to be processed. - if (is_object) { + if (is_state & 0x8) { if (++depth >= cache->objects->size) { state->status = f_memory_array_resize(depth + 2, sizeof(f_range_t), (void **) &cache->objects->array, &cache->objects->used, &cache->objects->size); } @@ -313,12 +213,7 @@ extern "C" { } } - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; cache->objects->array[depth].start = line_start; cache->objects->array[depth].stop = before_list_open; @@ -339,54 +234,42 @@ extern "C" { } } else { - state->status = f_memory_array_increase(state->step_small, sizeof(f_number_unsigned_t), (void **) &delimits->array, &delimits->used, &delimits->size); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; + is_state |= 0x10; + } - return; - } + if (is_state & 0x12) { + state->status = f_memory_array_increase(state->step_small, sizeof(f_number_unsigned_t), (void **) &delimits->array, &delimits->used, &delimits->size); + if (F_status_is_error(state->status)) break; delimits->array[delimits->used++] = slash_last; } - range->start = newline_last; + range->start = line_start; + is_state = 0x1; } } - else if (graph_first == 0x1 && buffer.string[range->start] == f_fss_comment_s.string[0]) { - graph_first = 0x2; + else if (buffer.string[range->start] == f_fss_comment_s.string[0] && (is_state & 0x1)) { + is_state |= 0x2; + is_state &= ~0x1; comment_delimit = slash_first; } else { - graph_first = 0x0; + is_state &= ~0x1; } } else if (buffer.string[range->start] == f_fss_embedded_list_open_s.string[0]) { - graph_first = 0x0; + is_state &= ~0x1; before_list_open = position_previous; position_previous = range->start; state->status = f_utf_buffer_increment(buffer, range, 1); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; while (range->start <= range->stop && range->start < buffer.used) { if (state->interrupt) { state->interrupt((void *) state, 0); - - if (F_status_set_fine(state->status) == F_interrupt) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_set_fine(state->status) == F_interrupt) break; } if (buffer.string[range->start] == f_fss_eol_s.string[0]) break; @@ -401,21 +284,7 @@ extern "C" { if (F_status_is_error(state->status)) break; } // while - if (F_status_is_error(state->status) || range->start >= buffer.used || range->start > range->stop) { - delimits->used = delimits_used; - comments->used = comments_used; - - if (F_status_is_error_not(state->status)) { - if (depth) { - state->status = (range->start >= buffer.used) ? F_end_not_nest_eos : F_end_not_nest_stop; - } - else { - state->status = (range->start >= buffer.used) ? F_data_not_eos : F_data_not_stop; - } - } - - return; - } + if (F_status_is_error(state->status) || state->status == F_interrupt || range->start >= buffer.used || range->start > range->stop) break; if (buffer.string[range->start] == f_fss_eol_s.string[0]) { if (++depth >= cache->objects->size) { @@ -434,12 +303,7 @@ extern "C" { } } - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; cache->objects->array[depth].start = line_start; cache->objects->array[depth].stop = before_list_open; @@ -458,112 +322,43 @@ extern "C" { cache->slashes->used = depth + 1; } - if (graph_first == 0x2) { + if (is_state & 0x2) { state->status = f_memory_array_increase(state->step_small, sizeof(f_number_unsigned_t), (void **) &delimits->array, &delimits->used, &delimits->size); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; delimits->array[delimits->used++] = comment_delimit; } newline_last = range->start; - line_start = range->start + 1; - graph_first = 0x1; + line_start = newline_last + 1; + is_state = 0x1; } else { // No valid object close found, seek until EOL. f_fss_seek_to_eol(buffer, range, state); + if (F_status_is_error(state->status)) break; - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } - - if (graph_first == 0x2) { + if (is_state & 0x2) { state->status = f_memory_array_increase(state->step_small, sizeof(f_number_unsigned_t), (void **) &delimits->array, &delimits->used, &delimits->size); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; delimits->array[delimits->used++] = comment_delimit; } newline_last = range->start; - line_start = range->start + 1; - graph_first = 0x1; - - while (range->start <= range->stop && range->start < buffer.used) { - - if (state->interrupt) { - state->interrupt((void *) state, 0); - - if (F_status_set_fine(state->status) == F_interrupt) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } - } - - if (buffer.string[range->start] == f_fss_eol_s.string[0]) { - newline_last = range->start; - line_start = range->start + 1; - graph_first = 0x1; - - break; - } - - position_previous = range->start; - - state->status = f_utf_buffer_increment(buffer, range, 1); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } - } // while - - if (range->start >= buffer.used || range->start > range->stop) { - delimits->used = delimits_used; - comments->used = comments_used; - - if (depth) { - state->status = (range->start >= buffer.used) ? F_end_not_nest_eos : F_end_not_nest_stop; - } - else { - state->status = (range->start >= buffer.used) ? F_data_not_eos : F_data_not_stop; - } - - return; - } + line_start = newline_last + 1; + is_state = 0x1; } } - else if (buffer.string[range->start] == f_fss_embedded_list_close_s.string[0]) { + else if (buffer.string[range->start] == f_fss_embedded_list_close_s.string[0] && (is_state & 0x1)) { + close_location = range->start; + while (range->start <= range->stop && range->start < buffer.used) { if (state->interrupt) { state->interrupt((void *) state, 0); - - if (F_status_set_fine(state->status) == F_interrupt) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_set_fine(state->status) == F_interrupt) break; } position_previous = range->start; @@ -572,25 +367,11 @@ extern "C" { if (F_status_is_error(state->status) || buffer.string[range->start] == f_fss_eol_s.string[0]) break; if (buffer.string[range->start] != f_fss_placeholder_s.string[0]) { - if (f_fss_is_space(buffer, *range, state) == F_false) break; + if (f_fss_is_space(buffer, *range, state) == F_false || F_status_is_error(state->status)) break; } } // while - if (F_status_is_error(state->status) || range->start >= buffer.used || range->start > range->stop) { - delimits->used = delimits_used; - comments->used = comments_used; - - if (F_status_is_error_not(state->status)) { - if (depth) { - state->status = (range->start >= buffer.used) ? F_end_not_nest_eos : F_end_not_nest_stop; - } - else { - state->status = (range->start >= buffer.used) ? F_data_not_eos : F_data_not_stop; - } - } - - return; - } + if (F_status_is_error(state->status) || state->status == F_interrupt || range->start >= buffer.used || range->start > range->stop) break; if (buffer.string[range->start] == f_fss_eol_s.string[0]) { if (depth >= found->used) { @@ -611,12 +392,7 @@ extern "C" { } } - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; if (depth) { found->depth[depth].array[position].parent = found->depth[depth - 1].used; @@ -646,25 +422,19 @@ extern "C" { found->used = depth + 1; } - if (graph_first == 0x2) { + if (is_state & 0x2) { state->status = f_memory_array_increase(state->step_small, sizeof(f_number_unsigned_t), (void **) &delimits->array, &delimits->used, &delimits->size); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; delimits->array[delimits->used++] = comment_delimit; } found->depth[depth].array[position].close.start = line_start; - found->depth[depth].array[position].close.stop = range->start - 1; + found->depth[depth].array[position].close.stop = close_location; newline_last = range->start; - line_start = range->start + 1; - graph_first = 0x1; + line_start = newline_last + 1; + is_state = 0x1; if (!depth) { state->status = f_utf_buffer_increment(buffer, range, 1); @@ -697,32 +467,20 @@ extern "C" { if (state->interrupt) { state->interrupt((void *) state, 0); - - if (F_status_set_fine(state->status) == F_interrupt) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_set_fine(state->status) == F_interrupt) break; } if (buffer.string[range->start] == f_fss_eol_s.string[0]) { - if (graph_first == 0x2) { + if (is_state & 0x2) { state->status = f_memory_array_increase(state->step_small, sizeof(f_number_unsigned_t), (void **) &delimits->array, &delimits->used, &delimits->size); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; delimits->array[delimits->used++] = comment_delimit; } newline_last = range->start; - line_start = range->start + 1; - graph_first = 0x1; + line_start = newline_last + 1; + is_state = 0x1; break; } @@ -730,86 +488,48 @@ extern "C" { position_previous = range->start; state->status = f_utf_buffer_increment(buffer, range, 1); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; } // while - if (range->start >= buffer.used || range->start > range->stop) { - delimits->used = delimits_used; - comments->used = comments_used; - - if (depth) { - state->status = (range->start >= buffer.used) ? F_end_not_nest_eos : F_end_not_nest_stop; - } - else { - state->status = (range->start >= buffer.used) ? F_data_not_eos : F_data_not_stop; - } - - return; - } + if (F_status_is_error(state->status) || state->status == F_interrupt) break; } } - else if (buffer.string[range->start] == f_fss_comment_s.string[0] && (graph_first == 0x1 || graph_first == 0x2)) { + else if (buffer.string[range->start] == f_fss_comment_s.string[0] && (is_state & 0x1)) { // The newline_last is initialized to the range->start, which may not actually be a new line. position = (buffer.string[newline_last] == f_string_eol_s.string[0]) ? newline_last + 1 : newline_last; f_fss_seek_to_eol(buffer, range, state); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; if (range->start > range->stop || range->start >= buffer.used) { --range->start; } else { - if (graph_first == 0x2) { + if (is_state & 0x2) { state->status = f_memory_array_increase(state->step_small, sizeof(f_number_unsigned_t), (void **) &delimits->array, &delimits->used, &delimits->size); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; delimits->array[delimits->used++] = comment_delimit; } newline_last = range->start; - graph_first = 0x1; + line_start = newline_last + 1; + is_state = 0x1; } state->status = f_memory_array_increase(state->step_small, sizeof(f_range_t), (void **) &comments->array, &comments->used, &comments->size); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } + if (F_status_is_error(state->status)) break; comments->array[comments->used].start = position; comments->array[comments->used++].stop = range->start++; - line_start = range->start; - - continue; } else if (buffer.string[range->start] != f_fss_eol_s.string[0]) { position_previous = range->start; - if (graph_first == 0x1) { + if (is_state & 0x1) { if (f_fss_is_space(buffer, *range, state) == F_false) { - graph_first = 0x0; + is_state &= ~0x1; } } @@ -817,38 +537,20 @@ extern "C" { state->status = f_utf_buffer_increment(buffer, range, 1); } - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; - } - - if (range->start >= buffer.used || range->start > range->stop) break; - - continue; - } - - position_previous = range->start; - - state->status = f_utf_buffer_increment(buffer, range, 1); - - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - comments->used = comments_used; - - return; + if (F_status_is_error(state->status)) break; } } // while delimits->used = delimits_used; comments->used = comments_used; - if (range->start > range->stop) { - state->status = F_status_set_error(depth ? F_end_not_nest_stop : F_end_not_stop); - } - else { - state->status = F_status_set_error(depth ? F_end_not_nest_eos : F_end_not_eos); + if (F_status_is_error_not(state->status) && state->status != F_interrupt) { + if (range->start > range->stop) { + state->status = F_status_set_error(depth ? F_end_not_nest_stop : F_end_not_stop); + } + else { + state->status = F_status_set_error(depth ? F_end_not_nest_eos : F_end_not_eos); + } } } #endif // _di_fl_fss_embedded_list_content_read_ diff --git a/level_1/fl_fss/c/private-fss-list.c b/level_1/fl_fss/c/private-fss-list.c index e66f3d5fe..39c8cf912 100644 --- a/level_1/fl_fss/c/private-fss-list.c +++ b/level_1/fl_fss/c/private-fss-list.c @@ -300,21 +300,20 @@ extern "C" { continue; } - else { - if (f_fss_is_space(buffer, *range, state) == F_false) { - if (F_status_is_error(state->status)) { - delimits->used = delimits_used; - return; - } + if (f_fss_is_space(buffer, *range, state) == F_false) { + if (F_status_is_error(state->status)) { + delimits->used = delimits_used; - if (graph_first) { - graph_first = F_false; - start = range->start; - } + return; + } - stop = range->start; + if (graph_first) { + graph_first = F_false; + start = range->start; } + + stop = range->start; } state->status = f_utf_buffer_increment(buffer, range, 1); diff --git a/level_3/fss_read/c/embedded_list/main.c b/level_3/fss_read/c/embedded_list/main.c index 2a051924a..aa8dabe72 100644 --- a/level_3/fss_read/c/embedded_list/main.c +++ b/level_3/fss_read/c/embedded_list/main.c @@ -17,7 +17,7 @@ int main(const int argc, const f_string_t *argv, const f_string_t *envp) { data.program.output.custom = (void *) &data; data.program.warning.custom = (void *) &data; - data.setting.feature |= fss_read_feature_flag_object_as_line_d | fss_read_feature_flag_content_has_close_d; + data.setting.feature |= fss_read_feature_flag_object_as_line_d | fss_read_feature_flag_content_has_close_d | fss_read_feature_flag_content_multiple_d; data.setting.feature |= fss_read_feature_flag_object_align_d | fss_read_feature_flag_object_trim_d | fss_read_feature_flag_object_trim_expand_d; data.setting.feature |= fss_read_feature_flag_depth_multiple_d; diff --git a/level_3/fss_read/c/embedded_list/process_normal.c b/level_3/fss_read/c/embedded_list/process_normal.c index 1e2a16ee4..aec34890f 100644 --- a/level_3/fss_read/c/embedded_list/process_normal.c +++ b/level_3/fss_read/c/embedded_list/process_normal.c @@ -147,7 +147,7 @@ extern "C" { //} // for // @todo determine depth and dynamically construct the objects and therefore content based on any of --at, --depth, and --name. - return; + //return; } main->setting.state.status = f_memory_array_resize(main->setting.nest.depth[depth].used, sizeof(f_range_t), (void **) &main->setting.objects.array, &main->setting.objects.used, &main->setting.objects.size); diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-content-select-0.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-content-select-0.expect index 052213819..56ad473b6 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-content-select-0.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-content-select-0.expect @@ -6,7 +6,7 @@ inside { } with content. - \### Nested valid Object { + ### Nested valid Object { with nested content. } and outside. diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-content-trim.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-content-trim.expect index 052213819..56ad473b6 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-content-trim.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-content-trim.expect @@ -6,7 +6,7 @@ inside { } with content. - \### Nested valid Object { + ### Nested valid Object { with nested content. } and outside. diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-content.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-content.expect index 052213819..56ad473b6 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-content.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-content.expect @@ -6,7 +6,7 @@ inside { } with content. - \### Nested valid Object { + ### Nested valid Object { with nested content. } and outside. diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-at-0.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-at-0.expect index a8c8f7c69..ef39d57b6 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-at-0.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-at-0.expect @@ -1,7 +1,7 @@ a{ - + stuff This has Several lines -} + } diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-at-1.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-at-1.expect index 771157200..9549598e9 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-at-1.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-at-1.expect @@ -1,4 +1,4 @@ привет has space{ - inside { + inside { } -} + } diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-line-6.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-line-6.expect index 5c34318c2..a8317d68a 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-line-6.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-line-6.expect @@ -1 +1 @@ -} + } diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name--select-0.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name--select-0.expect index e8e0365d7..4dcdeaf6c 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name--select-0.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name--select-0.expect @@ -1,3 +1,3 @@ { - Has no Object name (only white space) and is oddly spaced. -} +Has no Object name (only white space) and is oddly spaced. + } diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-.expect index e8e0365d7..4dcdeaf6c 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-.expect @@ -1,3 +1,3 @@ { - Has no Object name (only white space) and is oddly spaced. -} +Has no Object name (only white space) and is oddly spaced. + } diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a-original-empty.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a-original-empty.expect index d9bd64799..01aa0ba54 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a-original-empty.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a-original-empty.expect @@ -1,7 +1,7 @@ a { - + stuff This has Several lines -} + } diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a-original.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a-original.expect index d9bd64799..01aa0ba54 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a-original.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a-original.expect @@ -1,7 +1,7 @@ a { - + stuff This has Several lines -} + } diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a-select-0.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a-select-0.expect index a8c8f7c69..ef39d57b6 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a-select-0.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a-select-0.expect @@ -1,7 +1,7 @@ a{ - + stuff This has Several lines -} + } diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a.expect index a8c8f7c69..ef39d57b6 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-a.expect @@ -1,7 +1,7 @@ a{ - + stuff This has Several lines -} + } diff --git "a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-\320\277\321\200\320\270\320\262\320\265\321\202_has_space-select-0.expect" "b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-\320\277\321\200\320\270\320\262\320\265\321\202_has_space-select-0.expect" index 771157200..9549598e9 100644 --- "a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-\320\277\321\200\320\270\320\262\320\265\321\202_has_space-select-0.expect" +++ "b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-name-\320\277\321\200\320\270\320\262\320\265\321\202_has_space-select-0.expect" @@ -1,4 +1,4 @@ привет has space{ - inside { + inside { } -} + } diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-original.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-original.expect index f28125f76..2acd8272b 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-original.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-original.expect @@ -1,26 +1,26 @@ a { - + stuff This has Several lines -} + } привет has space { - inside { + inside { } -} + } \# Valid Object { - with content. -} + with content. + } \# Valid Object { - \### Nested valid Object { + \### Nested valid Object { with nested content. } and outside. -} -{ - Has no Object name (only white space) and is oddly spaced. -} + } + { +Has no Object name (only white space) and is oddly spaced. + } мир { мирмирмир } diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-select-0-original.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-select-0-original.expect index 04fbb7452..27dbce4cc 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-select-0-original.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-select-0-original.expect @@ -25,10 +25,8 @@ Has no Object name (only white space) and is oddly spaced. мирмирмир } hi { - # Comment inside. } nested { empty { } - # Comment after. } diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-select-0.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-select-0.expect index 546e287e0..c2e762728 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-select-0.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-select-0.expect @@ -1,26 +1,26 @@ a{ - + stuff This has Several lines -} + } привет has space{ - inside { + inside { } -} + } # Valid Object{ - with content. -} + with content. + } # Valid Object{ - \### Nested valid Object { + ### Nested valid Object { with nested content. } and outside. -} + } { - Has no Object name (only white space) and is oddly spaced. -} +Has no Object name (only white space) and is oddly spaced. + } мир{ мирмирмир } diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-trim.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-trim.expect index 546e287e0..c2e762728 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-trim.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content-trim.expect @@ -1,26 +1,26 @@ a{ - + stuff This has Several lines -} + } привет has space{ - inside { + inside { } -} + } # Valid Object{ - with content. -} + with content. + } # Valid Object{ - \### Nested valid Object { + ### Nested valid Object { with nested content. } and outside. -} + } { - Has no Object name (only white space) and is oddly spaced. -} +Has no Object name (only white space) and is oddly spaced. + } мир{ мирмирмир } diff --git a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content.expect b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content.expect index 546e287e0..c2e762728 100644 --- a/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content.expect +++ b/level_3/fss_read/tests/runtime/fss_0008/expect/test-0003-object_space-object_and_content.expect @@ -1,26 +1,26 @@ a{ - + stuff This has Several lines -} + } привет has space{ - inside { + inside { } -} + } # Valid Object{ - with content. -} + with content. + } # Valid Object{ - \### Nested valid Object { + ### Nested valid Object { with nested content. } and outside. -} + } { - Has no Object name (only white space) and is oddly spaced. -} +Has no Object name (only white space) and is oddly spaced. + } мир{ мирмирмир }