/// <summary> /// Creates a deep copy of the current <see cref="CoreOptions" /> instance. /// </summary> /// <returns>A deep copy of the this <see cref="CoreOptions" /> instance.</returns> public virtual CoreOptions Clone() { var clonedObject = new CoreOptions { UseRequiredKeywords = UseRequiredKeywords, RequiredKeywords = RequiredKeywords, LicenseHeaderFileText = LicenseHeaderFileText, Languages = new ObservableCollection <Language> (Languages.Select(x => x.Clone()).ToList()) }; return(clonedObject); }
/// <summary> /// Serializes an <see cref="CoreOptions" /> instance to a file in the file system. /// </summary> /// <param name="options">The <see cref="CoreOptions" /> instance to serialize.</param> /// <param name="filePath">The path to which an options file should be persisted.</param> public static async Task SaveAsync(CoreOptions options, string filePath) { await JsonOptionsManager.SerializeAsync(options, filePath); }