@Test public void has_annotation_of_function() { FunctionDeclarationTree tree = (FunctionDeclarationTree) parse("\nfunction foo(){}"); assertThat(CheckUtils.hasAnnotation(tree, "@annotation")).isTrue(); assertThat(CheckUtils.hasAnnotation(tree, "annotation")).isTrue(); assertThat(CheckUtils.hasAnnotation(tree, "other_annotation")).isFalse(); tree = (FunctionDeclarationTree) parse("\nfunction foo(){}"); assertThat(CheckUtils.hasAnnotation(tree, "@annotation")).isFalse(); assertThat(CheckUtils.hasAnnotation(tree, "annotation")).isFalse(); }
public static boolean hasAnnotation(Tree declaration, String annotation) { if (!annotation.startsWith("@")) { annotation = "@"+annotation; } List<SyntaxTrivia> trivias = ((PHPTree) declaration).getFirstToken().trivias(); if (!trivias.isEmpty()) { return StringUtils.containsIgnoreCase(Iterables.getLast(trivias).text(), annotation); } return false; }
CheckUtils { public static boolean hasAnnotation(Tree declaration, String annotation) { if (!annotation.startsWith("@")) { annotation = "@"+annotation; } List<SyntaxTrivia> trivias = ((PHPTree) declaration).getFirstToken().trivias(); if (!trivias.isEmpty()) { return StringUtils.containsIgnoreCase(Iterables.getLast(trivias).text(), annotation); } return false; } }
CheckUtils { public static boolean hasAnnotation(Tree declaration, String annotation) { if (!annotation.startsWith("@")) { annotation = "@"+annotation; } List<SyntaxTrivia> trivias = ((PHPTree) declaration).getFirstToken().trivias(); if (!trivias.isEmpty()) { return StringUtils.containsIgnoreCase(Iterables.getLast(trivias).text(), annotation); } return false; } private  CheckUtils(); }
CheckUtils { public static boolean hasAnnotation(Tree declaration, String annotation) { if (!annotation.startsWith("@")) { annotation = "@"+annotation; } List<SyntaxTrivia> trivias = ((PHPTree) declaration).getFirstToken().trivias(); if (!trivias.isEmpty()) { return StringUtils.containsIgnoreCase(Iterables.getLast(trivias).text(), annotation); } return false; } private  CheckUtils(); static boolean isFunction(Tree tree); static String getFunctionName(FunctionTree functionDec); @Nullable static String getFunctionName(FunctionCallTree functionCall); @Nullable static String getLowerCaseFunctionName(FunctionCallTree functionCall); @Nullable static String functionName(FunctionCallTree functionCall); @Nullable static String lowerCaseFunctionName(FunctionCallTree functionCall); static Set<String> lowerCaseSet(String... names); static String getClassName(ClassDeclarationTree classDeclaration); static String getLowerCaseClassName(ClassDeclarationTree classDeclarationTree); @Nullable static String nameOf(Tree tree); static boolean isOverriding(MethodDeclarationTree declaration); static boolean isExitExpression(FunctionCallTree functionCallTree); static boolean hasModifier(ClassMemberTree tree, String toFind); static boolean hasModifier(List<SyntaxToken> modifiers, String toFind); static boolean isClosingTag(SyntaxToken token); static boolean isClosingTag(Tree tree); static Stream<String> lines(PhpFile file); static ExpressionTree skipParenthesis(ExpressionTree expr); @Nullable static ExpressionTree getForCondition(ForStatementTree tree); static String trimQuotes(String value); static String trimQuotes(LiteralTree literalTree); static boolean isFalseValue(ExpressionTree tree); static boolean isTrueValue(ExpressionTree tree); static boolean isStringLiteralWithValue(@Nullable Tree tree, String s); static boolean isNullOrEmptyString(ExpressionTree tree); static boolean hasAnnotation(Tree declaration, String annotation); static boolean isPublic(ClassMemberTree tree); static boolean isAbstract(ClassDeclarationTree tree); }
CheckUtils { public static boolean hasAnnotation(Tree declaration, String annotation) { if (!annotation.startsWith("@")) { annotation = "@"+annotation; } List<SyntaxTrivia> trivias = ((PHPTree) declaration).getFirstToken().trivias(); if (!trivias.isEmpty()) { return StringUtils.containsIgnoreCase(Iterables.getLast(trivias).text(), annotation); } return false; } private  CheckUtils(); static boolean isFunction(Tree tree); static String getFunctionName(FunctionTree functionDec); @Nullable static String getFunctionName(FunctionCallTree functionCall); @Nullable static String getLowerCaseFunctionName(FunctionCallTree functionCall); @Nullable static String functionName(FunctionCallTree functionCall); @Nullable static String lowerCaseFunctionName(FunctionCallTree functionCall); static Set<String> lowerCaseSet(String... names); static String getClassName(ClassDeclarationTree classDeclaration); static String getLowerCaseClassName(ClassDeclarationTree classDeclarationTree); @Nullable static String nameOf(Tree tree); static boolean isOverriding(MethodDeclarationTree declaration); static boolean isExitExpression(FunctionCallTree functionCallTree); static boolean hasModifier(ClassMemberTree tree, String toFind); static boolean hasModifier(List<SyntaxToken> modifiers, String toFind); static boolean isClosingTag(SyntaxToken token); static boolean isClosingTag(Tree tree); static Stream<String> lines(PhpFile file); static ExpressionTree skipParenthesis(ExpressionTree expr); @Nullable static ExpressionTree getForCondition(ForStatementTree tree); static String trimQuotes(String value); static String trimQuotes(LiteralTree literalTree); static boolean isFalseValue(ExpressionTree tree); static boolean isTrueValue(ExpressionTree tree); static boolean isStringLiteralWithValue(@Nullable Tree tree, String s); static boolean isNullOrEmptyString(ExpressionTree tree); static boolean hasAnnotation(Tree declaration, String annotation); static boolean isPublic(ClassMemberTree tree); static boolean isAbstract(ClassDeclarationTree tree); static final ImmutableList<Kind> FUNCTION_KINDS; static final ImmutableMap<String, String> SUPERGLOBALS_BY_OLD_NAME; static final ImmutableSet<String> SUPERGLOBALS; }