Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Launcher code refactoring #2693

Closed
seanpearsonuk opened this issue Apr 15, 2024 · 0 comments · Fixed by #2702
Closed

Launcher code refactoring #2693

seanpearsonuk opened this issue Apr 15, 2024 · 0 comments · Fixed by #2702
Assignees

Comments

@seanpearsonuk
Copy link
Collaborator

This is a follow-up to #2611.

  1. The current structure of the code is:
def launch_fluent(...):
    <argument processing>
    launcher = create_launcher()
    return launcher()

So that each launcher class is directly usable, we should clear all out of launch_fluent() and instead have it done within the scope of each launcher instantiation wherever necessary. This would be done via shared code.

  1. Identify and eliminate any conditions like if mode == launch_mode_xyz (except for the point in the code where the type of launcher is decided!). The aim is to handle any such conditions not through boolean logic but through polymorphism, which has been facilitated by the introduction of the polymorphic launcher classes. Some of those conditionals were still recently present in the code, but I don't know if they were all eliminated in the last round of changes. Please check by searching for uses of the relevant enum.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: 2021-2024
Development

Successfully merging a pull request may close this issue.

2 participants