# Tech Forum Scratch Pad
Topics:
- Bulk-In / Bulk-Out
Questions (as they come up):
- Q: Do files.File contain their full path? \
A: yes. their "relative path"
- Q: Library.listAccessibleFiles(), what does it do?
-
-
- How does the Library composite play into identifying which “library” is the subject of the current LibraryExecutionContext? +1 +1 +1 +1
- What are the mechanics of how the schema/data values end up landing in the right spot? +1
- What are aliases? what’s the use-case(s) for them?
Should we?:
- rename LibraryLoader -> LibraryExecution
Definitions:
- workspace.LibraryExecutionFactory: builds various types of LibraryExecution?
- workspace.LibraryLoader: loads libraries from a filesystem, or memory?
- workspace.LibraryExecutionContext:
- a "handle" on which library is being evaluated.
- workspace.DataValues:
- workspace.Library:
1) contains all the information to execute one ytt context?
1.1) if one dir is itself a library, it might 'need' information from a 'child' library/ sub directory?
2) a collection of starlark code that you can execute on to yield a result <- incorrect for workspace.Library.
3) it has a tree structure that is a *composite* of workspace.Library
4) it is like virtual file system, that marks some child Library as 'private'
Domain names:
- a 'private' Library:
1) a lib that has to be told to evaluate. it won't be evaluated unless you do it.
2) scoping/accessor. yes. libref.
- a library file: is a file that can be loaded() by a template
- module:
- ytt context: one invocation of ytt. kinda like a blackboard where you can add/modify/remove key-values
- Accessible file:
Relationships:
- workspace.LibraryLoader *loads/yields?* workspace.DataValues
- FinAccessibleLibrary() will find a private library only. Thats because the assumption is its only used when `library.get()`ing a private library