The function is currently defined by default as follows:
def add_features(
pdb_path: str, # noqa: ARG001
graph: Graph,
single_amino_acid_variant: SingleResidueVariant | None = None, # noqa: ARG001
) -> None:
There is only 1 feature for which the pdb_path is actually used. However as currently implemented it must always be given. For this reason, it would make more sense if pdb_path is requested last, so that it can just be omitted in most add_features calls.
But I think it would be even better to always take **kwargs as an argument in this function. Any specific argument needed for the feature in question can be explicitly named, and all others can be "hidden" in the kwargs. This also opens up the possibility for adding other keywords to future (or user defined) features that are not currently used, while maintaining a default structure.
The function is currently defined by default as follows:
There is only 1 feature for which the
pdb_pathis actually used. However as currently implemented it must always be given. For this reason, it would make more sense ifpdb_pathis requested last, so that it can just be omitted in mostadd_featurescalls.But I think it would be even better to always take
**kwargsas an argument in this function. Any specific argument needed for the feature in question can be explicitly named, and all others can be "hidden" in the kwargs. This also opens up the possibility for adding other keywords to future (or user defined) features that are not currently used, while maintaining a default structure.