Ejemplo n.º 1
0
        protected override void Prepare()
        {
            this.parser = new PrototypeParser(PrototypeParser.CreateXMLSerializer("UnityTK.Editor.Benchmarking"));

            StringBuilder sb = new StringBuilder();

            sb.AppendLine("<PrototypeContainer>");
            sb.AppendLine("	<SimplePrototype Id=\"Base\">\n" +
                          "		<someInt>32</someInt>\n"+
                          "	</SimplePrototype>");

            for (int i = 0; i < 10000; i++)
            {
                sb.Append("	<SimplePrototype Id=\"Test");
                sb.Append(i.ToString());
                sb.AppendLine("\" Inherits=\"Base\">");
                sb.AppendLine("		<someInt>123</someInt>");
                sb.AppendLine("	</SimplePrototype>");
            }

            sb.AppendLine("</PrototypeContainer>");
            this.xml = sb.ToString();
        }
Ejemplo n.º 2
0
        protected override List <IManagedAsset> LoadAssets()
        {
            var parser = new PrototypeParser(PrototypeParser.CreateXMLSerializer(standardNamespace));

            foreach (var p in this.paths)
            {
                string path = p.Replace(StreamingAssetsToken, Application.streamingAssetsPath);

                // Load data
                var      files    = System.IO.Directory.GetFiles(path, "*.xml", System.IO.SearchOption.AllDirectories);
                string[] contents = files.Select((f) => System.IO.File.ReadAllText(f)).ToArray();
                parser.Parse(contents, files);
            }

            var prototypes = parser.GetPrototypes();
            var errors     = parser.GetParsingErrors();

            foreach (var error in errors)
            {
                error.DoUnityDebugLog();
            }

            return(prototypes.Where((p) => p is IManagedPrototype).Cast <IManagedAsset>().ToList());
        }
Ejemplo n.º 3
0
 protected virtual ISerializer CreateSerializer()
 {
     return(PrototypeParser.CreateXMLSerializer("UnityTK.Test.Serialization"));
 }