Exemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        private void AppendDependencies(StringBuilder sb, IBundleFileManifest bundle, AssetBundleManifest manifest)
        {
            var currentName = bundle.ABName;
            var directs     = manifest.TryGetDirectDependencies(currentName);

            sb.AppendLine($"[{currentName}]");
            foreach (var direct in directs)
            {
                sb.Append("\t").AppendLine($"- {direct} ");
                // 直接依存の全依存に自分自身が含まれていたらアウト
                var dependencies = manifest.TryGetDependencies(direct);
                foreach (var dependency in dependencies)
                {
                    sb.Append("\t\t").AppendLine($"- {dependency} ");
                    if (dependency == currentName)
                    {
                        sb.Append("\t\t\t").AppendLine($"***** Reference Loop ****");
                    }
                }
            }
        }