func addDepsTree(deps *Dependencies, depsTree *toml.TomlTree, modifiedChecksum bool, pos int) error { if depsTree == nil { return nil } for _, k := range depsTree.Keys() { depTree := depsTree.Get(k).(*toml.TomlTree) d := NewDependency(depTree.Get("import").(string)) d.setScm(depTree) d.setSource(depTree) d.setCheckout(depTree, "branch", BranchFlag) d.setCheckout(depTree, "commit", CommitFlag) d.setCheckout(depTree, "tag", TagFlag) if err := d.Validate(); err != nil { return err } d.Fetch(modifiedChecksum) deps.Keys[pos] = k deps.Imports[pos] = d.Import deps.DepList[pos] = d pos++ deps.ImportGraph.Insert(d) } return nil }