.. _RewriteToLiteralRule:

====================
RewriteToLiteralRule
====================

A derivative of flake8-comprehensions' C405-C406 and C409-C410. It's
unnecessary to use a list or tuple literal within a call to tuple, list,
set, or dict since there is literal syntax for these types.

----------------
Has Autofix: Yes
----------------

-------------------
VALID Code Examples
-------------------

# 1:







.. code-block:: python

            (1, 2)




# 2:







.. code-block:: python

            ()




# 3:







.. code-block:: python

            [1, 2]




.. container:: toggle


    # 4:







    .. code-block:: python

                []





    # 5:







    .. code-block:: python

                {1, 2}





    # 6:







    .. code-block:: python

                set()





    # 7:







    .. code-block:: python

                {1: 2, 3: 4}





    # 8:







    .. code-block:: python

                {}





---------------------
INVALID Code Examples
---------------------

# 1:







.. code-block:: python

            tuple([1, 2])




Autofix:

.. code-block:: python

    --- 
    +++ 
    @@ -1 +1 @@
    -tuple([1, 2])
    +(1, 2)

# 2:







.. code-block:: python

            tuple((1, 2))




Autofix:

.. code-block:: python

    --- 
    +++ 
    @@ -1 +1 @@
    -tuple((1, 2))
    +(1, 2)

# 3:







.. code-block:: python

            tuple([])




Autofix:

.. code-block:: python

    --- 
    +++ 
    @@ -1 +1 @@
    -tuple([])
    +()

.. container:: toggle


    # 4:







    .. code-block:: python

                list([1, 2, 3])




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -list([1, 2, 3])
        +[1, 2, 3]


    # 5:







    .. code-block:: python

                list((1, 2, 3))




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -list((1, 2, 3))
        +[1, 2, 3]


    # 6:







    .. code-block:: python

                list([])




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -list([])
        +[]


    # 7:







    .. code-block:: python

                set([1, 2, 3])




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -set([1, 2, 3])
        +{1, 2, 3}


    # 8:







    .. code-block:: python

                set((1, 2, 3))




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -set((1, 2, 3))
        +{1, 2, 3}


    # 9:







    .. code-block:: python

                set([])




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -set([])
        +set()


    # 10:







    .. code-block:: python

                dict([(1, 2), (3, 4)])




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -dict([(1, 2), (3, 4)])
        +{1: 2, 3: 4}


    # 11:







    .. code-block:: python

                dict(((1, 2), (3, 4)))




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -dict(((1, 2), (3, 4)))
        +{1: 2, 3: 4}


    # 12:







    .. code-block:: python

                dict([[1, 2], [3, 4], [5, 6]])




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -dict([[1, 2], [3, 4], [5, 6]])
        +{1: 2, 3: 4, 5: 6}


    # 13:







    .. code-block:: python

                dict([])




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -dict([])
        +{}


    # 14:







    .. code-block:: python

                tuple()




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -tuple()
        +()


    # 15:







    .. code-block:: python

                list()




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -list()
        +[]


    # 16:







    .. code-block:: python

                dict()




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -dict()
        +{}

