/** * Returns this modifier's name in lowercase. */ @Override public String toString() { if (lowercase == null) { lowercase = name().toLowerCase(java.util.Locale.US); } return lowercase; }
ModifierKind modifierKind = extendedModifier.getKind(); if (modifierKind == ModifierKind.PUBLIC || modifierKind == ModifierKind.PRIVATE || modifierKind == ModifierKind.PROTECTED) { firstPosition.add(modifierKind.toString()); } else if (modifierKind == ModifierKind.ABSTRACT || modifierKind == ModifierKind.STATIC) { secondPosition.add(modifierKind.toString()); } else { thirdPosition.add(modifierKind.toString());
@Override public int hashCode() { int result = (implicit ? 1 : 0); result = 31 * result + (kind != null ? kind.hashCode() : 0); return result; }
@Override public boolean equals(Object obj) { if (!(obj instanceof CtModifierHandler)) { return false; } final CtModifierHandler other = (CtModifierHandler) obj; if (getVisibility() == null) { if (other.getVisibility() != null) { return false; } } else if (other.getVisibility() == null) { return false; } else if (!getVisibility().equals(other.getVisibility())) { return false; } if (getModifiers().size() != other.getModifiers().size()) { return false; } return getModifiers().containsAll(other.getModifiers()); } }
@Override public void scanCtModifiable(CtModifiable m) { final CtModifiable peek = (CtModifiable) this.other; if (m.getVisibility() == null) { if (peek.getVisibility() != null) { setNotEqual(CtRole.MODIFIER); } } else if (peek.getVisibility() == null) { setNotEqual(CtRole.MODIFIER); } else if (!m.getVisibility().equals(peek.getVisibility())) { setNotEqual(CtRole.MODIFIER); } if (m.getModifiers().size() != peek.getModifiers().size()) { setNotEqual(CtRole.MODIFIER); } if (!m.getModifiers().containsAll(peek.getModifiers())) { setNotEqual(CtRole.MODIFIER); } super.scanCtModifiable(m); }
@Override public boolean isTest(CtMethod<?> candidate) { if (candidate == null) { return false; } // if the test method has @Ignore, is not a test if (isIgnored(candidate)) { return false; } // if the test method is not visible, or has no body, or has parameters, is not a test if (candidate.isImplicit() || candidate.getVisibility() == null || !candidate.getVisibility().equals(ModifierKind.PUBLIC) || candidate.getBody() == null || candidate.getBody().getStatements().size() == 0 || !candidate.getParameters().isEmpty()) { return false; } // is a test according to the JUnit version return isATest(candidate); }
/** verifies that the explicit modifier should be present in the original source code */ public void checkModifiers() { for (CtModifiable modifiable : _rootPackage.getElements(new TypeFilter<>(CtModifiable.class))) { for (CtExtendedModifier modifier : modifiable.getExtendedModifiers()) { if (modifier.isImplicit()) { continue; } SourcePosition position = modifier.getPosition(); CompilationUnit compilationUnit = position.getCompilationUnit(); String originalSourceCode = compilationUnit.getOriginalSourceCode(); assertEquals(modifier.getKind().toString(), originalSourceCode.substring(position.getSourceStart(), position.getSourceEnd() + 1)); } } }
if ((method.getVisibility() == null || method.getVisibility().equals(ModifierKind.PUBLIC)) && !"Object".equals(method.getDeclaringType().getSimpleName())// Ignoring objects ) {
public DefaultJavaPrettyPrinter writeModifiers(CtModifiable m) { for (ModifierKind mod : m.getModifiers()) { write(mod.toString() + " "); } return this; }
/** * Returns this modifier's name in lowercase. */ @Override public String toString() { if (lowercase == null) { lowercase = name().toLowerCase(java.util.Locale.US); } return lowercase; } }
@Override public void scanCtModifiable(CtModifiable m) { ITree modifiers = builder.createNode("Modifiers", ""); modifiers.setMetadata(SpoonGumTreeBuilder.SPOON_OBJECT, m); // ensuring an order (instead of hashset) // otherwise some flaky tests in CI Set<ModifierKind> modifiers1 = new TreeSet<>(new Comparator<ModifierKind>() { @Override public int compare(ModifierKind o1, ModifierKind o2) { return o1.name().compareTo(o2.name()); } }); modifiers1.addAll(m.getModifiers()); for (ModifierKind kind : modifiers1) { ITree modifier = builder.createNode("Modifier", kind.toString()); modifier.setMetadata(SpoonGumTreeBuilder.SPOON_OBJECT, m); modifiers.addChild(modifier); } builder.addSiblingNode(modifiers); }
@Override public void scanCtModifiable(CtModifiable m) { ITree modifiers = builder.createNode("Modifiers", ""); modifiers.setMetadata(SpoonGumTreeBuilder.SPOON_OBJECT, m); // ensuring an order (instead of hashset) // otherwise some flaky tests in CI Set<ModifierKind> modifiers1 = new TreeSet<>(new Comparator<ModifierKind>() { @Override public int compare(ModifierKind o1, ModifierKind o2) { return o1.name().compareTo(o2.name()); } }); modifiers1.addAll(m.getModifiers()); for (ModifierKind kind : modifiers1) { ITree modifier = builder.createNode("Modifier", kind.toString()); modifier.setMetadata(SpoonGumTreeBuilder.SPOON_OBJECT, m); modifiers.addChild(modifier); } builder.addSiblingNode(modifiers); }