private static boolean hasName(DocElement element, String name) { assert element != null; assert name != null; switch (element.getModelKind()) { case SIMPLE_NAME: return name.equals(((SimpleName) element).getToken()); case DOC_TEXT: return name.equals(((DocText) element).getString()); default: return false; } }
private MethodDeclaration makeInterfaceMethod(ModelFactory f, MethodDeclaration method) { assert f != null; assert method != null; return f.newMethodDeclaration( method.getJavadoc(), filterInterfaceMethodModifiers(method.getModifiers()), method.getTypeParameters(), method.getReturnType(), method.getName(), method.getFormalParameters(), 0, method.getExceptionTypes(), null); }
/** * Returns the qualified name of processing type. * @return the type name */ public QualifiedName getQualifiedTypeName() { return factory.newQualifiedName( imports.getPackageDeclaration().getName(), typeName); }
private MethodDeclaration createGetModelTypeMethod(Name value) { return createGetMethod( "getModelType", //$NON-NLS-1$ f.newParameterizedType(context.resolve(Class.class), f.newWildcard()), f.newClassLiteral(context.resolve(value))); }
private Statement createNullCheck(SimpleName parameter) { assert parameter != null; return f.newIfStatement( new ExpressionBuilder(f, parameter) .apply(InfixOperator.EQUALS, Models.toNullLiteral(f)) .toExpression(), f.newBlock(new TypeBuilder(f, context.resolve(IllegalArgumentException.class)) .newObject(Models.toLiteral(f, MessageFormat.format( "{0} must not be null", //$NON-NLS-1$ parameter.getToken()))) .toThrowStatement())); }
private ExpressionStatement mapField(SimpleName name) { return new ExpressionBuilder(f, f.newThis()) .field(name) .assignFrom(name) .toStatement(); }
private SimpleName asSimpleName(javax.lang.model.element.Name simpleName) { assert simpleName != null; return factory.newSimpleName(simpleName.toString()); }
private List<Attribute> filterInterfaceMethodModifiers(List<? extends Attribute> modifiers) { assert modifiers != null; List<Attribute> results = new ArrayList<>(); for (Attribute attribute : modifiers) { if (attribute.getModelKind() == ModelKind.MODIFIER) { ModifierKind kind = ((Modifier) attribute).getModifierKind(); if (kind == ModifierKind.PUBLIC || kind == ModifierKind.ABSTRACT) { continue; } } else if (attribute.getModelKind() == ModelKind.SINGLE_ELEMENT_ANNOTATION) { SingleElementAnnotation an = (SingleElementAnnotation) attribute; Name name = an.getType().getName(); if (name.toNameString().equals(SuppressWarnings.class.getSimpleName())) { continue; } } results.add(attribute); } return results; } }
@Override public Type visitNamedType(IrDocNamedType elem, Mapper context) { Name name = (Name) elem.getName().accept(context, null); return context.factory.newNamedType(name); }
private List<? extends DocElement> external(Element element) { Javadoc javadoc = parseJavadoc(element); List<? extends DocBlock> elementBlocks = javadoc.getBlocks(); if (elementBlocks.isEmpty()) { return Collections.emptyList(); } DocBlock first = elementBlocks.get(0); if (first.getTag().isEmpty()) { return first.getElements(); } return Collections.emptyList(); }
private Name name(Class<?> aClass) { return ((NamedType) Models.toType(f, aClass)).getName(); }
@Override public DocElement visitText(IrDocText elem, Void context) { return factory.newDocText(elem.getContent()); }
private MethodDeclaration createGetModelTypeMethod(Name value) { return createGetMethod( "getModelType", //$NON-NLS-1$ f.newParameterizedType(context.resolve(Class.class), f.newWildcard()), f.newClassLiteral(context.resolve(value))); }
private ExpressionStatement mapField(SimpleName name) { return new ExpressionBuilder(f, f.newThis()) .field(name) .assignFrom(name) .toStatement(); }
@Override public DocElement visitSimpleName(IrDocSimpleName elem, Void context) { return factory.newSimpleName(elem.getIdentifier()); }
private Name name(Class<?> aClass) { return ((NamedType) Models.toType(f, aClass)).getName(); }
private ExpressionStatement mapField(SimpleName name) { return new ExpressionBuilder(f, f.newThis()) .field(name) .assignFrom(name) .toStatement(); }
private ExpressionStatement mapField(SimpleName name) { return new ExpressionBuilder(f, f.newThis()) .field(name) .assignFrom(name) .toStatement(); }
private ExpressionStatement mapField(SimpleName name) { return new ExpressionBuilder(f, f.newThis()) .field(name) .assignFrom(name) .toStatement(); }
private ExpressionStatement mapField(SimpleName name) { return new ExpressionBuilder(f, f.newThis()) .field(name) .assignFrom(name) .toStatement(); }