SciMLOperators.jl
SciMLOperators.jl copied to clipboard
Remove MacroTools.jl dependency
Summary
This PR eliminates the dependency on MacroTools.jl by replacing all @forward macro usage with explicit method forwarding.
Changes Made
- Removed MacroTools import from
src/SciMLOperators.jl - Replaced @forward macro usage with explicit method definitions in:
src/basic.jl: InvertedOperator forwarding methodssrc/matrix.jl: MatrixOperator and InvertibleOperator forwarding methodssrc/left.jl: AdjointOperator/TransposedOperator forwarding methods (generated via @eval)
- Removed MacroTools from Project.toml dependencies and compat sections
- Formatted code using JuliaFormatter with SciMLStyle
Testing
All tests pass successfully after the changes. The explicit method forwarding provides the exact same functionality as the previous @forward macro usage.
Benefits
- Removes an external dependency
- Makes the code more explicit and easier to understand
- Reduces compilation overhead from macro expansion
- Maintains 100% backward compatibility
🤖 Generated with Claude Code