| Index: test/regression/108.unit
|
| diff --git a/test/regression/108.unit b/test/regression/108.unit
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..9349cb647c3adc8c9dc3059d34ba9370427b2ac7
|
| --- /dev/null
|
| +++ b/test/regression/108.unit
|
| @@ -0,0 +1,257 @@
|
| +>>>
|
| +class ResolutionCopier {
|
| + @override
|
| + bool visitClassDeclaration(ClassDeclaration node) {
|
| + ClassDeclaration toNode = this._toNode as ClassDeclaration;
|
| + return javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(javaBooleanAnd(javaBooleanAnd(
|
| + javaBooleanAnd(javaBooleanAnd(
|
| + javaBooleanAnd(javaBooleanAnd(javaBooleanAnd(
|
| + _isEqualNodes(node.documentationComment,
|
| + toNode.documentationComment),
|
| + _isEqualNodeLists(
|
| + node.metadata, toNode.metadata)),
|
| + _isEqualTokens(node.abstractKeyword,
|
| + toNode.abstractKeyword)), _isEqualTokens(
|
| + node.classKeyword, toNode.classKeyword)),
|
| + _isEqualNodes(
|
| + node.name, toNode.name)), _isEqualNodes(
|
| + node.typeParameters, toNode.typeParameters)),
|
| + _isEqualNodes(
|
| + node.extendsClause, toNode.extendsClause)),
|
| + _isEqualNodes(
|
| + node.withClause, toNode.withClause)), _isEqualNodes(
|
| + node.implementsClause, toNode.implementsClause)),
|
| + _isEqualTokens(node.leftBracket, toNode.leftBracket)),
|
| + _isEqualNodeLists(
|
| + node.members,
|
| + toNode.members)),
|
| + _isEqualTokens(
|
| + node.rightBracket,
|
| + toNode.rightBracket));
|
| + }
|
| +}
|
| +<<<
|
| +class ResolutionCopier {
|
| + @override
|
| + bool visitClassDeclaration(ClassDeclaration node) {
|
| + ClassDeclaration toNode = this._toNode as ClassDeclaration;
|
| + return javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(javaBooleanAnd(javaBooleanAnd(
|
| + javaBooleanAnd(javaBooleanAnd(
|
| + javaBooleanAnd(javaBooleanAnd(javaBooleanAnd(
|
| + _isEqualNodes(node.documentationComment,
|
| + toNode.documentationComment),
|
| + _isEqualNodeLists(
|
| + node.metadata, toNode.metadata)),
|
| + _isEqualTokens(node.abstractKeyword,
|
| + toNode.abstractKeyword)), _isEqualTokens(
|
| + node.classKeyword, toNode.classKeyword)),
|
| + _isEqualNodes(
|
| + node.name, toNode.name)), _isEqualNodes(
|
| + node.typeParameters, toNode.typeParameters)),
|
| + _isEqualNodes(
|
| + node.extendsClause, toNode.extendsClause)),
|
| + _isEqualNodes(
|
| + node.withClause, toNode.withClause)), _isEqualNodes(
|
| + node.implementsClause, toNode.implementsClause)),
|
| + _isEqualTokens(node.leftBracket, toNode.leftBracket)),
|
| + _isEqualNodeLists(
|
| + node.members,
|
| + toNode.members)),
|
| + _isEqualTokens(
|
| + node.rightBracket,
|
| + toNode.rightBracket));
|
| + }
|
| +}
|
| +>>> pathologically deep
|
| +class ResolutionCopier {
|
| + @override
|
| + bool visitClassDeclaration(ClassDeclaration node) {
|
| + ClassDeclaration toNode = this._toNode as ClassDeclaration;
|
| + return javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(javaBooleanAnd(javaBooleanAnd(
|
| + javaBooleanAnd(javaBooleanAnd(
|
| + javaBooleanAnd(javaBooleanAnd(javaBooleanAnd(
|
| + _isEqualNodes(node.documentationComment,
|
| + toNode.documentationComment),
|
| + _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, _isEqualNodeLists(
|
| + node.metadata, toNode.metadata))))))))))))))))))))))),
|
| + _isEqualTokens(node.abstractKeyword,
|
| + toNode.abstractKeyword)), _isEqualTokens(
|
| + node.classKeyword, toNode.classKeyword)),
|
| + _isEqualNodes(
|
| + node.name, toNode.name)), _isEqualNodes(
|
| + node.typeParameters, toNode.typeParameters)),
|
| + _isEqualNodes(
|
| + node.extendsClause, toNode.extendsClause)),
|
| + _isEqualNodes(
|
| + node.withClause, toNode.withClause)), _isEqualNodes(
|
| + node.implementsClause, toNode.implementsClause)),
|
| + _isEqualTokens(node.leftBracket, toNode.leftBracket)),
|
| + _isEqualNodeLists(
|
| + node.members,
|
| + toNode.members)),
|
| + _isEqualTokens(
|
| + node.rightBracket,
|
| + toNode.rightBracket));
|
| + }
|
| +}
|
| +<<<
|
| +class ResolutionCopier {
|
| + @override
|
| + bool visitClassDeclaration(ClassDeclaration node) {
|
| + ClassDeclaration toNode = this._toNode as ClassDeclaration;
|
| + return javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + javaBooleanAnd(
|
| + _isEqualNodes(
|
| + node.documentationComment,
|
| + toNode.documentationComment),
|
| + _isEqualNodeLists(
|
| + node.metadata,
|
| + _isEqualNodeLists(
|
| + node.metadata,
|
| + _isEqualNodeLists(
|
| + node.metadata,
|
| + _isEqualNodeLists(
|
| + node.metadata,
|
| + _isEqualNodeLists(
|
| + node.metadata,
|
| + _isEqualNodeLists(
|
| + node.metadata,
|
| + _isEqualNodeLists(
|
| + node.metadata,
|
| + _isEqualNodeLists(
|
| + node.metadata,
|
| + _isEqualNodeLists(
|
| + node.metadata,
|
| + _isEqualNodeLists(
|
| + node.metadata,
|
| + _isEqualNodeLists(
|
| + node.metadata,
|
| + _isEqualNodeLists(
|
| + node.metadata,
|
| + _isEqualNodeLists(
|
| + node.metadata,
|
| + _isEqualNodeLists(node.metadata, _isEqualNodeLists(node.metadata, _isEqualNodeLists(node.metadata, _isEqualNodeLists(node.metadata, _isEqualNodeLists(node.metadata, _isEqualNodeLists(node.metadata, _isEqualNodeLists(node.metadata, _isEqualNodeLists(node.metadata, _isEqualNodeLists(node.metadata, toNode.metadata))))))))))))))))))))))),
|
| + _isEqualTokens(
|
| + node.abstractKeyword,
|
| + toNode.abstractKeyword)),
|
| + _isEqualTokens(
|
| + node.classKeyword,
|
| + toNode.classKeyword)),
|
| + _isEqualNodes(
|
| + node.name,
|
| + toNode.name)),
|
| + _isEqualNodes(
|
| + node.typeParameters,
|
| + toNode.typeParameters)),
|
| + _isEqualNodes(
|
| + node.extendsClause,
|
| + toNode.extendsClause)),
|
| + _isEqualNodes(
|
| + node.withClause,
|
| + toNode.withClause)),
|
| + _isEqualNodes(
|
| + node.implementsClause,
|
| + toNode.implementsClause)),
|
| + _isEqualTokens(
|
| + node.leftBracket,
|
| + toNode.leftBracket)),
|
| + _isEqualNodeLists(
|
| + node.members,
|
| + toNode.members)),
|
| + _isEqualTokens(
|
| + node.rightBracket,
|
| + toNode.rightBracket));
|
| + }
|
| +}
|
| +>>>
|
| +class ElementBinder {
|
| + DirectiveInjector bind(
|
| + View view, Scope scope, DirectiveInjector parentInjector, dom.Node node) {
|
| + if (bindAssignableProps.isNotEmpty) {
|
| + _bindAssignablePropsOn.forEach((String eventName) => node
|
| + .addEventListener(eventName, (_) => zone.run(() => bindAssignableProps
|
| + .forEach((propAndExp) => propAndExp[1].assign(
|
| + scope.context, jsNode[propAndExp[0]])))));
|
| + }
|
| + }
|
| +}
|
| +<<<
|
| +class ElementBinder {
|
| + DirectiveInjector bind(
|
| + View view, Scope scope, DirectiveInjector parentInjector, dom.Node node) {
|
| + if (bindAssignableProps.isNotEmpty) {
|
| + _bindAssignablePropsOn
|
| + .forEach(
|
| + (String eventName) =>
|
| + node
|
| + .addEventListener(
|
| + eventName,
|
| + (_) =>
|
| + zone.run(() => bindAssignableProps.forEach(
|
| + (propAndExp) => propAndExp[1].assign(
|
| + scope.context, jsNode[propAndExp[0]])))));
|
| + }
|
| + }
|
| +}
|
| +>>>
|
| +async.Future<List<dom.StyleElement>> call(String tag, List<String> cssUrls, {Type type}) =>
|
| +(DDC$RT.cast(async.Future.wait((DDC$RT.cast(cssUrls.map((url) => _styleElement(tag,
|
| +(DDC$RT.cast(url, String, key: "Cast failed: package:angular/core_dom/component_css_loader.dart:17:65")), type)),
|
| +DDC$RT.type((Iterable<Future<dynamic>> _) {}), key: "Cast failed: package:angular/core_dom/component_css_loader.dart:17:25"))),
|
| +DDC$RT.type((Future<List<StyleElement>> _) {}), key: "Cast failed: package:angular/core_dom/component_css_loader.dart:17:7"));
|
| +<<<
|
| +async.Future<List<dom.StyleElement>> call(
|
| + String tag,
|
| + List<String> cssUrls,
|
| + {Type type}) =>
|
| + (DDC$RT
|
| + .cast(
|
| + async.Future
|
| + .wait((DDC$RT.cast(cssUrls.map((url) => _styleElement(tag,
|
| + (DDC$RT.cast(url, String,
|
| + key: "Cast failed: package:angular/core_dom/component_css_loader.dart:17:65")),
|
| + type)), DDC$RT.type((Iterable<Future<dynamic>> _) {
|
| +}), key: "Cast failed: package:angular/core_dom/component_css_loader.dart:17:25"))),
|
| + DDC$RT
|
| + .type((Future<List<StyleElement>> _) {
|
| +}),
|
| + key: "Cast failed: package:angular/core_dom/component_css_loader.dart:17:7"));
|
|
|