public static FormattingOptions WithNewLineForElse(this FormattingOptions formattingOptions, EditorConfigPropertyCollection editorConfigProperties)
        {
            if (editorConfigProperties.TryGetValue("csharp_new_line_before_else", out var enabled))
            {
                formattingOptions.NewLineForElse = bool.Parse(enabled);
            }

            return(formattingOptions);
        }
        public static FormattingOptions WithEndOfLine(this FormattingOptions formattingOptions, EditorConfigPropertyCollection editorConfigProperties)
        {
            if (editorConfigProperties.TryGetValue("end_of_line", out var endOfLine))
            {
                formattingOptions.NewLine = endOfLine.Replace("cr", "\r").Replace("lf", "\n");
            }

            return(formattingOptions);
        }
        public static FormattingOptions WithIndentSwitchCaseSection(this FormattingOptions formattingOptions, EditorConfigPropertyCollection editorConfigProperties)
        {
            if (editorConfigProperties.TryGetValue("csharp_indent_case_contents", out var enabled))
            {
                formattingOptions.IndentSwitchCaseSection = bool.Parse(enabled);
            }

            return(formattingOptions);
        }
        public static FormattingOptions WithIndentSize(this FormattingOptions formattingOptions, EditorConfigPropertyCollection editorConfigProperties)
        {
            if (editorConfigProperties.TryGetValue("indent_size", out var indentSize))
            {
                formattingOptions.IndentationSize = int.Parse(indentSize);
            }

            return(formattingOptions);
        }
        public static FormattingOptions WithTabWith(this FormattingOptions formattingOptions, EditorConfigPropertyCollection editorConfigProperties)
        {
            if (editorConfigProperties.TryGetValue("tab_width", out var tabWith))
            {
                formattingOptions.TabSize = int.Parse(tabWith);
            }

            return(formattingOptions);
        }
        public static FormattingOptions WithNewLinesForBracesInLambdaExpressionBody(this FormattingOptions formattingOptions, EditorConfigPropertyCollection editorConfigProperties)
        {
            if (editorConfigProperties.TryGetValue("csharp_new_line_before_open_brace", out var enabled))
            {
                formattingOptions.NewLinesForBracesInLambdaExpressionBody = enabled.Contains("lambdas", StringComparison.OrdinalIgnoreCase);
            }

            return(formattingOptions);
        }
        public static FormattingOptions WithIndentStyle(this FormattingOptions formattingOptions, EditorConfigPropertyCollection editorConfigProperties)
        {
            if (editorConfigProperties.TryGetValue("indent_style", out var indentStyle))
            {
                formattingOptions.UseTabs = indentStyle.Equals("tab", StringComparison.OrdinalIgnoreCase);
            }

            return(formattingOptions);
        }
        public static FormattingOptions WithNewLinesForBracesInObjectCollectionArrayInitializers(this FormattingOptions formattingOptions, EditorConfigPropertyCollection editorConfigProperties)
        {
            if (editorConfigProperties.TryGetValue("csharp_new_line_before_open_brace", out var enabled))
            {
                formattingOptions.NewLinesForBracesInObjectCollectionArrayInitializers = enabled.Contains("object_collection", StringComparison.OrdinalIgnoreCase);
            }

            return(formattingOptions);
        }
        public static FormattingOptions WithNewLinesForBracesInAnonymousMethods(this FormattingOptions formattingOptions, EditorConfigPropertyCollection editorConfigProperties)
        {
            if (editorConfigProperties.TryGetValue("csharp_new_line_before_open_brace", out var enabled))
            {
                formattingOptions.NewLinesForBracesInAnonymousMethods = enabled.Contains("anonymous_methods", StringComparison.OrdinalIgnoreCase);
            }

            return(formattingOptions);
        }
        public static FormattingOptions WithNewLineForClausesInQuery(this FormattingOptions formattingOptions, EditorConfigPropertyCollection editorConfigProperties)
        {
            if (editorConfigProperties.TryGetValue("csharp_new_line_between_query_expression_clauses", out var enabled))
            {
                formattingOptions.NewLineForClausesInQuery = bool.Parse(enabled);
            }

            return(formattingOptions);
        }
        public static FormattingOptions WithNewLineForMembersInAnonymousTypes(this FormattingOptions formattingOptions, EditorConfigPropertyCollection editorConfigProperties)
        {
            if (editorConfigProperties.TryGetValue("csharp_new_line_before_members_in_anonymous_types", out var enabled))
            {
                formattingOptions.NewLineForMembersInAnonymousTypes = bool.Parse(enabled);
            }

            return(formattingOptions);
        }
        public static FormattingOptions WithNewLineForMembersInObjectInit(this FormattingOptions formattingOptions, EditorConfigPropertyCollection editorConfigProperties)
        {
            if (editorConfigProperties.TryGetValue("csharp_new_line_before_members_in_object_initializers", out var enabled))
            {
                formattingOptions.NewLineForMembersInObjectInit = bool.Parse(enabled);
            }

            return(formattingOptions);
        }