Maxim Zhiburt deca337a56
nu-table/ 1 refactoring + a few optimizations + small fix (#15653)
- A few days back I've got this idea regarding recalculus of width.
Now it calculates step by step.
So 1 loop over all data was removed.
All though there's full recalculation in case of `header_on_border`
😞 (can be fixed..... but I decided to be short)

In perfect world it also shall be refactored ......

- Also have done small refactoring to switch build table from
`Vec<Vec<_>>>` to table itself. To hide internals (kind of still there's
things which I don't like).
It touched the `--expand` algorithm lightly you can see the tests
changes.

- And when doing that noticed one more opportunity, to remove HashMap
usage and directly use `tabled::ColoredConfig`. Which reduces copy
operations and allocations.

- And fixed a small issue where trailing column being using deleted
column styles.


![image](https://github.com/user-attachments/assets/19b09dba-c688-4e91-960a-e11ed11fd275)

To conclude optimizations;
I did small testing and it's not slower.
But I didn't get the faster results either.
But I believe it must be faster well in all cases, I think maybe bigger
tables must be tested.
Maybe someone could have a few runs to compare performance.

cc: @fdncred
2025-05-01 09:43:30 -05:00
..
2025-01-28 16:03:31 -06:00
2025-01-28 16:03:31 -06:00
2025-01-28 16:03:31 -06:00
2022-11-22 16:58:11 -08:00
2025-02-10 15:32:05 +08:00
2024-05-23 02:05:27 +00:00
2024-05-23 02:05:27 +00:00
2023-10-24 12:48:05 -05:00
2025-04-01 07:17:05 -05:00
2025-01-28 16:03:31 -06:00
2024-10-11 06:43:12 -05:00
2025-02-06 06:56:30 -06:00
2025-01-30 18:27:55 -06:00
2025-01-04 16:41:03 -05:00
2024-05-03 08:36:10 +08:00
2025-04-26 23:24:35 +08:00
2025-01-28 16:03:31 -06:00
2024-12-18 06:36:04 -06:00
2025-02-12 20:03:40 -08:00
2025-01-27 18:23:44 -05:00
2025-01-28 16:03:31 -06:00
2024-12-03 20:45:31 -06:00
2023-04-28 13:25:44 +02:00
2023-04-28 13:25:44 +02:00
2024-05-03 08:36:10 +08:00
2024-05-03 08:36:10 +08:00
2025-01-02 06:26:46 -06:00
2024-07-19 04:16:09 +00:00