@Override public void visitMethod(@NonNull JavaContext context, AstVisitor visitor, @NonNull MethodInvocation node) { VariableReference ref = (VariableReference) node.astOperand(); if (!"QMUILog".equals(ref.astIdentifier().astValue())) { return; } StrictListAccessor<Expression, MethodInvocation> args = node.astArguments(); if (args.isEmpty()) { return; } for (Expression expression : args) { String input = expression.toString(); if (input != null && input.contains("fuck")) { context.report( ISSUE_F_WORD, expression, context.getLocation(expression), "\uD83D\uDD95"); } } } }
private char[][] chain(Iterable<lombok.ast.Identifier> parts, int size) { char[][] c = new char[size][]; int i = 0; for (lombok.ast.Identifier part : parts) { c[i++] = part.astValue().toCharArray(); } return c; }
private char[][] chain(Iterable<lombok.ast.Identifier> parts, int size) { char[][] c = new char[size][]; int i = 0; for (lombok.ast.Identifier part : parts) { c[i++] = part.astValue().toCharArray(); } return c; }
@CopyMethod static String asFullyQualifiedName(ImportDeclaration self) { StringBuilder result = new StringBuilder(); for (Identifier part : self.astParts()) { if (result.length() != 0) result.append("."); result.append(part.astValue()); } if (self.astStarImport()) result.append(".*"); return result.toString(); } }
@Override public boolean visitMethodInvocation(MethodInvocation node) { if (node == mTarget) { mSeenTarget = true; } else if ((mSeenTarget || node.astOperand() == mTarget) && "show".equals(node.astName().astValue())) { //$NON-NLS-1$ // TODO: Do more flow analysis to see whether we're really calling show // on the right type of object? mFound = true; } return true; }
@CopyMethod static String getDescription(EnumConstant self) { return self.astName().astValue(); } }
@CopyMethod static String getDescription(MethodInvocation self) { return self.astName().astValue(); } }
@CopyMethod static String getDescription(AnnotationElement self) { try { return self.astName().astValue(); } catch (NullPointerException e) { return null; } }
@CopyMethod static String getDescription(AnnotationElement self) { try { return self.astName().astValue(); } catch (NullPointerException e) { return null; } }
@CopyMethod static String getDescription(MethodDeclaration self) { return self.astMethodName().astValue(); } }
@CopyMethod static String getDescription(TypeVariable self) { return self.astName().astValue(); } }
@CopyMethod static List<Node> getValues(Annotation self, String key) { for (AnnotationElement elem : self.astElements()) { if (key == null && elem.astName() == null) return elem.getValues(); if (key != null && elem.astName() != null && elem.astName().astValue().equals(key)) return elem.getValues(); } return ImmutableList.of(); } }
@CopyMethod static List<Node> getValues(Annotation self, String key) { for (AnnotationElement elem : self.astElements()) { if (key == null && elem.astName() == null) return elem.getValues(); if (key != null && elem.astName() != null && elem.astName().astValue().equals(key)) return elem.getValues(); } return ImmutableList.of(); } }
@CopyMethod static boolean isPrimitive(TypeReference self) { if (self.astArrayDimensions() > 0 || self.rawParts().size() != 1) return false; try { String name = self.astParts().first().astIdentifier().astValue(); return name.indexOf(' ') == -1 && PRIMITIVE_NAMES.contains(" " + name + " "); } catch (NullPointerException e) { return false; } }
private static boolean isPrimitive(TypeReference ref, String primitiveName) { if (ref.astArrayDimensions() > 0 || ref.rawParts().size() != 1) return false; try { String name = ref.astParts().first().astIdentifier().astValue(); return name.equals(primitiveName); } catch (NullPointerException e) { return false; } }
private static boolean isPrimitive(TypeReference ref, String primitiveName) { if (ref.astArrayDimensions() > 0 || ref.rawParts().size() != 1) return false; try { String name = ref.astParts().first().astIdentifier().astValue(); return name.equals(primitiveName); } catch (NullPointerException e) { return false; } }
private static boolean isPrimitive(TypeReference ref, String primitiveName) { if (ref.astArrayDimensions() > 0 || ref.rawParts().size() != 1) return false; try { String name = ref.astParts().first().astIdentifier().astValue(); return name.equals(primitiveName); } catch (NullPointerException e) { return false; } }
@CopyMethod static boolean isVoid(TypeReference self) { if (self.rawParts().size() != 1) return false; try { String name = self.astParts().first().astIdentifier().astValue(); return name.equals("void"); } catch (NullPointerException e) { return false; } }
@Override public void visitImport(JCImport node) { ImportDeclaration imp = new ImportDeclaration(); fillWithIdentifiers(node.getQualifiedIdentifier(), imp.astParts()); Identifier last = imp.astParts().last(); if (last != null && "*".equals(last.astValue())) { imp.astParts().remove(last); imp.astStarImport(true); setConversionPositionInfo(imp, ".*", last.getPosition()); } imp.astStaticImport(node.isStatic()); set(node, imp); }
public Node createPrimitiveType(String text) { Identifier identifier = posify(new Identifier().astValue(text)); TypeReferencePart typeReferencePart = posify(new TypeReferencePart() .astIdentifier(identifier)); return posify(new TypeReference().rawParts().addToStart(typeReferencePart)); }