Bite-Programming-Language icon indicating copy to clipboard operation
Bite-Programming-Language copied to clipboard

Check how the dependency walker handles recursive dependencies and if we should catch them as an error

Open RupertAvery opened this issue 3 years ago • 0 comments

Currently, the dependency walker should stop processing a node if it has already "seen" it.

This is accomplished by assigning a unique Id (just an incrementing number for each module passed to Compile).

We just need to document the effects of having two modules reference each other directly, or through other modules.

graph TD
    A[ModuleA] --> B[ModuleB]
    A[ModuleA] --> C[ModuleC]
    B[ModuleB] --> C[ModuleC]
    C[ModuleB] --> B[ModuleC]
graph TD
    A[ModuleA] --> B[ModuleB]
    A[ModuleA] --> C[ModuleC]
    B[ModuleB] --> D[ModuleD]
    C[ModuleC] --> B[ModuleB]
    D[ModuleD] --> C[ModuleC]

RupertAvery avatar Apr 11 '22 04:04 RupertAvery