Part of elisa.core.launcher View In Hierarchy
Known subclasses: elisa.core.tests.test_launcher.LauncherMock
Line # | Kind | Name | Docs |
---|---|---|---|
61 | Method | main | --> This is where you should start reading the source code <-- |
85 | Method | setup_win_output_redirection | Undocumented |
90 | Method | set_win_environment_pre_voodoo | Undocumented |
108 | Method | main_before_voodoo | Undocumented |
202 | Method | main_after_voodoo | Undocumented |
226 | Method | set_win_environment_after_voodoo | Undocumented |
242 | Method | poke_running_instance | Undocumented |
250 | Method | poke_unix_running_instance | Undocumented |
286 | Method | poke_win_running_instance | Undocumented |
322 | Method | info | Undocumented |
325 | Method | error | Undocumented |
328 | Method | get_platform | Undocumented |
332 | Method | get_environment | Undocumented |
335 | Method | get_win_prefix | Undocumented |
339 | Method | add_environment_path | Undocumented |
345 | Method | run_application | Undocumented |
375 | Method | exit | Undocumented |
The main entry point is split in two parts: main_before_voodoo() and main_after_voodoo().
The first function does all kinds of black magic to try and load the most recent version of elisa.core. It should be AS MINIMAL AS IT CAN BE and SHOULD NEVER BE MODIFIED. When we ship a new version of the core in ~/.elisa-0.5/plugins, an OLD VERSION OF THE FUNCTION (the one installed in a systemwide path) WILL BE EXECUTED anyway.
The second function does the actual initialization. If main_before_voodoo() is done right (as we're sure it is since I wrote it), the latest available version of main_after_voodoo() will be executed.
Yes, that's right. I'm awesome.