blob: 84567e15d949d5df94b93c221b9d9574bc6f7a71 [file] [log] [blame]
// Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
import 'package:analyzer/dart/ast/ast.dart';
import 'package:test/test.dart';
const isAdjacentStrings = TypeMatcher<AdjacentStrings>();
const isAnnotatedNode = TypeMatcher<AnnotatedNode>();
const isAnnotation = TypeMatcher<Annotation>();
const isArgumentList = TypeMatcher<ArgumentList>();
const isAsExpression = TypeMatcher<AsExpression>();
const isAssertInitializer = TypeMatcher<AssertInitializer>();
const isAssertion = TypeMatcher<Assertion>();
const isAssertStatement = TypeMatcher<AssertStatement>();
const isAssignmentExpression = TypeMatcher<AssignmentExpression>();
const isAwaitExpression = TypeMatcher<AwaitExpression>();
const isBinaryExpression = TypeMatcher<BinaryExpression>();
const isBlock = TypeMatcher<Block>();
const isBlockFunctionBody = TypeMatcher<BlockFunctionBody>();
const isBooleanLiteral = TypeMatcher<BooleanLiteral>();
const isBreakStatement = TypeMatcher<BreakStatement>();
const isCascadeExpression = TypeMatcher<CascadeExpression>();
const isCatchClause = TypeMatcher<CatchClause>();
const isClassDeclaration = TypeMatcher<ClassDeclaration>();
const isClassMember = TypeMatcher<ClassMember>();
const isClassOrMixinDeclaration = TypeMatcher<ClassOrMixinDeclaration>();
const isClassTypeAlias = TypeMatcher<ClassTypeAlias>();
const isCombinator = TypeMatcher<Combinator>();
const isComment = TypeMatcher<Comment>();
const isCommentReference = TypeMatcher<CommentReference>();
const isCompilationUnit = TypeMatcher<CompilationUnit>();
const isCompilationUnitMember = TypeMatcher<CompilationUnitMember>();
const isConditionalExpression = TypeMatcher<ConditionalExpression>();
const isConfiguration = TypeMatcher<Configuration>();
const isConstructorDeclaration = TypeMatcher<ConstructorDeclaration>();
const isConstructorFieldInitializer =
TypeMatcher<ConstructorFieldInitializer>();
const isConstructorInitializer = TypeMatcher<ConstructorInitializer>();
const isConstructorName = TypeMatcher<ConstructorName>();
const isConstructorReferenceNode = TypeMatcher<ConstructorReferenceNode>();
const isContinueStatement = TypeMatcher<ContinueStatement>();
const isDeclaration = TypeMatcher<Declaration>();
const isDeclaredIdentifier = TypeMatcher<DeclaredIdentifier>();
const isDefaultFormalParameter = TypeMatcher<DefaultFormalParameter>();
const isDirective = TypeMatcher<Directive>();
const isDoStatement = TypeMatcher<DoStatement>();
const isDottedName = TypeMatcher<DottedName>();
const isDoubleLiteral = TypeMatcher<DoubleLiteral>();
const isEmptyFunctionBody = TypeMatcher<EmptyFunctionBody>();
const isEmptyStatement = TypeMatcher<EmptyStatement>();
const isEnumConstantDeclaration = TypeMatcher<EnumConstantDeclaration>();
const isEnumDeclaration = TypeMatcher<EnumDeclaration>();
const isExportDirective = TypeMatcher<ExportDirective>();
const isExpression = TypeMatcher<Expression>();
const isExpressionFunctionBody = TypeMatcher<ExpressionFunctionBody>();
const isExpressionStatement = TypeMatcher<ExpressionStatement>();
const isExtendsClause = TypeMatcher<ExtendsClause>();
const isExtensionOverride = TypeMatcher<ExtensionOverride>();
const isFieldDeclaration = TypeMatcher<FieldDeclaration>();
const isFieldFormalParameter = TypeMatcher<FieldFormalParameter>();
const isFormalParameter = TypeMatcher<FormalParameter>();
const isFormalParameterList = TypeMatcher<FormalParameterList>();
const isFunctionBody = TypeMatcher<FunctionBody>();
const isFunctionDeclaration = TypeMatcher<FunctionDeclaration>();
const isFunctionDeclarationStatement =
TypeMatcher<FunctionDeclarationStatement>();
const isFunctionExpression = TypeMatcher<FunctionExpression>();
const isFunctionExpressionInvocation =
TypeMatcher<FunctionExpressionInvocation>();
const isFunctionReference = TypeMatcher<FunctionReference>();
const isFunctionTypeAlias = TypeMatcher<FunctionTypeAlias>();
const isFunctionTypedFormalParameter =
TypeMatcher<FunctionTypedFormalParameter>();
const isGenericFunctionType = TypeMatcher<GenericFunctionType>();
const isGenericTypeAlias = TypeMatcher<GenericTypeAlias>();
const isHideCombinator = TypeMatcher<HideCombinator>();
const isIdentifier = TypeMatcher<Identifier>();
const isIfStatement = TypeMatcher<IfStatement>();
const isImplementsClause = TypeMatcher<ImplementsClause>();
const isImportDirective = TypeMatcher<ImportDirective>();
const isIndexExpression = TypeMatcher<IndexExpression>();
const isInstanceCreationExpression = TypeMatcher<InstanceCreationExpression>();
const isIntegerLiteral = TypeMatcher<IntegerLiteral>();
const isInterpolationElement = TypeMatcher<InterpolationElement>();
const isInterpolationExpression = TypeMatcher<InterpolationExpression>();
const isInterpolationString = TypeMatcher<InterpolationString>();
const isInvocationExpression = TypeMatcher<InvocationExpression>();
const isIsExpression = TypeMatcher<IsExpression>();
const isLabel = TypeMatcher<Label>();
const isLabeledStatement = TypeMatcher<LabeledStatement>();
const isLibraryDirective = TypeMatcher<LibraryDirective>();
const isLibraryIdentifier = TypeMatcher<LibraryIdentifier>();
const isListLiteral = TypeMatcher<ListLiteral>();
const isLiteral = TypeMatcher<Literal>();
const isMapLiteralEntry = TypeMatcher<MapLiteralEntry>();
const isMethodDeclaration = TypeMatcher<MethodDeclaration>();
const isMethodInvocation = TypeMatcher<MethodInvocation>();
const isMethodReferenceExpression = TypeMatcher<MethodReferenceExpression>();
const isMixinDeclaration = TypeMatcher<MixinDeclaration>();
const isNamedCompilationUnitMember = TypeMatcher<NamedCompilationUnitMember>();
const isNamedExpression = TypeMatcher<NamedExpression>();
const isNamedType = TypeMatcher<NamedType>();
const isNamespaceDirective = TypeMatcher<NamespaceDirective>();
const isNativeClause = TypeMatcher<NativeClause>();
const isNativeFunctionBody = TypeMatcher<NativeFunctionBody>();
const isNormalFormalParameter = TypeMatcher<NormalFormalParameter>();
const isNullLiteral = TypeMatcher<NullLiteral>();
const isOnClause = TypeMatcher<OnClause>();
const isParenthesizedExpression = TypeMatcher<ParenthesizedExpression>();
const isPartDirective = TypeMatcher<PartDirective>();
const isPartOfDirective = TypeMatcher<PartOfDirective>();
const isPostfixExpression = TypeMatcher<PostfixExpression>();
const isPrefixedIdentifier = TypeMatcher<PrefixedIdentifier>();
const isPrefixExpression = TypeMatcher<PrefixExpression>();
const isPropertyAccess = TypeMatcher<PropertyAccess>();
const isRedirectingConstructorInvocation =
TypeMatcher<RedirectingConstructorInvocation>();
const isRethrowExpression = TypeMatcher<RethrowExpression>();
const isReturnStatement = TypeMatcher<ReturnStatement>();
const isScriptTag = TypeMatcher<ScriptTag>();
const isShowCombinator = TypeMatcher<ShowCombinator>();
const isSimpleFormalParameter = TypeMatcher<SimpleFormalParameter>();
const isSimpleIdentifier = TypeMatcher<SimpleIdentifier>();
const isSimpleStringLiteral = TypeMatcher<SimpleStringLiteral>();
const isSingleStringLiteral = TypeMatcher<SingleStringLiteral>();
const isStatement = TypeMatcher<Statement>();
const isStringInterpolation = TypeMatcher<StringInterpolation>();
const isStringLiteral = TypeMatcher<StringLiteral>();
const isSuperConstructorInvocation = TypeMatcher<SuperConstructorInvocation>();
const isSuperExpression = TypeMatcher<SuperExpression>();
const isSwitchCase = TypeMatcher<SwitchCase>();
const isSwitchDefault = TypeMatcher<SwitchDefault>();
const isSwitchMember = TypeMatcher<SwitchMember>();
const isSwitchStatement = TypeMatcher<SwitchStatement>();
const isSymbolLiteral = TypeMatcher<SymbolLiteral>();
const isThisExpression = TypeMatcher<ThisExpression>();
const isThrowExpression = TypeMatcher<ThrowExpression>();
const isTopLevelVariableDeclaration =
TypeMatcher<TopLevelVariableDeclaration>();
const isTryStatement = TypeMatcher<TryStatement>();
const isTypeAlias = TypeMatcher<TypeAlias>();
const isTypeAnnotation = TypeMatcher<TypeAnnotation>();
const isTypeArgumentList = TypeMatcher<TypeArgumentList>();
const isTypedLiteral = TypeMatcher<TypedLiteral>();
const isTypeParameter = TypeMatcher<TypeParameter>();
const isTypeParameterList = TypeMatcher<TypeParameterList>();
const isUriBasedDirective = TypeMatcher<UriBasedDirective>();
const isVariableDeclaration = TypeMatcher<VariableDeclaration>();
const isVariableDeclarationList = TypeMatcher<VariableDeclarationList>();
const isVariableDeclarationStatement =
TypeMatcher<VariableDeclarationStatement>();
const isWhileStatement = TypeMatcher<WhileStatement>();
const isWithClause = TypeMatcher<WithClause>();
const isYieldStatement = TypeMatcher<YieldStatement>();
/// TODO(paulberry): remove the explicit type `Matcher` once an SDK has been
/// released that includes ba5644b76cb811e8f01ffb375b87d20d6295749c.
final Matcher isForEachStatement = predicate(
(Object o) => o is ForStatement && o.forLoopParts is ForEachParts);
/// TODO(paulberry): remove the explicit type `Matcher` once an SDK has been
/// released that includes ba5644b76cb811e8f01ffb375b87d20d6295749c.
final Matcher isForStatement =
predicate((Object o) => o is ForStatement && o.forLoopParts is ForParts);
/// TODO(paulberry): remove the explicit type `Matcher` once an SDK has been
/// released that includes ba5644b76cb811e8f01ffb375b87d20d6295749c.
final Matcher isMapLiteral =
predicate((Object o) => o is SetOrMapLiteral && o.isMap);
/// TODO(paulberry): remove the explicit type `Matcher` once an SDK has been
/// released that includes ba5644b76cb811e8f01ffb375b87d20d6295749c.
final Matcher isSetLiteral =
predicate((Object o) => o is SetOrMapLiteral && o.isSet);