func printPackage(p *tp.Package, indLvl int) { printIndent("Name -> %v", indLvl, p.GetName()) printIndent("Path -> %v", indLvl, p.GetPath()) printIndent("Dependencies:", indLvl) for ind, item := range p.GetDependencies() { printIndent("Dependecny[%v] -> %v", indLvl+1, ind, item) } printIndent("Types:", indLvl) for ind, item := range p.GetTypes() { printIndent("Type[%v] -> %v", indLvl+1, ind, item) } printIndent("Functions:", indLvl) for ind, item := range p.GetFunctions() { printIndent("Function[%v]:", indLvl+1, ind) printFunction(item, indLvl+2) } }