This is the first in a set of PRs which will be the most disruptive part of the transition to using CoreData types throughout the app. It introduces DataPointProtocol and GoalProtocol protocols which are implemented by both the existing memory-based types and the new CoreData types. It then starts to bring the two closer together in signature, and update some call sites to use the new shared protocols.
I don't expect these types to exist long term, but they make it possible to have the code compile and run in an intermediate state during the transition.
This is the first in a set of PRs which will be the most disruptive part of the transition to using CoreData types throughout the app. It introduces DataPointProtocol and GoalProtocol protocols which are implemented by both the existing memory-based types and the new CoreData types. It then starts to bring the two closer together in signature, and update some call sites to use the new shared protocols.
I don't expect these types to exist long term, but they make it possible to have the code compile and run in an intermediate state during the transition.
Testing Verified the code compiles