Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 library dart2js.semantics_visitor; | 5 library dart2js.semantics_visitor; |
| 6 | 6 |
| 7 import '../constants/expressions.dart'; | 7 import '../constants/expressions.dart'; |
| 8 import '../dart2jslib.dart' show invariant, MessageKind; | 8 import '../dart2jslib.dart' show invariant, MessageKind; |
| 9 import '../dart_types.dart'; | 9 import '../dart_types.dart'; |
| 10 import '../elements/elements.dart'; | 10 import '../elements/elements.dart'; |
| (...skipping 1674 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1685 AssignmentOperator operator, | 1685 AssignmentOperator operator, |
| 1686 Node rhs, | 1686 Node rhs, |
| 1687 A arg); | 1687 A arg); |
| 1688 | 1688 |
| 1689 /// Compound assignment expression of [rhs] with [operator] on a final | 1689 /// Compound assignment expression of [rhs] with [operator] on a final |
| 1690 /// [parameter]. | 1690 /// [parameter]. |
| 1691 /// | 1691 /// |
| 1692 /// For instance: | 1692 /// For instance: |
| 1693 /// m(final parameter, rhs) => parameter += rhs; | 1693 /// m(final parameter, rhs) => parameter += rhs; |
| 1694 /// | 1694 /// |
| 1695 R errorFinalParameterCompound( | 1695 R visitFinalParameterCompound( |
| 1696 Send node, | 1696 Send node, |
| 1697 ParameterElement parameter, | 1697 ParameterElement parameter, |
| 1698 AssignmentOperator operator, | 1698 AssignmentOperator operator, |
| 1699 Node rhs, | 1699 Node rhs, |
| 1700 A arg); | 1700 A arg); |
| 1701 | 1701 |
| 1702 /// Compound assignment expression of [rhs] with [operator] on a local | 1702 /// Compound assignment expression of [rhs] with [operator] on a local |
| 1703 /// [variable]. | 1703 /// [variable]. |
| 1704 /// | 1704 /// |
| 1705 /// For instance: | 1705 /// For instance: |
| (...skipping 11 matching lines...) Expand all Loading... | |
| 1717 | 1717 |
| 1718 /// Compound assignment expression of [rhs] with [operator] on a final local | 1718 /// Compound assignment expression of [rhs] with [operator] on a final local |
| 1719 /// [variable]. | 1719 /// [variable]. |
| 1720 /// | 1720 /// |
| 1721 /// For instance: | 1721 /// For instance: |
| 1722 /// m(rhs) { | 1722 /// m(rhs) { |
| 1723 /// final variable = 0; | 1723 /// final variable = 0; |
| 1724 /// variable += rhs; | 1724 /// variable += rhs; |
| 1725 /// } | 1725 /// } |
| 1726 /// | 1726 /// |
| 1727 R errorFinalLocalVariableCompound( | 1727 R visitFinalLocalVariableCompound( |
| 1728 Send node, | 1728 Send node, |
| 1729 LocalVariableElement variable, | 1729 LocalVariableElement variable, |
| 1730 AssignmentOperator operator, | 1730 AssignmentOperator operator, |
| 1731 Node rhs, | 1731 Node rhs, |
| 1732 A arg); | 1732 A arg); |
| 1733 | 1733 |
| 1734 /// Compound assignment expression of [rhs] with [operator] on a local | 1734 /// Compound assignment expression of [rhs] with [operator] on a local |
| 1735 /// [function]. | 1735 /// [function]. |
| 1736 /// | 1736 /// |
| 1737 /// For instance: | 1737 /// For instance: |
| 1738 /// m(rhs) { | 1738 /// m(rhs) { |
| 1739 /// function() {} | 1739 /// function() {} |
| 1740 /// function += rhs; | 1740 /// function += rhs; |
| 1741 /// } | 1741 /// } |
| 1742 /// | 1742 /// |
| 1743 R errorLocalFunctionCompound( | 1743 R visitLocalFunctionCompound( |
| 1744 Send node, | 1744 Send node, |
| 1745 LocalFunctionElement function, | 1745 LocalFunctionElement function, |
| 1746 AssignmentOperator operator, | 1746 AssignmentOperator operator, |
| 1747 Node rhs, | 1747 Node rhs, |
| 1748 A arg); | 1748 A arg); |
| 1749 | 1749 |
| 1750 /// Compound assignment expression of [rhs] with [operator] on a static | 1750 /// Compound assignment expression of [rhs] with [operator] on a static |
| 1751 /// [field]. | 1751 /// [field]. |
| 1752 /// | 1752 /// |
| 1753 /// For instance: | 1753 /// For instance: |
| (...skipping 11 matching lines...) Expand all Loading... | |
| 1765 | 1765 |
| 1766 /// Compound assignment expression of [rhs] with [operator] on a final static | 1766 /// Compound assignment expression of [rhs] with [operator] on a final static |
| 1767 /// [field]. | 1767 /// [field]. |
| 1768 /// | 1768 /// |
| 1769 /// For instance: | 1769 /// For instance: |
| 1770 /// class C { | 1770 /// class C { |
| 1771 /// static final field = 0; | 1771 /// static final field = 0; |
| 1772 /// m(rhs) => field += rhs; | 1772 /// m(rhs) => field += rhs; |
| 1773 /// } | 1773 /// } |
| 1774 /// | 1774 /// |
| 1775 R errorFinalStaticFieldCompound( | 1775 R visitStaticFinalFieldCompound( |
| 1776 Send node, | 1776 Send node, |
| 1777 FieldElement field, | 1777 FieldElement field, |
| 1778 AssignmentOperator operator, | 1778 AssignmentOperator operator, |
| 1779 Node rhs, | 1779 Node rhs, |
| 1780 A arg); | 1780 A arg); |
| 1781 | 1781 |
| 1782 /// Compound assignment expression of [rhs] with [operator] reading from a | 1782 /// Compound assignment expression of [rhs] with [operator] reading from a |
| 1783 /// static [getter] and writing to a static [setter]. | 1783 /// static [getter] and writing to a static [setter]. |
| 1784 /// | 1784 /// |
| 1785 /// For instance: | 1785 /// For instance: |
| (...skipping 17 matching lines...) Expand all Loading... | |
| 1803 /// | 1803 /// |
| 1804 /// For instance: | 1804 /// For instance: |
| 1805 /// class C { | 1805 /// class C { |
| 1806 /// static o() {} | 1806 /// static o() {} |
| 1807 /// static set o(_) {} | 1807 /// static set o(_) {} |
| 1808 /// m(rhs) => o += rhs; | 1808 /// m(rhs) => o += rhs; |
| 1809 /// } | 1809 /// } |
| 1810 /// | 1810 /// |
| 1811 R visitStaticMethodSetterCompound( | 1811 R visitStaticMethodSetterCompound( |
| 1812 Send node, | 1812 Send node, |
| 1813 FunctionElement method, | 1813 MethodElement method, |
| 1814 FunctionElement setter, | 1814 MethodElement setter, |
| 1815 AssignmentOperator operator, | 1815 AssignmentOperator operator, |
| 1816 Node rhs, | 1816 Node rhs, |
| 1817 A arg); | 1817 A arg); |
| 1818 | 1818 |
| 1819 /// Compound assignment expression of [rhs] with [operator] on a top level | 1819 /// Compound assignment expression of [rhs] with [operator] on a top level |
| 1820 /// [field]. | 1820 /// [field]. |
| 1821 /// | 1821 /// |
| 1822 /// For instance: | 1822 /// For instance: |
| 1823 /// var field; | 1823 /// var field; |
| 1824 /// m(rhs) => field += rhs; | 1824 /// m(rhs) => field += rhs; |
| 1825 /// | 1825 /// |
| 1826 R visitTopLevelFieldCompound( | 1826 R visitTopLevelFieldCompound( |
| 1827 Send node, | 1827 Send node, |
| 1828 FieldElement field, | 1828 FieldElement field, |
| 1829 AssignmentOperator operator, | 1829 AssignmentOperator operator, |
| 1830 Node rhs, | 1830 Node rhs, |
| 1831 A arg); | 1831 A arg); |
| 1832 | 1832 |
| 1833 /// Compound assignment expression of [rhs] with [operator] on a final top | 1833 /// Compound assignment expression of [rhs] with [operator] on a final top |
| 1834 /// level [field]. | 1834 /// level [field]. |
| 1835 /// | 1835 /// |
| 1836 /// For instance: | 1836 /// For instance: |
| 1837 /// final field = 0; | 1837 /// final field = 0; |
| 1838 /// m(rhs) => field += rhs; | 1838 /// m(rhs) => field += rhs; |
| 1839 /// | 1839 /// |
| 1840 R errorFinalTopLevelFieldCompound( | 1840 R visitTopLevelFinalFieldCompound( |
| 1841 Send node, | 1841 Send node, |
| 1842 FieldElement field, | 1842 FieldElement field, |
| 1843 AssignmentOperator operator, | 1843 AssignmentOperator operator, |
| 1844 Node rhs, | 1844 Node rhs, |
| 1845 A arg); | 1845 A arg); |
| 1846 | 1846 |
| 1847 /// Compound assignment expression of [rhs] with [operator] reading from a | 1847 /// Compound assignment expression of [rhs] with [operator] reading from a |
| 1848 /// top level [getter] and writing to a top level [setter]. | 1848 /// top level [getter] and writing to a top level [setter]. |
| 1849 /// | 1849 /// |
| 1850 /// For instance: | 1850 /// For instance: |
| (...skipping 19 matching lines...) Expand all Loading... | |
| 1870 /// m(rhs) => o += rhs; | 1870 /// m(rhs) => o += rhs; |
| 1871 /// | 1871 /// |
| 1872 R visitTopLevelMethodSetterCompound( | 1872 R visitTopLevelMethodSetterCompound( |
| 1873 Send node, | 1873 Send node, |
| 1874 FunctionElement method, | 1874 FunctionElement method, |
| 1875 FunctionElement setter, | 1875 FunctionElement setter, |
| 1876 AssignmentOperator operator, | 1876 AssignmentOperator operator, |
| 1877 Node rhs, | 1877 Node rhs, |
| 1878 A arg); | 1878 A arg); |
| 1879 | 1879 |
| 1880 /// Compound assignment expression of [rhs] with [operator] reading from a | |
| 1881 /// top level [method], that is, closurizing [method], and writing to an | |
| 1882 /// unresolved setter. | |
| 1883 /// | |
| 1884 /// For instance: | |
| 1885 /// o() {} | |
| 1886 /// m(rhs) => o += rhs; | |
| 1887 /// | |
| 1888 R visitTopLevelMethodCompound( | |
| 1889 Send node, | |
| 1890 FunctionElement method, | |
| 1891 AssignmentOperator operator, | |
| 1892 Node rhs, | |
| 1893 A arg); | |
| 1894 | |
| 1880 /// Compound assignment expression of [rhs] with [operator] on a super | 1895 /// Compound assignment expression of [rhs] with [operator] on a super |
| 1881 /// [field]. | 1896 /// [field]. |
| 1882 /// | 1897 /// |
| 1883 /// For instance: | 1898 /// For instance: |
| 1884 /// class B { | 1899 /// class B { |
| 1885 /// var field; | 1900 /// var field; |
| 1886 /// } | 1901 /// } |
| 1887 /// class C extends B { | 1902 /// class C extends B { |
| 1888 /// m(rhs) => super.field += rhs; | 1903 /// m(rhs) => super.field += rhs; |
| 1889 /// } | 1904 /// } |
| 1890 /// | 1905 /// |
| 1891 R visitSuperFieldCompound( | 1906 R visitSuperFieldCompound( |
| 1892 Send node, | 1907 Send node, |
| 1893 FieldElement field, | 1908 FieldElement field, |
| 1894 AssignmentOperator operator, | 1909 AssignmentOperator operator, |
| 1895 Node rhs, | 1910 Node rhs, |
| 1896 A arg); | 1911 A arg); |
| 1897 | 1912 |
| 1898 /// Compound assignment expression of [rhs] with [operator] on a final super | 1913 /// Compound assignment expression of [rhs] with [operator] on a final super |
| 1899 /// [field]. | 1914 /// [field]. |
| 1900 /// | 1915 /// |
| 1901 /// For instance: | 1916 /// For instance: |
| 1902 /// class B { | 1917 /// class B { |
| 1903 /// final field = 0; | 1918 /// final field = 42; |
| 1904 /// } | 1919 /// } |
| 1905 /// class C extends B { | 1920 /// class C extends B { |
| 1906 /// m(rhs) => super.field += rhs; | 1921 /// m(rhs) => super.field += rhs; |
| 1907 /// } | 1922 /// } |
| 1908 /// | 1923 /// |
| 1909 R errorFinalSuperFieldCompound( | 1924 R visitSuperFinalFieldCompound( |
| 1910 Send node, | 1925 Send node, |
| 1911 FieldElement field, | 1926 FieldElement field, |
| 1912 AssignmentOperator operator, | 1927 AssignmentOperator operator, |
| 1913 Node rhs, | 1928 Node rhs, |
| 1914 A arg); | 1929 A arg); |
| 1915 | 1930 |
| 1931 /// Prefix expression with [operator] on a final super [field]. | |
| 1932 /// | |
| 1933 /// For instance: | |
| 1934 /// class B { | |
| 1935 /// final field = 42; | |
| 1936 /// } | |
| 1937 /// class C extends B { | |
| 1938 /// m(rhs) => ++super.field; | |
| 1939 /// } | |
| 1940 /// | |
| 1941 R visitSuperFinalFieldPrefix( | |
| 1942 Send node, | |
| 1943 FieldElement field, | |
| 1944 IncDecOperator operator, | |
| 1945 A arg); | |
| 1946 | |
| 1947 /// Prefix expression with [operator] on an unresolved super property. | |
| 1948 /// | |
| 1949 /// For instance: | |
| 1950 /// class B { | |
| 1951 /// } | |
| 1952 /// class C extends B { | |
| 1953 /// m(rhs) => ++super.unresolved; | |
| 1954 /// } | |
| 1955 /// | |
| 1956 R visitUnresolvedSuperPrefix( | |
| 1957 Send node, | |
| 1958 Element element, | |
| 1959 IncDecOperator operator, | |
| 1960 A arg); | |
| 1961 | |
| 1962 /// Postfix expression with [operator] on an unresolved super property. | |
| 1963 /// | |
| 1964 /// For instance: | |
| 1965 /// class B { | |
| 1966 /// } | |
| 1967 /// class C extends B { | |
| 1968 /// m(rhs) => super.unresolved++; | |
| 1969 /// } | |
| 1970 /// | |
| 1971 R visitUnresolvedSuperPostfix( | |
| 1972 Send node, | |
| 1973 Element element, | |
| 1974 IncDecOperator operator, | |
| 1975 A arg); | |
| 1976 | |
| 1977 /// Compound assignment expression of [rhs] with [operator] on an unresolved | |
| 1978 /// super property. | |
| 1979 /// | |
| 1980 /// For instance: | |
| 1981 /// class B { | |
| 1982 /// } | |
| 1983 /// class C extends B { | |
| 1984 /// m(rhs) => super.unresolved += rhs; | |
| 1985 /// } | |
| 1986 /// | |
| 1987 R visitUnresolvedSuperCompound( | |
| 1988 Send node, | |
| 1989 Element element, | |
| 1990 AssignmentOperator operator, | |
| 1991 Node rhs, | |
| 1992 A arg); | |
| 1993 | |
| 1994 /// Postfix expression with [operator] on a final super [field]. | |
| 1995 /// | |
| 1996 /// For instance: | |
| 1997 /// class B { | |
| 1998 /// final field = 42; | |
| 1999 /// } | |
| 2000 /// class C extends B { | |
| 2001 /// m(rhs) => super.field++; | |
| 2002 /// } | |
| 2003 /// | |
| 2004 R visitSuperFinalFieldPostfix( | |
| 2005 Send node, | |
| 2006 FieldElement field, | |
| 2007 IncDecOperator operator, | |
| 2008 A arg); | |
| 2009 | |
| 2010 /// Compound assignment expression of [rhs] with [operator] reading from the | |
| 2011 /// super field [readField] and writing to the different super field | |
| 2012 /// [writtenField]. | |
| 2013 /// | |
| 2014 /// For instance: | |
| 2015 /// class A { | |
| 2016 /// var field; | |
| 2017 /// } | |
| 2018 /// class B extends A { | |
| 2019 /// final field; | |
| 2020 /// } | |
| 2021 /// class C extends B { | |
| 2022 /// m() => super.field += rhs; | |
| 2023 /// } | |
| 2024 /// | |
| 2025 R visitSuperFieldFieldCompound( | |
| 2026 Send node, | |
| 2027 FieldElement readField, | |
| 2028 FieldElement writtenField, | |
| 2029 AssignmentOperator operator, | |
| 2030 Node rhs, | |
| 2031 A arg); | |
| 2032 | |
| 1916 /// Compound assignment expression of [rhs] with [operator] reading from a | 2033 /// Compound assignment expression of [rhs] with [operator] reading from a |
| 1917 /// super [getter] and writing to a super [setter]. | 2034 /// super [getter] and writing to a super [setter]. |
| 1918 /// | 2035 /// |
| 1919 /// For instance: | 2036 /// For instance: |
| 1920 /// class B { | 2037 /// class B { |
| 1921 /// get o => 0; | 2038 /// get o => 0; |
| 1922 /// set o(_) {} | 2039 /// set o(_) {} |
| 1923 /// } | 2040 /// } |
| 1924 /// class C extends B { | 2041 /// class C extends B { |
| 1925 /// m(rhs) => super.o += rhs; | 2042 /// m(rhs) => super.o += rhs; |
| (...skipping 21 matching lines...) Expand all Loading... | |
| 1947 /// } | 2064 /// } |
| 1948 /// | 2065 /// |
| 1949 R visitSuperMethodSetterCompound( | 2066 R visitSuperMethodSetterCompound( |
| 1950 Send node, | 2067 Send node, |
| 1951 FunctionElement method, | 2068 FunctionElement method, |
| 1952 FunctionElement setter, | 2069 FunctionElement setter, |
| 1953 AssignmentOperator operator, | 2070 AssignmentOperator operator, |
| 1954 Node rhs, | 2071 Node rhs, |
| 1955 A arg); | 2072 A arg); |
| 1956 | 2073 |
| 1957 /// Compound assignment expression of [rhs] with [operator] reading from a | 2074 /// Compound assignment expression of [rhs] with [operator] reading from a |
|
karlklose
2015/05/13 07:25:59
'reading the closurized super [method] and trying
Johnni Winther
2015/05/13 08:48:00
Done.
| |
| 2075 /// super [method], that is, closurizing [method], and writing to an | |
| 2076 /// unresolved super setter. | |
| 2077 /// | |
| 2078 /// For instance: | |
| 2079 /// class B { | |
| 2080 /// o() {} | |
| 2081 /// } | |
| 2082 /// class C extends B { | |
| 2083 /// m(rhs) => super.o += rhs; | |
| 2084 /// } | |
| 2085 /// | |
| 2086 R visitSuperMethodCompound( | |
| 2087 Send node, | |
| 2088 FunctionElement method, | |
| 2089 AssignmentOperator operator, | |
| 2090 Node rhs, | |
| 2091 A arg); | |
| 2092 | |
| 2093 /// Compound assignment expression of [rhs] with [operator] reading from an | |
| 2094 /// unresolved super getter and writing to a super [setter]. | |
|
karlklose
2015/05/13 07:25:59
'an unresolved'/'the non-existing'.
Johnni Winther
2015/05/13 08:47:59
Done.
| |
| 2095 /// | |
| 2096 /// For instance | |
| 2097 /// class B { | |
| 2098 /// set o(_) {} | |
| 2099 /// } | |
| 2100 /// class C extends B { | |
| 2101 /// m(rhs) => super.o += rhs; | |
| 2102 /// } | |
| 2103 /// | |
| 2104 R visitUnresolvedSuperGetterCompound( | |
| 2105 Send node, | |
| 2106 Element element, | |
| 2107 MethodElement setter, | |
| 2108 AssignmentOperator operator, | |
| 2109 Node rhs, | |
| 2110 A arg); | |
| 2111 | |
| 2112 /// Compound assignment expression of [rhs] with [operator] reading from a | |
| 2113 /// super [getter] and writing to an unresolved super setter. | |
| 2114 /// | |
| 2115 /// For instance | |
| 2116 /// class B { | |
| 2117 /// get o => 42; | |
| 2118 /// } | |
| 2119 /// class C extends B { | |
| 2120 /// m(rhs) => super.o += rhs; | |
| 2121 /// } | |
| 2122 /// | |
| 2123 R visitUnresolvedSuperSetterCompound( | |
| 2124 Send node, | |
| 2125 MethodElement getter, | |
| 2126 Element element, | |
| 2127 AssignmentOperator operator, | |
| 2128 Node rhs, | |
| 2129 A arg); | |
| 2130 | |
| 2131 /// Compound assignment expression of [rhs] with [operator] reading from a | |
| 1958 /// super [field] and writing to a super [setter]. | 2132 /// super [field] and writing to a super [setter]. |
| 1959 /// | 2133 /// |
| 1960 /// For instance: | 2134 /// For instance: |
| 1961 /// class A { | 2135 /// class A { |
| 1962 /// var o; | 2136 /// var o; |
| 1963 /// } | 2137 /// } |
| 1964 /// class B extends A { | 2138 /// class B extends A { |
| 1965 /// set o(_) {} | 2139 /// set o(_) {} |
| 1966 /// } | 2140 /// } |
| 1967 /// class C extends B { | 2141 /// class C extends B { |
| (...skipping 30 matching lines...) Expand all Loading... | |
| 1998 Node rhs, | 2172 Node rhs, |
| 1999 A arg); | 2173 A arg); |
| 2000 | 2174 |
| 2001 /// Compound assignment expression of [rhs] with [operator] on a type literal | 2175 /// Compound assignment expression of [rhs] with [operator] on a type literal |
| 2002 /// for class [element]. | 2176 /// for class [element]. |
| 2003 /// | 2177 /// |
| 2004 /// For instance: | 2178 /// For instance: |
| 2005 /// class C {} | 2179 /// class C {} |
| 2006 /// m(rhs) => C += rhs; | 2180 /// m(rhs) => C += rhs; |
| 2007 /// | 2181 /// |
| 2008 R errorClassTypeLiteralCompound( | 2182 R visitClassTypeLiteralCompound( |
| 2009 Send node, | 2183 Send node, |
| 2010 ConstantExpression constant, | 2184 ConstantExpression constant, |
| 2011 AssignmentOperator operator, | 2185 AssignmentOperator operator, |
| 2012 Node rhs, | 2186 Node rhs, |
| 2013 A arg); | 2187 A arg); |
| 2014 | 2188 |
| 2015 /// Compound assignment expression of [rhs] with [operator] on a type literal | 2189 /// Compound assignment expression of [rhs] with [operator] on a type literal |
| 2016 /// for typedef [element]. | 2190 /// for typedef [element]. |
| 2017 /// | 2191 /// |
| 2018 /// For instance: | 2192 /// For instance: |
| 2019 /// typedef F(); | 2193 /// typedef F(); |
| 2020 /// m(rhs) => F += rhs; | 2194 /// m(rhs) => F += rhs; |
| 2021 /// | 2195 /// |
| 2022 R errorTypedefTypeLiteralCompound( | 2196 R visitTypedefTypeLiteralCompound( |
| 2023 Send node, | 2197 Send node, |
| 2024 ConstantExpression constant, | 2198 ConstantExpression constant, |
| 2025 AssignmentOperator operator, | 2199 AssignmentOperator operator, |
| 2026 Node rhs, | 2200 Node rhs, |
| 2027 A arg); | 2201 A arg); |
| 2028 | 2202 |
| 2029 /// Compound assignment expression of [rhs] with [operator] on a type literal | 2203 /// Compound assignment expression of [rhs] with [operator] on a type literal |
| 2030 /// for type variable [element]. | 2204 /// for type variable [element]. |
| 2031 /// | 2205 /// |
| 2032 /// For instance: | 2206 /// For instance: |
| 2033 /// class C<T> { | 2207 /// class C<T> { |
| 2034 /// m(rhs) => T += rhs; | 2208 /// m(rhs) => T += rhs; |
| 2035 /// } | 2209 /// } |
| 2036 /// | 2210 /// |
| 2037 R errorTypeVariableTypeLiteralCompound( | 2211 R visitTypeVariableTypeLiteralCompound( |
| 2038 Send node, | 2212 Send node, |
| 2039 TypeVariableElement element, | 2213 TypeVariableElement element, |
| 2040 AssignmentOperator operator, | 2214 AssignmentOperator operator, |
| 2041 Node rhs, | 2215 Node rhs, |
| 2042 A arg); | 2216 A arg); |
| 2043 | 2217 |
| 2044 /// Compound assignment expression of [rhs] with [operator] on the type | 2218 /// Compound assignment expression of [rhs] with [operator] on the type |
| 2045 /// literal for `dynamic`. | 2219 /// literal for `dynamic`. |
| 2046 /// | 2220 /// |
| 2047 /// For instance: | 2221 /// For instance: |
| 2048 /// m(rhs) => dynamic += rhs; | 2222 /// m(rhs) => dynamic += rhs; |
| 2049 /// | 2223 /// |
| 2050 R errorDynamicTypeLiteralCompound( | 2224 R visitDynamicTypeLiteralCompound( |
| 2051 Send node, | 2225 Send node, |
| 2052 ConstantExpression constant, | 2226 ConstantExpression constant, |
| 2053 AssignmentOperator operator, | 2227 AssignmentOperator operator, |
| 2054 Node rhs, | 2228 Node rhs, |
| 2055 A arg); | 2229 A arg); |
| 2056 | 2230 |
| 2057 /// Compound index assignment of [rhs] with [operator] to [index] on the | 2231 /// Compound index assignment of [rhs] with [operator] to [index] on the |
| 2058 /// index operators of [receiver] whose getter and setter are defined by | 2232 /// index operators of [receiver] whose getter and setter are defined by |
| 2059 /// [getterSelector] and [setterSelector], respectively. | 2233 /// [getterSelector] and [setterSelector], respectively. |
| 2060 /// | 2234 /// |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2149 /// | 2323 /// |
| 2150 /// For instance: | 2324 /// For instance: |
| 2151 /// m(parameter) => ++parameter; | 2325 /// m(parameter) => ++parameter; |
| 2152 /// | 2326 /// |
| 2153 R visitParameterPrefix( | 2327 R visitParameterPrefix( |
| 2154 Send node, | 2328 Send node, |
| 2155 ParameterElement parameter, | 2329 ParameterElement parameter, |
| 2156 IncDecOperator operator, | 2330 IncDecOperator operator, |
| 2157 A arg); | 2331 A arg); |
| 2158 | 2332 |
| 2333 /// Prefix expression with [operator] on a final [parameter]. | |
| 2334 /// | |
| 2335 /// For instance: | |
| 2336 /// m(final parameter) => ++parameter; | |
| 2337 /// | |
| 2338 R visitFinalParameterPrefix( | |
| 2339 Send node, | |
| 2340 ParameterElement parameter, | |
| 2341 IncDecOperator operator, | |
| 2342 A arg); | |
| 2343 | |
| 2159 /// Prefix expression with [operator] on a local [variable]. | 2344 /// Prefix expression with [operator] on a local [variable]. |
| 2160 /// | 2345 /// |
| 2161 /// For instance: | 2346 /// For instance: |
| 2162 /// m() { | 2347 /// m() { |
| 2163 /// var variable; | 2348 /// var variable; |
| 2164 /// ++variable; | 2349 /// ++variable; |
| 2165 /// } | 2350 /// } |
| 2166 /// | 2351 /// |
| 2167 R visitLocalVariablePrefix( | 2352 R visitLocalVariablePrefix( |
| 2168 Send node, | 2353 Send node, |
| 2169 LocalVariableElement variable, | 2354 LocalVariableElement variable, |
| 2170 IncDecOperator operator, | 2355 IncDecOperator operator, |
| 2171 A arg); | 2356 A arg); |
| 2172 | 2357 |
| 2358 /// Prefix expression with [operator] on a final local [variable]. | |
| 2359 /// | |
| 2360 /// For instance: | |
| 2361 /// m() { | |
| 2362 /// final variable; | |
| 2363 /// ++variable; | |
| 2364 /// } | |
| 2365 /// | |
| 2366 R visitFinalLocalVariablePrefix( | |
| 2367 Send node, | |
| 2368 LocalVariableElement variable, | |
| 2369 IncDecOperator operator, | |
| 2370 A arg); | |
| 2371 | |
| 2173 /// Prefix expression with [operator] on a local [function]. | 2372 /// Prefix expression with [operator] on a local [function]. |
| 2174 /// | 2373 /// |
| 2175 /// For instance: | 2374 /// For instance: |
| 2176 /// m() { | 2375 /// m() { |
| 2177 /// function() {} | 2376 /// function() {} |
| 2178 /// ++function; | 2377 /// ++function; |
| 2179 /// } | 2378 /// } |
| 2180 /// | 2379 /// |
| 2181 R errorLocalFunctionPrefix( | 2380 R visitLocalFunctionPrefix( |
| 2182 Send node, | 2381 Send node, |
| 2183 LocalFunctionElement function, | 2382 LocalFunctionElement function, |
| 2184 IncDecOperator operator, | 2383 IncDecOperator operator, |
| 2185 A arg); | 2384 A arg); |
| 2186 | 2385 |
| 2187 | 2386 |
| 2188 /// Prefix expression with [operator] of the property on `this` whose getter | 2387 /// Prefix expression with [operator] of the property on `this` whose getter |
| 2189 /// and setter are defined by [getterSelector] and [setterSelector], | 2388 /// and setter are defined by [getterSelector] and [setterSelector], |
| 2190 /// respectively. | 2389 /// respectively. |
| 2191 /// | 2390 /// |
| (...skipping 20 matching lines...) Expand all Loading... | |
| 2212 /// static var field; | 2411 /// static var field; |
| 2213 /// m() => ++field; | 2412 /// m() => ++field; |
| 2214 /// } | 2413 /// } |
| 2215 /// | 2414 /// |
| 2216 R visitStaticFieldPrefix( | 2415 R visitStaticFieldPrefix( |
| 2217 Send node, | 2416 Send node, |
| 2218 FieldElement field, | 2417 FieldElement field, |
| 2219 IncDecOperator operator, | 2418 IncDecOperator operator, |
| 2220 A arg); | 2419 A arg); |
| 2221 | 2420 |
| 2421 /// Prefix expression with [operator] on a final static [field]. | |
| 2422 /// | |
| 2423 /// For instance: | |
| 2424 /// class C { | |
| 2425 /// static final field = 42; | |
| 2426 /// m() => ++field; | |
| 2427 /// } | |
| 2428 /// | |
| 2429 R visitStaticFinalFieldPrefix( | |
| 2430 Send node, | |
| 2431 FieldElement field, | |
| 2432 IncDecOperator operator, | |
| 2433 A arg); | |
| 2434 | |
| 2222 /// Prefix expression with [operator] reading from a static [getter] and | 2435 /// Prefix expression with [operator] reading from a static [getter] and |
| 2223 /// writing to a static [setter]. | 2436 /// writing to a static [setter]. |
| 2224 /// | 2437 /// |
| 2225 /// For instance: | 2438 /// For instance: |
| 2226 /// class C { | 2439 /// class C { |
| 2227 /// static get o => 0; | 2440 /// static get o => 0; |
| 2228 /// static set o(_) {} | 2441 /// static set o(_) {} |
| 2229 /// m() => ++o; | 2442 /// m() => ++o; |
| 2230 /// } | 2443 /// } |
| 2231 /// | 2444 /// |
| (...skipping 27 matching lines...) Expand all Loading... | |
| 2259 /// For instance: | 2472 /// For instance: |
| 2260 /// var field; | 2473 /// var field; |
| 2261 /// m() => ++field; | 2474 /// m() => ++field; |
| 2262 /// | 2475 /// |
| 2263 R visitTopLevelFieldPrefix( | 2476 R visitTopLevelFieldPrefix( |
| 2264 Send node, | 2477 Send node, |
| 2265 FieldElement field, | 2478 FieldElement field, |
| 2266 IncDecOperator operator, | 2479 IncDecOperator operator, |
| 2267 A arg); | 2480 A arg); |
| 2268 | 2481 |
| 2482 /// Prefix expression with [operator] on a final top level [field]. | |
| 2483 /// | |
| 2484 /// For instance: | |
| 2485 /// final field; | |
| 2486 /// m() => ++field; | |
| 2487 /// | |
| 2488 R visitTopLevelFinalFieldPrefix( | |
| 2489 Send node, | |
| 2490 FieldElement field, | |
| 2491 IncDecOperator operator, | |
| 2492 A arg); | |
| 2493 | |
| 2269 /// Prefix expression with [operator] reading from a top level [getter] and | 2494 /// Prefix expression with [operator] reading from a top level [getter] and |
| 2270 /// writing to a top level [setter]. | 2495 /// writing to a top level [setter]. |
| 2271 /// | 2496 /// |
| 2272 /// For instance: | 2497 /// For instance: |
| 2273 /// get o => 0; | 2498 /// get o => 0; |
| 2274 /// set o(_) {} | 2499 /// set o(_) {} |
| 2275 /// m() => ++o; | 2500 /// m() => ++o; |
| 2276 /// | 2501 /// |
| 2277 R visitTopLevelGetterSetterPrefix( | 2502 R visitTopLevelGetterSetterPrefix( |
| 2278 Send node, | 2503 Send node, |
| (...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2407 /// m() => ++super.o; | 2632 /// m() => ++super.o; |
| 2408 /// } | 2633 /// } |
| 2409 /// | 2634 /// |
| 2410 R visitSuperMethodSetterPrefix( | 2635 R visitSuperMethodSetterPrefix( |
| 2411 Send node, | 2636 Send node, |
| 2412 FunctionElement method, | 2637 FunctionElement method, |
| 2413 FunctionElement setter, | 2638 FunctionElement setter, |
| 2414 IncDecOperator operator, | 2639 IncDecOperator operator, |
| 2415 A arg); | 2640 A arg); |
| 2416 | 2641 |
| 2642 /// Prefix expression with [operator] reading from a super [method], that is, | |
|
karlklose
2015/05/13 07:25:59
Same comments for documentation as with superMetho
Johnni Winther
2015/05/13 08:47:59
Done.
| |
| 2643 /// closurizing [method], and writing to an unresolved super setter. | |
| 2644 /// | |
| 2645 /// For instance: | |
| 2646 /// class B { | |
| 2647 /// o() {} | |
| 2648 /// set o(_) {} | |
| 2649 /// } | |
| 2650 /// class C extends B { | |
| 2651 /// m() => ++super.o; | |
| 2652 /// } | |
| 2653 /// | |
| 2654 R visitSuperMethodPrefix( | |
| 2655 Send node, | |
| 2656 FunctionElement method, | |
| 2657 IncDecOperator operator, | |
| 2658 A arg); | |
| 2659 | |
| 2660 /// Prefix expression with [operator] reading from an unresolved super getter | |
| 2661 /// and writing to a super [setter]. | |
| 2662 /// | |
| 2663 /// For instance | |
| 2664 /// class B { | |
| 2665 /// set o(_) {} | |
| 2666 /// } | |
| 2667 /// class C extends B { | |
| 2668 /// m() => ++super.o; | |
| 2669 /// } | |
| 2670 /// | |
| 2671 /// | |
| 2672 R visitUnresolvedSuperGetterPrefix( | |
| 2673 Send node, | |
| 2674 Element element, | |
| 2675 MethodElement setter, | |
| 2676 IncDecOperator operator, | |
| 2677 A arg); | |
| 2678 | |
| 2679 /// Prefix expression with [operator] reading from a super [getter] and | |
| 2680 /// writing to an unresolved super setter. | |
| 2681 /// | |
| 2682 /// For instance | |
| 2683 /// class B { | |
| 2684 /// get o => 42 | |
| 2685 /// } | |
| 2686 /// class C extends B { | |
| 2687 /// m() => ++super.o; | |
| 2688 /// } | |
| 2689 /// | |
| 2690 /// | |
| 2691 R visitUnresolvedSuperSetterPrefix( | |
| 2692 Send node, | |
| 2693 MethodElement getter, | |
| 2694 Element element, | |
| 2695 IncDecOperator operator, | |
| 2696 A arg); | |
| 2697 | |
| 2417 /// Prefix expression with [operator] on a type literal for a class [element]. | 2698 /// Prefix expression with [operator] on a type literal for a class [element]. |
| 2418 /// | 2699 /// |
| 2419 /// For instance: | 2700 /// For instance: |
| 2420 /// class C {} | 2701 /// class C {} |
| 2421 /// m() => ++C; | 2702 /// m() => ++C; |
| 2422 /// | 2703 /// |
| 2423 R errorClassTypeLiteralPrefix( | 2704 R visitClassTypeLiteralPrefix( |
| 2424 Send node, | 2705 Send node, |
| 2425 ConstantExpression constant, | 2706 ConstantExpression constant, |
| 2426 IncDecOperator operator, | 2707 IncDecOperator operator, |
| 2427 A arg); | 2708 A arg); |
| 2428 | 2709 |
| 2429 /// Prefix expression with [operator] on a type literal for a typedef | 2710 /// Prefix expression with [operator] on a type literal for a typedef |
| 2430 /// [element]. | 2711 /// [element]. |
| 2431 /// | 2712 /// |
| 2432 /// For instance: | 2713 /// For instance: |
| 2433 /// typedef F(); | 2714 /// typedef F(); |
| 2434 /// m() => ++F; | 2715 /// m() => ++F; |
| 2435 /// | 2716 /// |
| 2436 R errorTypedefTypeLiteralPrefix( | 2717 R visitTypedefTypeLiteralPrefix( |
| 2437 Send node, | 2718 Send node, |
| 2438 ConstantExpression constant, | 2719 ConstantExpression constant, |
| 2439 IncDecOperator operator, | 2720 IncDecOperator operator, |
| 2440 A arg); | 2721 A arg); |
| 2441 | 2722 |
| 2442 /// Prefix expression with [operator] on a type literal for a type variable | 2723 /// Prefix expression with [operator] on a type literal for a type variable |
| 2443 /// [element]. | 2724 /// [element]. |
| 2444 /// | 2725 /// |
| 2445 /// For instance: | 2726 /// For instance: |
| 2446 /// class C<T> { | 2727 /// class C<T> { |
| 2447 /// m() => ++T; | 2728 /// m() => ++T; |
| 2448 /// } | 2729 /// } |
| 2449 /// | 2730 /// |
| 2450 R errorTypeVariableTypeLiteralPrefix( | 2731 R visitTypeVariableTypeLiteralPrefix( |
| 2451 Send node, | 2732 Send node, |
| 2452 TypeVariableElement element, | 2733 TypeVariableElement element, |
| 2453 IncDecOperator operator, | 2734 IncDecOperator operator, |
| 2454 A arg); | 2735 A arg); |
| 2455 | 2736 |
| 2456 /// Prefix expression with [operator] on the type literal for `dynamic`. | 2737 /// Prefix expression with [operator] on the type literal for `dynamic`. |
| 2457 /// | 2738 /// |
| 2458 /// For instance: | 2739 /// For instance: |
| 2459 /// m() => ++dynamic; | 2740 /// m() => ++dynamic; |
| 2460 /// | 2741 /// |
| 2461 R errorDynamicTypeLiteralPrefix( | 2742 R visitDynamicTypeLiteralPrefix( |
| 2462 Send node, | 2743 Send node, |
| 2463 ConstantExpression constant, | 2744 ConstantExpression constant, |
| 2464 IncDecOperator operator, | 2745 IncDecOperator operator, |
| 2465 A arg); | 2746 A arg); |
| 2466 | 2747 |
| 2467 /// Postfix expression with [operator] of the property on [receiver] whose | 2748 /// Postfix expression with [operator] of the property on [receiver] whose |
| 2468 /// getter and setter are defined by [getterSelector] and [setterSelector], | 2749 /// getter and setter are defined by [getterSelector] and [setterSelector], |
| 2469 /// respectively. | 2750 /// respectively. |
| 2470 /// | 2751 /// |
| 2471 /// For instance: | 2752 /// For instance: |
| (...skipping 11 matching lines...) Expand all Loading... | |
| 2483 /// | 2764 /// |
| 2484 /// For instance: | 2765 /// For instance: |
| 2485 /// m(parameter) => parameter++; | 2766 /// m(parameter) => parameter++; |
| 2486 /// | 2767 /// |
| 2487 R visitParameterPostfix( | 2768 R visitParameterPostfix( |
| 2488 Send node, | 2769 Send node, |
| 2489 ParameterElement parameter, | 2770 ParameterElement parameter, |
| 2490 IncDecOperator operator, | 2771 IncDecOperator operator, |
| 2491 A arg); | 2772 A arg); |
| 2492 | 2773 |
| 2774 /// Postfix expression with [operator] on a final [parameter]. | |
| 2775 /// | |
| 2776 /// For instance: | |
| 2777 /// m(final parameter) => parameter++; | |
| 2778 /// | |
| 2779 R visitFinalParameterPostfix( | |
| 2780 Send node, | |
| 2781 ParameterElement parameter, | |
| 2782 IncDecOperator operator, | |
| 2783 A arg); | |
| 2784 | |
| 2493 /// Postfix expression with [operator] on a local [variable]. | 2785 /// Postfix expression with [operator] on a local [variable]. |
| 2494 /// | 2786 /// |
| 2495 /// For instance: | 2787 /// For instance: |
| 2496 /// m() { | 2788 /// m() { |
| 2497 /// var variable; | 2789 /// var variable; |
| 2498 /// variable++; | 2790 /// variable++; |
| 2499 /// } | 2791 /// } |
| 2500 /// | 2792 /// |
| 2501 R visitLocalVariablePostfix( | 2793 R visitLocalVariablePostfix( |
| 2502 Send node, | 2794 Send node, |
| 2503 LocalVariableElement variable, | 2795 LocalVariableElement variable, |
| 2504 IncDecOperator operator, | 2796 IncDecOperator operator, |
| 2505 A arg); | 2797 A arg); |
| 2506 | 2798 |
| 2799 /// Postfix expression with [operator] on a final local [variable]. | |
| 2800 /// | |
| 2801 /// For instance: | |
| 2802 /// m() { | |
| 2803 /// final variable; | |
| 2804 /// variable++; | |
| 2805 /// } | |
| 2806 /// | |
| 2807 R visitFinalLocalVariablePostfix( | |
| 2808 Send node, | |
| 2809 LocalVariableElement variable, | |
| 2810 IncDecOperator operator, | |
| 2811 A arg); | |
| 2812 | |
| 2507 /// Postfix expression with [operator] on a local [function]. | 2813 /// Postfix expression with [operator] on a local [function]. |
| 2508 /// | 2814 /// |
| 2509 /// For instance: | 2815 /// For instance: |
| 2510 /// m() { | 2816 /// m() { |
| 2511 /// function() {} | 2817 /// function() {} |
| 2512 /// function++; | 2818 /// function++; |
| 2513 /// } | 2819 /// } |
| 2514 /// | 2820 /// |
| 2515 R errorLocalFunctionPostfix( | 2821 R visitLocalFunctionPostfix( |
| 2516 Send node, | 2822 Send node, |
| 2517 LocalFunctionElement function, | 2823 LocalFunctionElement function, |
| 2518 IncDecOperator operator, | 2824 IncDecOperator operator, |
| 2519 A arg); | 2825 A arg); |
| 2520 | 2826 |
| 2521 | 2827 |
| 2522 /// Postfix expression with [operator] of the property on `this` whose getter | 2828 /// Postfix expression with [operator] of the property on `this` whose getter |
| 2523 /// and setter are defined by [getterSelector] and [setterSelector], | 2829 /// and setter are defined by [getterSelector] and [setterSelector], |
| 2524 /// respectively. | 2830 /// respectively. |
| 2525 /// | 2831 /// |
| (...skipping 20 matching lines...) Expand all Loading... | |
| 2546 /// static var field; | 2852 /// static var field; |
| 2547 /// m() => field++; | 2853 /// m() => field++; |
| 2548 /// } | 2854 /// } |
| 2549 /// | 2855 /// |
| 2550 R visitStaticFieldPostfix( | 2856 R visitStaticFieldPostfix( |
| 2551 Send node, | 2857 Send node, |
| 2552 FieldElement field, | 2858 FieldElement field, |
| 2553 IncDecOperator operator, | 2859 IncDecOperator operator, |
| 2554 A arg); | 2860 A arg); |
| 2555 | 2861 |
| 2862 /// Postfix expression with [operator] on a final static [field]. | |
| 2863 /// | |
| 2864 /// For instance: | |
| 2865 /// class C { | |
| 2866 /// static final field; | |
| 2867 /// m() => field++; | |
| 2868 /// } | |
| 2869 /// | |
| 2870 R visitStaticFinalFieldPostfix( | |
| 2871 Send node, | |
| 2872 FieldElement field, | |
| 2873 IncDecOperator operator, | |
| 2874 A arg); | |
| 2875 | |
| 2556 /// Postfix expression with [operator] reading from a static [getter] and | 2876 /// Postfix expression with [operator] reading from a static [getter] and |
| 2557 /// writing to a static [setter]. | 2877 /// writing to a static [setter]. |
| 2558 /// | 2878 /// |
| 2559 /// For instance: | 2879 /// For instance: |
| 2560 /// class C { | 2880 /// class C { |
| 2561 /// static get o => 0; | 2881 /// static get o => 0; |
| 2562 /// static set o(_) {} | 2882 /// static set o(_) {} |
| 2563 /// m() => o++; | 2883 /// m() => o++; |
| 2564 /// } | 2884 /// } |
| 2565 /// | 2885 /// |
| (...skipping 27 matching lines...) Expand all Loading... | |
| 2593 /// For instance: | 2913 /// For instance: |
| 2594 /// var field; | 2914 /// var field; |
| 2595 /// m() => field++; | 2915 /// m() => field++; |
| 2596 /// | 2916 /// |
| 2597 R visitTopLevelFieldPostfix( | 2917 R visitTopLevelFieldPostfix( |
| 2598 Send node, | 2918 Send node, |
| 2599 FieldElement field, | 2919 FieldElement field, |
| 2600 IncDecOperator operator, | 2920 IncDecOperator operator, |
| 2601 A arg); | 2921 A arg); |
| 2602 | 2922 |
| 2923 /// Postfix expression with [operator] on a final top level [field]. | |
| 2924 /// | |
| 2925 /// For instance: | |
| 2926 /// final field = 42; | |
| 2927 /// m() => field++; | |
| 2928 /// | |
| 2929 R visitTopLevelFinalFieldPostfix( | |
| 2930 Send node, | |
| 2931 FieldElement field, | |
| 2932 IncDecOperator operator, | |
| 2933 A arg); | |
| 2934 | |
| 2603 /// Postfix expression with [operator] reading from a top level [getter] and | 2935 /// Postfix expression with [operator] reading from a top level [getter] and |
| 2604 /// writing to a top level [setter]. | 2936 /// writing to a top level [setter]. |
| 2605 /// | 2937 /// |
| 2606 /// For instance: | 2938 /// For instance: |
| 2607 /// get o => 0; | 2939 /// get o => 0; |
| 2608 /// set o(_) {} | 2940 /// set o(_) {} |
| 2609 /// m() => o++; | 2941 /// m() => o++; |
| 2610 /// | 2942 /// |
| 2611 R visitTopLevelGetterSetterPostfix( | 2943 R visitTopLevelGetterSetterPostfix( |
| 2612 Send node, | 2944 Send node, |
| (...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2741 /// m() => super.o++; | 3073 /// m() => super.o++; |
| 2742 /// } | 3074 /// } |
| 2743 /// | 3075 /// |
| 2744 R visitSuperMethodSetterPostfix( | 3076 R visitSuperMethodSetterPostfix( |
| 2745 Send node, | 3077 Send node, |
| 2746 FunctionElement method, | 3078 FunctionElement method, |
| 2747 FunctionElement setter, | 3079 FunctionElement setter, |
| 2748 IncDecOperator operator, | 3080 IncDecOperator operator, |
| 2749 A arg); | 3081 A arg); |
| 2750 | 3082 |
| 3083 /// Postfix expression with [operator] reading from a super [method], that is, | |
| 3084 /// closurizing [method], and writing to an unresolved super. | |
| 3085 /// | |
| 3086 /// For instance: | |
| 3087 /// class B { | |
| 3088 /// o() {} | |
| 3089 /// set o(_) {} | |
| 3090 /// } | |
| 3091 /// class C extends B { | |
| 3092 /// m() => super.o++; | |
| 3093 /// } | |
| 3094 /// | |
| 3095 R visitSuperMethodPostfix( | |
| 3096 Send node, | |
| 3097 FunctionElement method, | |
| 3098 IncDecOperator operator, | |
| 3099 A arg); | |
| 3100 | |
| 3101 /// Prefix expression with [operator] reading from an unresolved super getter | |
| 3102 /// and writing to a super [setter]. | |
| 3103 /// | |
| 3104 /// For instance | |
| 3105 /// class B { | |
| 3106 /// set o(_) {} | |
| 3107 /// } | |
| 3108 /// class C extends B { | |
| 3109 /// m() => super.o++; | |
| 3110 /// } | |
| 3111 /// | |
| 3112 /// | |
| 3113 R visitUnresolvedSuperGetterPostfix( | |
| 3114 Send node, | |
| 3115 Element element, | |
| 3116 MethodElement setter, | |
| 3117 IncDecOperator operator, | |
| 3118 A arg); | |
| 3119 | |
| 3120 /// Prefix expression with [operator] reading from a super [getter] and | |
| 3121 /// writing to an unresolved super setter. | |
| 3122 /// | |
| 3123 /// For instance | |
| 3124 /// class B { | |
| 3125 /// get o => 42 | |
| 3126 /// } | |
| 3127 /// class C extends B { | |
| 3128 /// m() => super.o++; | |
| 3129 /// } | |
| 3130 /// | |
| 3131 /// | |
| 3132 R visitUnresolvedSuperSetterPostfix( | |
| 3133 Send node, | |
| 3134 MethodElement getter, | |
| 3135 Element element, | |
| 3136 IncDecOperator operator, | |
| 3137 A arg); | |
| 3138 | |
| 2751 /// Postfix expression with [operator] on a type literal for a class | 3139 /// Postfix expression with [operator] on a type literal for a class |
| 2752 /// [element]. | 3140 /// [element]. |
| 2753 /// | 3141 /// |
| 2754 /// For instance: | 3142 /// For instance: |
| 2755 /// class C {} | 3143 /// class C {} |
| 2756 /// m() => C++; | 3144 /// m() => C++; |
| 2757 /// | 3145 /// |
| 2758 R errorClassTypeLiteralPostfix( | 3146 R visitClassTypeLiteralPostfix( |
| 2759 Send node, | 3147 Send node, |
| 2760 ConstantExpression constant, | 3148 ConstantExpression constant, |
| 2761 IncDecOperator operator, | 3149 IncDecOperator operator, |
| 2762 A arg); | 3150 A arg); |
| 2763 | 3151 |
| 2764 /// Postfix expression with [operator] on a type literal for a typedef | 3152 /// Postfix expression with [operator] on a type literal for a typedef |
| 2765 /// [element]. | 3153 /// [element]. |
| 2766 /// | 3154 /// |
| 2767 /// For instance: | 3155 /// For instance: |
| 2768 /// typedef F(); | 3156 /// typedef F(); |
| 2769 /// m() => F++; | 3157 /// m() => F++; |
| 2770 /// | 3158 /// |
| 2771 R errorTypedefTypeLiteralPostfix( | 3159 R visitTypedefTypeLiteralPostfix( |
| 2772 Send node, | 3160 Send node, |
| 2773 ConstantExpression constant, | 3161 ConstantExpression constant, |
| 2774 IncDecOperator operator, | 3162 IncDecOperator operator, |
| 2775 A arg); | 3163 A arg); |
| 2776 | 3164 |
| 2777 /// Postfix expression with [operator] on a type literal for a type variable | 3165 /// Postfix expression with [operator] on a type literal for a type variable |
| 2778 /// [element]. | 3166 /// [element]. |
| 2779 /// | 3167 /// |
| 2780 /// For instance: | 3168 /// For instance: |
| 2781 /// class C<T> { | 3169 /// class C<T> { |
| 2782 /// m() => T++; | 3170 /// m() => T++; |
| 2783 /// } | 3171 /// } |
| 2784 /// | 3172 /// |
| 2785 R errorTypeVariableTypeLiteralPostfix( | 3173 R visitTypeVariableTypeLiteralPostfix( |
| 2786 Send node, | 3174 Send node, |
| 2787 TypeVariableElement element, | 3175 TypeVariableElement element, |
| 2788 IncDecOperator operator, | 3176 IncDecOperator operator, |
| 2789 A arg); | 3177 A arg); |
| 2790 | 3178 |
| 2791 /// Postfix expression with [operator] on the type literal for `dynamic`. | 3179 /// Postfix expression with [operator] on the type literal for `dynamic`. |
| 2792 /// | 3180 /// |
| 2793 /// For instance: | 3181 /// For instance: |
| 2794 /// m() => dynamic++; | 3182 /// m() => dynamic++; |
| 2795 /// | 3183 /// |
| 2796 R errorDynamicTypeLiteralPostfix( | 3184 R visitDynamicTypeLiteralPostfix( |
| 2797 Send node, | 3185 Send node, |
| 2798 ConstantExpression constant, | 3186 ConstantExpression constant, |
| 2799 IncDecOperator operator, | 3187 IncDecOperator operator, |
| 2800 A arg); | 3188 A arg); |
| 2801 | 3189 |
| 2802 /// Read of the [constant]. | 3190 /// Read of the [constant]. |
| 2803 /// | 3191 /// |
| 2804 /// For instance | 3192 /// For instance |
| 2805 /// const c = c; | 3193 /// const c = c; |
| 2806 /// m() => c; | 3194 /// m() => c; |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2901 /// m() => super.foo(); | 3289 /// m() => super.foo(); |
| 2902 /// } | 3290 /// } |
| 2903 /// | 3291 /// |
| 2904 R visitUnresolvedSuperInvoke( | 3292 R visitUnresolvedSuperInvoke( |
| 2905 Send node, | 3293 Send node, |
| 2906 Element element, | 3294 Element element, |
| 2907 NodeList arguments, | 3295 NodeList arguments, |
| 2908 Selector selector, | 3296 Selector selector, |
| 2909 A arg); | 3297 A arg); |
| 2910 | 3298 |
| 2911 /// Compound assignment of [rhs] on the unresolved [element]. | 3299 /// Compound assignment of [rhs] on a static [setter] where the getter is |
| 3300 /// unresolved. | |
| 3301 /// | |
| 3302 /// For instance | |
| 3303 /// class C { | |
| 3304 /// set foo(_) {} | |
| 3305 /// } | |
| 3306 /// m1() => C.foo += 42; | |
| 3307 /// | |
| 3308 R visitUnresolvedStaticGetterCompound( | |
| 3309 Send node, | |
| 3310 Element element, | |
| 3311 MethodElement setter, | |
| 3312 AssignmentOperator operator, | |
| 3313 Node rhs, | |
| 3314 A arg); | |
| 3315 | |
| 3316 /// Compound assignment of [rhs] on a top level [setter] where the getter is | |
| 3317 /// unresolved. | |
| 3318 /// | |
| 3319 /// For instance | |
| 3320 /// set foo(_) {} | |
| 3321 /// m1() => foo += 42; | |
| 3322 /// | |
| 3323 R visitUnresolvedTopLevelGetterCompound( | |
| 3324 Send node, | |
| 3325 Element element, | |
| 3326 MethodElement setter, | |
| 3327 AssignmentOperator operator, | |
| 3328 Node rhs, | |
| 3329 A arg); | |
| 3330 | |
| 3331 /// Compound assignment of [rhs] on a static [getter] where the setter is | |
| 3332 /// unresolved. | |
| 3333 /// | |
| 3334 /// For instance | |
| 3335 /// class C { | |
| 3336 /// get foo => 42; | |
| 3337 /// } | |
| 3338 /// m1() => C.foo += 42; | |
| 3339 /// | |
| 3340 R visitUnresolvedStaticSetterCompound( | |
| 3341 Send node, | |
| 3342 MethodElement getter, | |
| 3343 Element element, | |
| 3344 AssignmentOperator operator, | |
| 3345 Node rhs, | |
| 3346 A arg); | |
| 3347 | |
| 3348 /// Compound assignment of [rhs] on a top level [getter] where the setter is | |
| 3349 /// unresolved. | |
| 3350 /// | |
| 3351 /// For instance | |
| 3352 /// get foo => 42; | |
| 3353 /// m1() => foo += 42; | |
| 3354 /// | |
| 3355 R visitUnresolvedTopLevelSetterCompound( | |
| 3356 Send node, | |
| 3357 MethodElement getter, | |
| 3358 Element element, | |
| 3359 AssignmentOperator operator, | |
| 3360 Node rhs, | |
| 3361 A arg); | |
| 3362 | |
| 3363 /// Compound assignment of [rhs] on a static [method] where the setter is | |
| 3364 /// unresolved. | |
| 3365 /// | |
| 3366 /// For instance | |
| 3367 /// class C { | |
| 3368 /// foo() {} | |
| 3369 /// } | |
| 3370 /// m1() => C.foo += 42; | |
| 3371 /// | |
| 3372 R visitStaticMethodCompound( | |
| 3373 Send node, | |
| 3374 MethodElement method, | |
| 3375 AssignmentOperator operator, | |
| 3376 Node rhs, | |
| 3377 A arg); | |
| 3378 | |
| 3379 /// Compound assignment of [rhs] where both getter and setter are unresolved. | |
| 2912 /// | 3380 /// |
| 2913 /// For instance | 3381 /// For instance |
| 2914 /// class C {} | 3382 /// class C {} |
| 2915 /// m1() => unresolved += 42; | 3383 /// m1() => unresolved += 42; |
| 2916 /// m2() => prefix.unresolved += 42; | 3384 /// m2() => prefix.unresolved += 42; |
| 2917 /// m3() => Unresolved.foo += 42; | 3385 /// m3() => Unresolved.foo += 42; |
| 2918 /// m4() => unresolved.foo += 42; | 3386 /// m4() => unresolved.foo += 42; |
| 2919 /// m5() => unresolved.Foo.bar += 42; | 3387 /// m5() => unresolved.Foo.bar += 42; |
| 2920 /// m6() => C.unresolved += 42; | 3388 /// m6() => C.unresolved += 42; |
| 2921 /// m7() => prefix.C.unresolved += 42; | 3389 /// m7() => prefix.C.unresolved += 42; |
| 2922 /// | 3390 /// |
| 2923 // TODO(johnniwinther): Split the cases in which a prefix is resolved. | 3391 // TODO(johnniwinther): Split the cases in which a prefix is resolved. |
| 2924 R errorUnresolvedCompound( | 3392 R visitUnresolvedCompound( |
| 2925 Send node, | 3393 Send node, |
| 2926 Element element, | 3394 Element element, |
| 2927 AssignmentOperator operator, | 3395 AssignmentOperator operator, |
| 2928 Node rhs, | 3396 Node rhs, |
| 2929 A arg); | 3397 A arg); |
| 2930 | 3398 |
| 2931 /// Prefix operation on the unresolved [element]. | 3399 /// Prefix operation on a static [setter] where the getter is unresolved. |
| 3400 /// | |
| 3401 /// For instance | |
| 3402 /// class C { | |
| 3403 /// set foo(_) {} | |
| 3404 /// } | |
| 3405 /// m1() => ++C.foo; | |
| 3406 /// | |
| 3407 R visitUnresolvedStaticGetterPrefix( | |
| 3408 Send node, | |
| 3409 Element element, | |
| 3410 MethodElement setter, | |
| 3411 IncDecOperator operator, | |
| 3412 A arg); | |
| 3413 | |
| 3414 /// Prefix operation on a top level [setter] where the getter is unresolved. | |
| 3415 /// | |
| 3416 /// For instance | |
| 3417 /// set foo(_) {} | |
| 3418 /// m1() => ++foo; | |
| 3419 /// | |
| 3420 R visitUnresolvedTopLevelGetterPrefix( | |
| 3421 Send node, | |
| 3422 Element element, | |
| 3423 MethodElement setter, | |
| 3424 IncDecOperator operator, | |
| 3425 A arg); | |
| 3426 | |
| 3427 /// Prefix operation on a static [getter] where the setter is unresolved. | |
| 3428 /// | |
| 3429 /// For instance | |
| 3430 /// class C { | |
| 3431 /// get foo => 42; | |
| 3432 /// } | |
| 3433 /// m1() => ++C.foo; | |
| 3434 /// | |
| 3435 R visitUnresolvedStaticSetterPrefix( | |
| 3436 Send node, | |
| 3437 MethodElement getter, | |
| 3438 Element element, | |
| 3439 IncDecOperator operator, | |
| 3440 A arg); | |
| 3441 | |
| 3442 /// Prefix operation on a top level [getter] where the setter is unresolved. | |
| 3443 /// | |
| 3444 /// For instance | |
| 3445 /// get foo => 42; | |
| 3446 /// m1() => ++foo; | |
| 3447 /// | |
| 3448 R visitUnresolvedTopLevelSetterPrefix( | |
| 3449 Send node, | |
| 3450 MethodElement getter, | |
| 3451 Element element, | |
| 3452 IncDecOperator operator, | |
| 3453 A arg); | |
| 3454 | |
| 3455 /// Prefix operation on a static [method] where the setter is unresolved. | |
| 3456 /// | |
| 3457 /// For instance | |
| 3458 /// class C { | |
| 3459 /// foo() {} | |
| 3460 /// } | |
| 3461 /// m1() => ++C.foo; | |
| 3462 /// | |
| 3463 R visitStaticMethodPrefix( | |
| 3464 Send node, | |
| 3465 MethodElement method, | |
| 3466 IncDecOperator operator, | |
| 3467 A arg); | |
| 3468 | |
| 3469 /// Prefix operation on a top level [method] where the setter is unresolved. | |
| 3470 /// | |
| 3471 /// For instance | |
| 3472 /// class C { | |
| 3473 /// foo() {} | |
| 3474 /// } | |
| 3475 /// m1() => ++C.foo; | |
| 3476 /// | |
| 3477 R visitTopLevelMethodPrefix( | |
| 3478 Send node, | |
| 3479 MethodElement method, | |
| 3480 IncDecOperator operator, | |
| 3481 A arg); | |
| 3482 | |
| 3483 /// Prefix operation where both getter and setter are unresolved. | |
| 2932 /// | 3484 /// |
| 2933 /// For instance | 3485 /// For instance |
| 2934 /// class C {} | 3486 /// class C {} |
| 2935 /// m1() => ++unresolved; | 3487 /// m1() => ++unresolved; |
| 2936 /// m2() => ++prefix.unresolved; | 3488 /// m2() => ++prefix.unresolved; |
| 2937 /// m3() => ++Unresolved.foo; | 3489 /// m3() => ++Unresolved.foo; |
| 2938 /// m4() => ++unresolved.foo; | 3490 /// m4() => ++unresolved.foo; |
| 2939 /// m5() => ++unresolved.Foo.bar; | 3491 /// m5() => ++unresolved.Foo.bar; |
| 2940 /// m6() => ++C.unresolved; | 3492 /// m6() => ++C.unresolved; |
| 2941 /// m7() => ++prefix.C.unresolved; | 3493 /// m7() => ++prefix.C.unresolved; |
| 2942 /// | 3494 /// |
| 2943 // TODO(johnniwinther): Split the cases in which a prefix is resolved. | 3495 // TODO(johnniwinther): Split the cases in which a prefix is resolved. |
| 2944 R errorUnresolvedPrefix( | 3496 R visitUnresolvedPrefix( |
| 2945 Send node, | 3497 Send node, |
| 2946 Element element, | 3498 Element element, |
| 2947 IncDecOperator operator, | 3499 IncDecOperator operator, |
| 2948 A arg); | 3500 A arg); |
| 2949 | 3501 |
| 2950 /// Postfix operation on the unresolved [element]. | 3502 /// Postfix operation on a static [setter] where the getter is unresolved. |
| 3503 /// | |
| 3504 /// For instance | |
| 3505 /// class C { | |
| 3506 /// set foo(_) {} | |
| 3507 /// } | |
| 3508 /// m1() => C.foo++; | |
| 3509 /// | |
| 3510 R visitUnresolvedStaticGetterPostfix( | |
| 3511 Send node, | |
| 3512 Element element, | |
| 3513 MethodElement setter, | |
| 3514 IncDecOperator operator, | |
| 3515 A arg); | |
| 3516 | |
| 3517 /// Postfix operation on a top level [setter] where the getter is unresolved. | |
| 3518 /// | |
| 3519 /// For instance | |
| 3520 /// set foo(_) {} | |
| 3521 /// m1() => foo++; | |
| 3522 /// | |
| 3523 R visitUnresolvedTopLevelGetterPostfix( | |
| 3524 Send node, | |
| 3525 Element element, | |
| 3526 MethodElement setter, | |
| 3527 IncDecOperator operator, | |
| 3528 A arg); | |
| 3529 | |
| 3530 /// Postfix operation on a static [getter] where the setter is unresolved. | |
| 3531 /// | |
| 3532 /// For instance | |
| 3533 /// class C { | |
| 3534 /// get foo => 42; | |
| 3535 /// } | |
| 3536 /// m1() => C.foo++; | |
| 3537 /// | |
| 3538 R visitUnresolvedStaticSetterPostfix( | |
| 3539 Send node, | |
| 3540 MethodElement getter, | |
| 3541 Element element, | |
| 3542 IncDecOperator operator, | |
| 3543 A arg); | |
| 3544 | |
| 3545 /// Postfix operation on a top level [getter] where the setter is unresolved. | |
| 3546 /// | |
| 3547 /// For instance | |
| 3548 /// get foo => 42; | |
| 3549 /// m1() => foo++; | |
| 3550 /// | |
| 3551 R visitUnresolvedTopLevelSetterPostfix( | |
| 3552 Send node, | |
| 3553 MethodElement getter, | |
| 3554 Element element, | |
| 3555 IncDecOperator operator, | |
| 3556 A arg); | |
| 3557 | |
| 3558 /// Postfix operation on a static [method] where the setter is unresolved. | |
| 3559 /// | |
| 3560 /// For instance | |
| 3561 /// class C { | |
| 3562 /// foo() {} | |
| 3563 /// } | |
| 3564 /// m1() => C.foo++; | |
| 3565 /// | |
| 3566 R visitStaticMethodPostfix( | |
| 3567 Send node, | |
| 3568 MethodElement method, | |
| 3569 IncDecOperator operator, | |
| 3570 A arg); | |
| 3571 | |
| 3572 /// Postfix operation on a top level [method] where the setter is unresolved. | |
| 3573 /// | |
| 3574 /// For instance | |
| 3575 /// class C { | |
| 3576 /// foo() {} | |
| 3577 /// } | |
| 3578 /// m1() => C.foo++; | |
| 3579 /// | |
| 3580 R visitTopLevelMethodPostfix( | |
| 3581 Send node, | |
| 3582 MethodElement method, | |
| 3583 IncDecOperator operator, | |
| 3584 A arg); | |
| 3585 | |
| 3586 /// Postfix operation where both getter and setter are unresolved. | |
| 2951 /// | 3587 /// |
| 2952 /// For instance | 3588 /// For instance |
| 2953 /// class C {} | 3589 /// class C {} |
| 2954 /// m1() => unresolved++; | 3590 /// m1() => unresolved++; |
| 2955 /// m2() => prefix.unresolved++; | 3591 /// m2() => prefix.unresolved++; |
| 2956 /// m3() => Unresolved.foo++; | 3592 /// m3() => Unresolved.foo++; |
| 2957 /// m4() => unresolved.foo++; | 3593 /// m4() => unresolved.foo++; |
| 2958 /// m5() => unresolved.Foo.bar++; | 3594 /// m5() => unresolved.Foo.bar++; |
| 2959 /// m6() => C.unresolved++; | 3595 /// m6() => C.unresolved++; |
| 2960 /// m7() => prefix.C.unresolved++; | 3596 /// m7() => prefix.C.unresolved++; |
| 2961 /// | 3597 /// |
| 2962 // TODO(johnniwinther): Split the cases in which a prefix is resolved. | 3598 // TODO(johnniwinther): Split the cases in which a prefix is resolved. |
| 2963 R errorUnresolvedPostfix( | 3599 R visitUnresolvedPostfix( |
| 2964 Send node, | 3600 Send node, |
| 2965 Element element, | 3601 Element element, |
| 2966 IncDecOperator operator, | 3602 IncDecOperator operator, |
| 2967 A arg); | 3603 A arg); |
| 2968 | 3604 |
| 2969 /// Invocation of an undefined unary [operator] on [expression]. | 3605 /// Invocation of an undefined unary [operator] on [expression]. |
| 2970 R errorUndefinedUnaryExpression( | 3606 R errorUndefinedUnaryExpression( |
| 2971 Send node, | 3607 Send node, |
| 2972 Operator operator, | 3608 Operator operator, |
| 2973 Node expression, | 3609 Node expression, |
| (...skipping 733 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 3707 /// C() : this._(42); | 4343 /// C() : this._(42); |
| 3708 /// } | 4344 /// } |
| 3709 /// | 4345 /// |
| 3710 R errorUnresolvedThisConstructorInvoke( | 4346 R errorUnresolvedThisConstructorInvoke( |
| 3711 Send node, | 4347 Send node, |
| 3712 Element element, | 4348 Element element, |
| 3713 NodeList arguments, | 4349 NodeList arguments, |
| 3714 Selector selector, | 4350 Selector selector, |
| 3715 A arg); | 4351 A arg); |
| 3716 } | 4352 } |
| OLD | NEW |