Description
Overview
Define all default values used for compile
functions within a centralized location within the core
library. Specifically, for the TS path which connects to the core
library through Python and C++ APIs, the defaults should be located in a centralized location to avoid confusion with differing values between Python and C++ and to allow other functions within core
to use these values.
Example
min_block_size
will be used as an example of a compilation field for which the defaults exist in multiple locations. Specifically, for Python:
For C++:
Both of these fields ultimately populate an entry in the internal PartitioningInfo
structure, which is common to both APIs. Thus, code understandability would be improved by storing such defaults in a single location. Additionally, there are times when other functions could benefit from using these defaults. For example, in partitioning, there is a specific case in PR #1599 where the default min_block_size
is needed, but the value cannot be directly accessed easily, making the code less adaptable.