dotnet/roslyn

Deconstructed variables code fix should always camelCase variables

Open

#23,716 opened on 2017年12月11日

GitHub で見る
 (9 comments) (1 reaction) (0 assignees)C# (4,257 forks)batch import
Area-IDEFeature - Tupleshelp wanted

Repository metrics

Stars
 (20,414 stars)
PR merge metrics
 (平均マージ 6d 17h) (30d で 256 merged PRs)

説明

class Program
{
    private static readonly (string Factory, string EvaluationRuleName) Foo;

    static void Main(string[] args)
    {
        var foo = Foo; // Deconstruct tuple here


    }
}

Expected:

class Program
{
    private static readonly (string Factory, string EvaluationRuleName) Foo;

    static void Main(string[] args)
    {
        var (factory, evaluationRuleName) = Foo;
    }
}

Actual:


class Program
{
    private static readonly (string Factory, string EvaluationRuleName) Foo;

    static void Main(string[] args)
    {
        var (Factory, EvaluationRuleName) = Foo;

    }
}

Because tuple names appear as public fields when you access them via the tuple itself, it's common practice to PascalCase them in a declaration. However, when they are deconstructed into variables - you want them them to be camelCase to match the naming style for variables.

Either add an option here that I can switch or change the behavior. As it stands, I can't use this code fix.

コントリビューターガイド