Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(430)

Side by Side Diff: pkg/compiler/lib/src/serialization/equivalence.dart

Issue 2567133002: Add support for the new function-type syntax. (Closed)
Patch Set: Remove obsolete named argument. Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, 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 /// Functions for asserting equivalence across serialization. 5 /// Functions for asserting equivalence across serialization.
6 6
7 library dart2js.serialization.equivalence; 7 library dart2js.serialization.equivalence;
8 8
9 import '../closure.dart'; 9 import '../closure.dart';
10 import '../common/resolution.dart'; 10 import '../common/resolution.dart';
(...skipping 1930 matching lines...) Expand 10 before | Expand all | Expand 10 after
1941 testTokens(node1, node2, 'finallyKeyword', node1.finallyKeyword, 1941 testTokens(node1, node2, 'finallyKeyword', node1.finallyKeyword,
1942 node2.finallyKeyword) && 1942 node2.finallyKeyword) &&
1943 testNodes(node1, node2, 'tryBlock', node1.tryBlock, node2.tryBlock) && 1943 testNodes(node1, node2, 'tryBlock', node1.tryBlock, node2.tryBlock) &&
1944 testNodes(node1, node2, 'catchBlocks', node1.catchBlocks, 1944 testNodes(node1, node2, 'catchBlocks', node1.catchBlocks,
1945 node2.catchBlocks) && 1945 node2.catchBlocks) &&
1946 testNodes(node1, node2, 'finallyBlock', node1.finallyBlock, 1946 testNodes(node1, node2, 'finallyBlock', node1.finallyBlock,
1947 node2.finallyBlock); 1947 node2.finallyBlock);
1948 } 1948 }
1949 1949
1950 @override 1950 @override
1951 bool visitTypeAnnotation(TypeAnnotation node1, TypeAnnotation node2) { 1951 bool visitNominalTypeAnnotation(
1952 NominalTypeAnnotation node1, NominalTypeAnnotation node2) {
1952 return testNodes( 1953 return testNodes(
1953 node1, node2, 'typeName', node1.typeName, node2.typeName) && 1954 node1, node2, 'typeName', node1.typeName, node2.typeName) &&
1954 testNodes(node1, node2, 'typeArguments', node1.typeArguments, 1955 testNodes(node1, node2, 'typeArguments', node1.typeArguments,
1955 node2.typeArguments); 1956 node2.typeArguments);
1956 } 1957 }
1957 1958
1958 @override 1959 @override
1960 bool visitFunctionTypeAnnotation(
1961 FunctionTypeAnnotation node1, FunctionTypeAnnotation node2) {
1962 return testNodes(
1963 node1, node2, 'returnType', node1.returnType, node2.returnType) &&
1964 testNodes(node1, node2, 'formals', node1.formals, node2.formals) &&
1965 testNodes(node1, node2, 'typeParameters', node1.typeParameters,
1966 node2.typeParameters);
1967 }
1968
1969 @override
1959 bool visitTypeVariable(TypeVariable node1, TypeVariable node2) { 1970 bool visitTypeVariable(TypeVariable node1, TypeVariable node2) {
1960 return testNodes(node1, node2, 'name', node1.name, node2.name) && 1971 return testNodes(node1, node2, 'name', node1.name, node2.name) &&
1961 testNodes(node1, node2, 'bound', node1.bound, node2.bound); 1972 testNodes(node1, node2, 'bound', node1.bound, node2.bound);
1962 } 1973 }
1963 1974
1964 @override 1975 @override
1965 bool visitTypedef(Typedef node1, Typedef node2) { 1976 bool visitTypedef(Typedef node1, Typedef node2) {
1966 return testTokens(node1, node2, 'typedefKeyword', node1.typedefKeyword, 1977 return testTokens(node1, node2, 'typedefKeyword', node1.typedefKeyword,
1967 node2.typedefKeyword) && 1978 node2.typedefKeyword) &&
1968 testTokens(node1, node2, 'endToken', node1.endToken, node2.endToken) && 1979 testTokens(node1, node2, 'endToken', node1.endToken, node2.endToken) &&
1969 testNodes( 1980 testNodes(
1970 node1, node2, 'returnType', node1.returnType, node2.returnType) && 1981 node1, node2, 'returnType', node1.returnType, node2.returnType) &&
1971 testNodes(node1, node2, 'name', node1.name, node2.name) && 1982 testNodes(node1, node2, 'name', node1.name, node2.name) &&
1972 testNodes(node1, node2, 'typeParameters', node1.typeParameters, 1983 testNodes(node1, node2, 'typeParameters', node1.templateParameters,
1973 node2.typeParameters) && 1984 node2.templateParameters) &&
1974 testNodes(node1, node2, 'formals', node1.formals, node2.formals); 1985 testNodes(node1, node2, 'formals', node1.formals, node2.formals);
1975 } 1986 }
1976 1987
1977 @override 1988 @override
1978 bool visitVariableDefinitions( 1989 bool visitVariableDefinitions(
1979 VariableDefinitions node1, VariableDefinitions node2) { 1990 VariableDefinitions node1, VariableDefinitions node2) {
1980 return testNodes( 1991 return testNodes(
1981 node1, node2, 'metadata', node1.metadata, node2.metadata) && 1992 node1, node2, 'metadata', node1.metadata, node2.metadata) &&
1982 testNodes(node1, node2, 'type', node1.type, node2.type) && 1993 testNodes(node1, node2, 'type', node1.type, node2.type) &&
1983 testNodes( 1994 testNodes(
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
2028 } 2039 }
2029 2040
2030 bool areMetadataAnnotationsEquivalent( 2041 bool areMetadataAnnotationsEquivalent(
2031 MetadataAnnotation metadata1, MetadataAnnotation metadata2) { 2042 MetadataAnnotation metadata1, MetadataAnnotation metadata2) {
2032 if (metadata1 == metadata2) return true; 2043 if (metadata1 == metadata2) return true;
2033 if (metadata1 == null || metadata2 == null) return false; 2044 if (metadata1 == null || metadata2 == null) return false;
2034 return areElementsEquivalent( 2045 return areElementsEquivalent(
2035 metadata1.annotatedElement, metadata2.annotatedElement) && 2046 metadata1.annotatedElement, metadata2.annotatedElement) &&
2036 areConstantsEquivalent(metadata1.constant, metadata2.constant); 2047 areConstantsEquivalent(metadata1.constant, metadata2.constant);
2037 } 2048 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698