Assumptions: Based on the "Data Scoping" SDK article it sounds like "m" reference is used more like "private" in other languages (scope is available to the component but no other actor/instance), and "m.top" is used as a way to take "m" private references and expose them to parent ScreenGraph nodes (aka making them public?). This is just my guess after what I have read, but I'm looking to bring it back to one of the languages that I already understand... Can anyone help make the connection for me?
Second/Third (Bonus) Question:
- Are there any good patterns/advice you can offer on when to use "m" versus "m.top"?
- Are there any "gotchas" that I should be aware of for "m" vs "m.top" like:
- de-reference concerns,
- race conditions,
- garbage collection,
To answer my own question (and failed), I have done the following
- Read https://sdkdocs.roku.com/display/sdkdoc/SceneGraph+Data+Scoping
- I've searched these forums for "difference between m and m.top"
- I've searched Google.
- All of these gave varying results but none of them led me to a deep understanding.