The BUILD.gn
is setup with small source units for various components in Tint. The hierarchy of sources almost matches to folder structure in tint (except for base
which is a mix of things in src/tint
and src/tint/util
.
+-----------------------------------------+ | Readers | Writers | +-----------------------------------------+ | V +-----------------------------------------+ | Val | Inspector | Transform | +-----------------------------------------+ | | +--------------+------------------------------+ | | V V +-----------------------------------------+ +-----------+ | AST | | Utils IO | +-----------------------------------------+ +-----------+ | | V | +-----------------------------------------+ | | Program | Sem | | +-----------------------------------------+ | | | V | +-----------------------------------------+ | | AST Hdrs | | | (program and sem cause a cycle) | | +-----------------------------------------+ | | | V | +-----------------------------------------+ | | Clone Context Hdrs | | | (program and sem cause a cycle) | | +-----------------------------------------+ | | | V | +-----------------------------------------+ | | Constant | | +-----------------------------------------+ | | | V | +-----------------------------------------+ | | Types | | +-----------------------------------------+ | | | V | +-----------------------------------------+ | | Builtin | | +-----------------------------------------+ | | | |------------------------------+ V +-----------------------------------------+ | Symbols | +-----------------------------------------+ | V +-----------------------------------------+ +-------------+ | Utils | | Initializer | +-----------------------------------------+ +-------------+