pub fn do_traversal(
state: &mut CompileState,
package_index: &PackageIndex,
data_index: &DataIndex,
root: Program,
) -> Result<Program, Vec<AstError>>Expand description
Builds symbol tables for the given brane-dsl AST.
This effectively resolves variable references.
§Arguments
state: The CompileState that we can use to remember definitions in between runs.package_index: The PackageIndex which we use to resolve external function calls.data_index: The DataIndex which we use to resolve external data assets.root: The root node of the tree on which this compiler pass will be done.
§Returns
The same nodes as went in, but now with non-empty symbol tables.
§Errors
TThis pass may throw AstError::ResolveErrors if the user made mistakes with their variable references.