Skip to content

Joe uwa stack of handlers#414

Merged
joe-hauns merged 9 commits into
ahmed-uwa-stack-of-handlersfrom
joe-uwa-stack-of-handlers
Sep 1, 2022
Merged

Joe uwa stack of handlers#414
joe-hauns merged 9 commits into
ahmed-uwa-stack-of-handlersfrom
joe-uwa-stack-of-handlers

Conversation

@joe-hauns
Copy link
Copy Markdown
Contributor

The biggest change is the change the change in the MisatchHandler class hierarchy.
What used to be CompositieMismatchHandler is now MismatchHandler. No inheritance or subtyping there, because this is the only kind of mismatch handler that is actually being used in client code (i.e. Indexing and Robsubstitution).

What used to be the abstract class MisnmatchHandler is now the abstract class AtomicMismatchHandler (maybe we have a better name for this (?), like AbstractionStrategy, ...).
This abstract class is implemeneted by HOMismatchHandler and UWAMismatchHandler. it is not being interacted with anywhere in the codebase, except for in MismatchHandler.cpp.

These changes fix the issue that some function in the old `MismatchHandler would have to throw an exception before, therefore we get compile-time safety that different handlers cannot be "misused".

@joe-hauns
Copy link
Copy Markdown
Contributor Author

Further I made the uwa tests being automatically checked in unit testing (results aren't just printed to stdout anymore).
There are some little TODO's in tUnificaitonWithAbstraction for the HOMismatchHandler, as I'm not 100% sure what the implementation should do there.

@joe-hauns joe-hauns merged commit 2b0a756 into ahmed-uwa-stack-of-handlers Sep 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant