public override void OnInspectorGUI()
        {
            base.OnInspectorGUI();

            if (GUILayout.Button("Create proto file"))
            {
                UniBufHelper.GenerateProtoFile(GetTypeModel(), _config.ProtoFilePath);
            }

            if (GUILayout.Button("Compile model"))
            {
                UniBufHelper.CompileModel(GetTypeModel());
            }
        }
        public void OnPreprocessBuild(BuildReport report)
        {
            UniBufConfig config = UniBufHelper.GetConfig();
            bool         isTest =
                (report.summary.options & BuildOptions.IncludeTestAssemblies) == BuildOptions.IncludeTestAssemblies;

            var typeModel = TypeModelFactory.CreateTypeModel(UnityAssembliesUtils.GetAllRuntimeTypes(isTest));

            if (config.AutoCompileModel)
            {
                UniBufHelper.CompileModel(typeModel);
            }

            if (config.AutoGenerateProtoFile)
            {
                UniBufHelper.GenerateProtoFile(typeModel, config.ProtoFilePath);
            }
        }