[feat] Add new decorator assign_units for unit processing on input and output for a function that does not support unit operations #73
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request introduces a new decorator function
assign_units
in thebrainunit
module to handle unit transformations for function arguments and return values. It also includes tests for this new functionality. The most important changes include adding theassign_units
function, updating the_base.py
file to include the new decorator, and adding corresponding tests.New functionality for unit transformation:
assign_units
decorator function to transform units of arguments passed to a function. (brainunit/_base.py
)Codebase updates:
assign_units
in the list of functions for checking units. (brainunit/_base.py
)_assign_unit
helper function to handle unit assignment within theassign_units
decorator. (brainunit/_base.py
)Testing:
test_assign_units
method to test various scenarios for theassign_units
decorator, ensuring it correctly handles unit transformations and raises appropriate errors. (brainunit/_base_test.py
)