Next: , Previous: Fallbacks, Up: Project Descriptors


4.1.1.4 Retrieval

When Patcher needs the value of a particular project option, it looks for it in the following manner:

Note that a value of nil for a project option is an actual value. It is not equivalent to an option being unset. As a consequence, if Patcher finds a project option with a value of nil somewhere, it will use it and stop the search, even if a non nil value could be retrieved later from a theme, an inherited project or a fallback. This provides you with a way to annihilate themed, inherited or fallbacked options.

The retrieval process is completely dynamic. In particular, this means that even if you already have a running Patcher instance, you can still modify the project's options, and these modifications will be taken into account in your running instance. In fact, the only thing you can't do with a running Patcher instance is modify the project's name.

Beware however that modifying an option while a corresponding project has been instantiated is not very safe, and should be avoided as much as possible.