using UnityEngine; using JetBrains.Annotations; using System.Collections.Generic; // This class holds the settings data. By using a ScriptableObject, we can easily // save and load the settings as an asset in the project. namespace IntelligentProjectAnalyzer.Analyzer { public class AnalyzerSettings : ScriptableObject { [Header("Type Analysis Settings")] [SerializeField] private List mCustomSystemTypes = new(); [Header("Custom Analysis Settings")] [SerializeField] private bool mAnalyzeScripts = true; [SerializeField] private bool mAnalyzePrefabs = true; [SerializeField] private bool mAnalyzeScriptableObjects = true; [SerializeField] private bool mAnalyzeMiscellaneous = true; [UsedImplicitly] public IReadOnlyList CustomSystemTypes => mCustomSystemTypes; [UsedImplicitly] public bool AnalyzeScripts => mAnalyzeScripts; [UsedImplicitly] public bool AnalyzePrefabs => mAnalyzePrefabs; [UsedImplicitly] public bool AnalyzeScriptableObjects => mAnalyzeScriptableObjects; [UsedImplicitly] public bool AnalyzeMiscellaneous => mAnalyzeMiscellaneous; } }