Skip to content

Instantly share code, notes, and snippets.

@sorvell
Last active August 29, 2015 14:17
Show Gist options
  • Save sorvell/e9806004a28f015b98a9 to your computer and use it in GitHub Desktop.
Save sorvell/e9806004a28f015b98a9 to your computer and use it in GitHub Desktop.
desirable:
- distribution before change handlers: allows use of distribution info in change handlers, good
- ready before attached?
Shady:
1. Create A
2. create A.root: stamps template containing B (goes all the way down)
2.1 B is created... go to 1 for it
3. initialize (we ensure this is top down starting at A and this whole process is 1 loop)
3.1 A is distributed
3.2 A is configured
3.3 B is distributed
3.4 B is configured
3.5 B is composed (unwinding...)
3.6 B is readied
3.7* A is composed
3.8* B is attached
3.9* A is readied
3.10* A is attached
* attached is async in ce polyfill and goes A B after all readies
Ensures:
- configure top down
- distributed before configured
- readied after composed
X attached after readied/configure
Shadow (before):
1. Create A
2. create A.root: stamps template containing B
2.1 B is created... go to 1 for it
3. initialize (we ensure this is top down starting at A and this whole process is 1 loop)
3.1 B is attached and therefore distributed
3.2 A is configured
3.3 B is configured
3.4 B is readied
3.5 A is readied
3.6 A is attached
Ensures:
- configure top down
- distributed before configured
- readied after composed
X attached after readied/configure
Shadow (after):
1. Create A
2. create A.root: stamps template containing B
2.1 B is created... go to 1 for it
3. initialize (we ensure this is top down starting at A and this whole process is 1 loop)
3.1 A is configured
3.2 B is configured
3.3 B is readied
3.4 B is attached
3.5 A is readied
3.6 A is attached
Ensures:
- configure top down
X distributed before configured
X readied after composed
- attached after readied/configure
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment