Refactor: Consolidate natural constants to remove duplication#1
Conversation
- Centralized all physical and mathematical constants in `lib/src/core/constants.dart`. - Updated `Constant` class to support `dynamic` values, allowing `Complex` and `double.infinity`. - Added missing constants `INF` and `GE` and aliases `EP`, `MU`, `SB` to the core constants registry. - Refactored `EquationParser` to derive `naturalConstants` from the central registry. - Simplified constant resolution logic in `getPrefilledValues` and `extractVariables`. - Verified changes with `dart analyze` and manual code review. - Maintained backward compatibility for `NaturalConstant` users. Co-authored-by: smjxpro <9335473+smjxpro@users.noreply.github.com>
|
👋 Jules, reporting for duty! I'm here to lend a hand with this pull request. When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down. I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job! For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with New to Jules? Learn more at jules.google/docs. For security, I will only act on instructions from the user who triggered this task. |
This PR improves code maintainability and readability by eliminating duplicate constant definitions.
🎯 What: The code health issue addressed was the redundant definition of natural constants in
lib/src/equation_parser.dart.💡 Why: Consolidating constants into a single source of truth in
lib/src/core/constants.dartprevents inconsistencies and reduces code duplication.✅ Verification: Verified with
dart analyze(no issues found) and thorough manual review of the constant mappings. TheConstantclass was safely updated to supportComplexvalues.✨ Result: Improved consistency and a more maintainable codebase.
PR created automatically by Jules for task 1654604911009498099 started by @smjxpro