]> Kevux Git Server - fll/commit
Progress: Focus on directory recursion related changes and Featureless Make.
authorKevin Day <kevin@kevux.org>
Fri, 14 Apr 2023 00:42:44 +0000 (19:42 -0500)
committerKevin Day <kevin@kevux.org>
Fri, 14 Apr 2023 00:42:44 +0000 (19:42 -0500)
commit1f9f4c5b8e8a92568fcb15d67811c4a58659d7f8
treed955af7be823cf5e94f41a36884d0627103c30a8
parentaa029fec797bb30f70993742ffc0f7fd802286c7
Progress: Focus on directory recursion related changes and Featureless Make.

This should wrap up most of the initial work creating the copy recursion.
There are other areas to update but this is the start.

I forgot and accidentally added "custom" to the fl_directory_do_t.
I should be using the custom from the state variable.

Now that I have had a chance to experiment with the new fl_directory_do() design I have managed to come to some more decisions.
The parameter checking will not have the f_directory_recurse_do_flag_path_e bit set for the error handler.
The before and after should be called not on just the directory recursion but also before and after each non-recursion file action.
This better allows for setting things up in a sane way as is appropriate when performing a copy operation.

I decided to provide some convenience variables.
This is not a great idea for a recursive function but it is a start.
I should investigate moving this array into a static array that is global to the private file but not shared beyond that.
This would prevent the cost of allocating the array for each recursion.

It would be a good idea to bind some of the strings to the cache and update them to better avoid additional allocations.
I think I need a cache_3 to achieve this.
I added todo comments in areas where I think this is relevant.

Do some minor clean ups on the printing in certain areas.
17 files changed:
level_0/f_directory/c/directory/type.h
level_0/f_iki/c/iki.c
level_1/fl_directory/c/directory.c
level_1/fl_directory/c/directory.h
level_1/fl_directory/c/private-directory.c
level_1/fl_directory/c/private-directory.h
level_3/fake/c/main/build.c
level_3/fake/c/main/build.h
level_3/fake/c/main/build/load.c
level_3/fake/c/main/clean.c
level_3/fake/c/main/common/print.c
level_3/fake/c/main/common/print.h
level_3/fake/c/main/fake.c
level_3/fake/c/main/print/error.c
level_3/fake/c/main/print/error.h
level_3/fake/c/main/print/message.c
level_3/fake/c/main/skeleton.c