示例#1
0
        public static void AutoCSGenerate()
        {
            var rCSGenerate = new CSGenerate();

            for (int nIndex = 0; nIndex < AutoCSGenerateTypes.Types.Count; ++nIndex)
            {
                var rType = AutoCSGenerateTypes.Types[nIndex];
                System.Console.WriteLine(string.Format("Process {0}...", rType.FullName), (float)nIndex / (float)AutoCSGenerateTypes.Types.Count);

                var rProcessInstance = ReflectExpand.TConstruct <AutoCSGenerate>(rType);
                if (null == rProcessInstance)
                {
                    Model.Log.Error($"AutoCSGenerateMain => {rType.FullName} not use. need default construct");
                    continue;
                }

                try
                {
                    rProcessInstance.CSGenerateProcess(rCSGenerate);
                }
                catch (System.Exception rException)
                {
                    Model.Log.Error($"{rException.Message}, {rException.StackTrace}");
                }
            }

            rCSGenerate.UpdateCSFile((rText, fRate) => {
                Model.Log.Error($"AutoCSGenerate {rText}, {fRate}");
            });
        }
示例#2
0
文件: CSGenerate.cs 项目: bsyx/knight
        public static void AutoCSGenerate()
        {
            var rCSGenerate = new CSGenerate();

            for (int nIndex = 0; nIndex < AutoCSGenerateTypes.Types.Count; ++nIndex)
            {
                var rType = AutoCSGenerateTypes.Types[nIndex];
                EditorUtility.DisplayProgressBar("AutoCSGenerate...",
                                                 string.Format("Process {0}...", rType.FullName), (float)nIndex / (float)AutoCSGenerateTypes.Types.Count);

                var rProcessInstance = ReflectExpand.TConstruct <AutoCSGenerate>(rType);
                if (null == rProcessInstance)
                {
                    Debug.LogErrorFormat("AutoCSGenerateMain => {0} not use. need default construct", rType.FullName);
                    continue;
                }

                try
                {
                    rProcessInstance.CSGenerateProcess(rCSGenerate);
                }
                catch (System.Exception rException)
                {
                    Debug.LogException(rException);
                }
            }

            rCSGenerate.UpdateCSFile((rText, fRate) => {
                EditorUtility.DisplayProgressBar("AutoCSGenerate", rText, fRate);
            });
            EditorUtility.ClearProgressBar();
        }
示例#3
0
        public static T Deserialize <T>(this BinaryReader rReader, T value)
            where T : SerializerBinary
        {
            bool bValid = rReader.Deserialize(false);

            if (!bValid)
            {
                return(null);
            }

            var rInstance = ReflectExpand.Construct <T>();

            rInstance.Deserialize(rReader);
            return(rInstance);
        }
示例#4
0
        public static T DeserializeDynamic <T>(this BinaryReader rReader, T rValue)
            where T : SerializerBinary
        {
            bool bValid = rReader.Deserialize(false);

            if (!bValid)
            {
                return(null);
            }

            var rFullName = rReader.Deserialize(string.Empty);
            var rInstance = ReflectExpand.TConstruct <T>(Type.GetType(rFullName));

            rInstance.Deserialize(rReader);
            return(rInstance);
        }