static void Recompile()
 {
     if (ScriptingSymbolManager.ContainsDefine("PROBUILDER_RECOMPILE_FLAG"))
     {
         ScriptingSymbolManager.RemoveScriptingDefine("PROBUILDER_RECOMPILE_FLAG");
     }
     else
     {
         ScriptingSymbolManager.AddScriptingDefine("PROBUILDER_RECOMPILE_FLAG");
     }
 }
        public static void GeneratePackageManifest(string packageName, string outputDir, string modName, string authorAlias, string modVersion, string description = null)
        {
            string unityVersion = Application.unityVersion.Substring(0, Application.unityVersion.LastIndexOf("."));
            var    author       = new Author
            {
                name = authorAlias,
            };
            var packageManifest     = new PackageManagerManifest(author, packageName, ObjectNames.NicifyVariableName(modName), modVersion, unityVersion, description);
            var packageManifestJson = JsonUtility.ToJson(packageManifest);

            ScriptingSymbolManager.AddScriptingDefine(packageName);
            File.WriteAllText(Path.Combine(outputDir, "package.json"), packageManifestJson);
        }
    static RegisterDebugDefines()
    {
        if (EditorPrefs.GetBool("DeveloperMode", false))
        {
            ScriptingSymbolManager.AddScriptingDefine("DEVELOPER_MODE");
        }
        else
        {
            ScriptingSymbolManager.RemoveScriptingDefine("DEVELOPER_MODE");
        }

        var progridsType = ProGridsInterface.GetProGridsType();

        if (progridsType != null)
        {
            ScriptingSymbolManager.AddScriptingDefine("PROGRIDS_ENABLED");
        }
        else
        {
            ScriptingSymbolManager.RemoveScriptingDefine("PROGRIDS_ENABLED");
        }
    }