public static TweakerOptions GetDefaultWithAdditionalFlags(TweakerOptionFlags flags) { TweakerOptions @default = GetDefault(); @default.Flags |= flags; return(@default); }
private void CreateManagers() { TweakerOptionFlags flags = Options.Flags; if ((flags & TweakerOptionFlags.ScanForInvokables) != 0) { Invokables = new InvokableManager(Scanner, Options); } else { Invokables = new InvokableManager(null, Options); } if ((flags & TweakerOptionFlags.ScanForTweakables) != 0) { Tweakables = new TweakableManager(Scanner, Options); } else { Tweakables = new TweakableManager(null, Options); } if ((flags & TweakerOptionFlags.ScanForWatchables) != 0) { Watchables = new WatchableManager(Scanner, Options); } else { Watchables = new WatchableManager(); } }
private void PerformScan() { TweakerOptionFlags flags = Options.Flags; if ((flags & TweakerOptionFlags.ScanInEverything) != 0) { ScanEverything(); return; } if ((flags & TweakerOptionFlags.ScanInNonSystemAssemblies) != 0) { ScanNonSystemAssemblies(); return; } List <Assembly> list = new List <Assembly>(); if ((flags & TweakerOptionFlags.ScanInExecutingAssembly) != 0) { list.Add(Assembly.GetCallingAssembly()); } if ((flags & TweakerOptionFlags.ScanInEntryAssembly) != 0) { list.Add(Assembly.GetEntryAssembly()); } ScanOptions scanOptions = new ScanOptions(); scanOptions.Assemblies.ScannableRefs = list.ToArray(); ScanWithOptions(scanOptions); }
public static TweakerOptionFlags GetDefaultFlags() { TweakerOptionFlags tweakerOptionFlags = (TweakerOptionFlags)2147483647; tweakerOptionFlags &= ~TweakerOptionFlags.ScanInEverything; tweakerOptionFlags &= ~TweakerOptionFlags.DoNotAutoScan; return(tweakerOptionFlags & ~TweakerOptionFlags.IncludeTests); }
public void Init(TweakerOptions options = null, IScanner scanner = null) { if (options == null) { options = new TweakerOptions(); } Options = options; TweakerOptionFlags flags = Options.Flags; Scanner = ((scanner != null) ? scanner : global::Tweaker.AssemblyScanner.Scanner.Global); if (flags == TweakerOptionFlags.None || (flags & TweakerOptionFlags.Default) != 0) { Options.Flags = TweakerOptions.GetDefaultFlags(); } CreateManagers(); if ((flags & TweakerOptionFlags.DoNotAutoScan) == 0) { PerformScan(); } Scanner.ScanInstance(this); }