Example usage for org.eclipse.jdt.internal.compiler.ast JavadocSingleTypeReference JavadocSingleTypeReference

List of usage examples for org.eclipse.jdt.internal.compiler.ast JavadocSingleTypeReference JavadocSingleTypeReference

Introduction

In this page you can find the example usage for org.eclipse.jdt.internal.compiler.ast JavadocSingleTypeReference JavadocSingleTypeReference.

Prototype

public JavadocSingleTypeReference(char[] source, long pos, int tagStart, int tagEnd) 

Source Link

Usage

From source file:lombok.eclipse.handlers.ast.EclipseASTMaker.java

License:Open Source License

@Override
public ASTNode visitJavaDoc(final lombok.ast.JavaDoc node, final Void p) {
    final Javadoc javadoc = new Javadoc(0, 0);
    setGeneratedByAndCopyPos(javadoc, source, posHintOf(node));
    // TODO node.getMessage()
    final List<JavadocSingleNameReference> argumentReferences = new ArrayList<JavadocSingleNameReference>();
    for (Map.Entry<String, String> argumentReference : node.getArgumentReferences().entrySet()) {
        final JavadocSingleNameReference ref = new JavadocSingleNameReference(
                (argumentReference.getKey()).toCharArray(), 0, 0, 0); // TODO argumentReference.getValue()
        setGeneratedByAndCopyPos(ref, source, posHintOf(node));
        argumentReferences.add(ref);//from  w w  w  .j av  a  2s .  c o  m
    }
    javadoc.paramReferences = toArray(argumentReferences, new JavadocSingleNameReference[0]);
    final List<JavadocSingleTypeReference> paramTypeReferences = new ArrayList<JavadocSingleTypeReference>();
    for (Map.Entry<String, String> paramTypeReference : node.getParamTypeReferences().entrySet()) {
        final JavadocSingleTypeReference ref = new JavadocSingleTypeReference(
                (paramTypeReference.getKey()).toCharArray(), 0, 0, 0); // TODO paramTypeReference.getValue()
        setGeneratedByAndCopyPos(ref, source, posHintOf(node));
        paramTypeReferences.add(ref);
    }
    javadoc.paramTypeParameters = toArray(paramTypeReferences, new JavadocSingleTypeReference[0]);
    final List<TypeReference> exceptionReferences = new ArrayList<TypeReference>();
    for (Map.Entry<lombok.ast.TypeRef, String> exceptionReference : node.getExceptionReferences().entrySet()) {
        final TypeReference ref = build(exceptionReference.getKey()); // TODO exceptionReference.getValue()
        setGeneratedByAndCopyPos(ref, source, posHintOf(node));
        exceptionReferences.add(ref);
    }
    javadoc.exceptionReferences = toArray(exceptionReferences, new TypeReference[0]);
    if (node.getReturnMessage() != null)
        javadoc.returnStatement = new JavadocReturnStatement(0, 0); // TODO node.getReturnStatement()
    return javadoc;
}

From source file:org.eclipse.ajdt.core.parserbridge.AJCompilationUnitStructureRequestor.java

License:Open Source License

/**
 * Recursively converts from an aj type reference to a JDT type reference.
 * This class is not involved with Content assist and code select, so the CompletionOn* and SelectionOn* variants of
 * type references should not make it here.
 * @param ajRef/*from  w  w  w . ja v  a 2s  .  com*/
 * @return jdtRef
 */
private TypeReference convertToJDTTypeReference(
        org.aspectj.org.eclipse.jdt.internal.compiler.ast.TypeReference ajRef) {
    if (ajRef == null) {
        return null;
    }
    TypeReference jdtRef = null;
    if (ajRef instanceof org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocImplicitTypeReference) {
        org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocImplicitTypeReference castedAJ = (org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocImplicitTypeReference) ajRef;
        jdtRef = new JavadocImplicitTypeReference(castedAJ.token, castedAJ.sourceStart);
    } else if (ajRef instanceof org.aspectj.org.eclipse.jdt.internal.compiler.ast.QualifiedTypeReference) {
        if (ajRef instanceof org.aspectj.org.eclipse.jdt.internal.compiler.ast.ArrayQualifiedTypeReference) {
            if (ajRef instanceof org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocArrayQualifiedTypeReference) {
                org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocArrayQualifiedTypeReference castedAJ = (org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocArrayQualifiedTypeReference) ajRef;
                jdtRef = new JavadocArrayQualifiedTypeReference(
                        new JavadocQualifiedTypeReference(castedAJ.tokens, castedAJ.sourcePositions,
                                castedAJ.tagSourceStart, castedAJ.tagSourceEnd),
                        castedAJ.dimensions());
            } else if (ajRef instanceof org.aspectj.org.eclipse.jdt.internal.compiler.ast.ParameterizedQualifiedTypeReference) {
                org.aspectj.org.eclipse.jdt.internal.compiler.ast.ParameterizedQualifiedTypeReference castedAJ = (org.aspectj.org.eclipse.jdt.internal.compiler.ast.ParameterizedQualifiedTypeReference) ajRef;
                jdtRef = new ParameterizedQualifiedTypeReference(castedAJ.tokens,
                        convertDoubleArray(castedAJ.typeArguments), castedAJ.dimensions(),
                        castedAJ.sourcePositions);
            } else { // assume vanilla ArrayQualifiedTypeReference
                org.aspectj.org.eclipse.jdt.internal.compiler.ast.ArrayQualifiedTypeReference castedAJ = (org.aspectj.org.eclipse.jdt.internal.compiler.ast.ArrayQualifiedTypeReference) ajRef;
                jdtRef = new ArrayQualifiedTypeReference(castedAJ.tokens, castedAJ.dimensions(),
                        castedAJ.sourcePositions);
            }
        } else if (ajRef instanceof org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocQualifiedTypeReference) {
            org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocQualifiedTypeReference castedAJ = (org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocQualifiedTypeReference) ajRef;
            jdtRef = new JavadocQualifiedTypeReference(castedAJ.tokens, castedAJ.sourcePositions,
                    castedAJ.tagSourceStart, castedAJ.tagSourceEnd);
        } else { // assume vanilla QualifiedTypeReference
            org.aspectj.org.eclipse.jdt.internal.compiler.ast.QualifiedTypeReference castedAJ = (org.aspectj.org.eclipse.jdt.internal.compiler.ast.QualifiedTypeReference) ajRef;
            jdtRef = new QualifiedTypeReference(castedAJ.tokens, castedAJ.sourcePositions);
        }
    } else if (ajRef instanceof org.aspectj.org.eclipse.jdt.internal.compiler.ast.SingleTypeReference) {
        if (ajRef instanceof org.aspectj.org.eclipse.jdt.internal.compiler.ast.ArrayTypeReference) {
            if (ajRef instanceof org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocArraySingleTypeReference) {
                org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocArraySingleTypeReference castedAJ = (org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocArraySingleTypeReference) ajRef;
                jdtRef = new JavadocArraySingleTypeReference(castedAJ.token, castedAJ.dimensions,
                        toPos(castedAJ.sourceStart, castedAJ.sourceEnd));
            } else if (ajRef instanceof org.aspectj.org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference) {
                org.aspectj.org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference castedAJ = (org.aspectj.org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference) ajRef;
                jdtRef = new ParameterizedSingleTypeReference(castedAJ.token,
                        convertSingleArray(castedAJ.typeArguments), castedAJ.dimensions,
                        toPos(castedAJ.sourceStart, castedAJ.sourceEnd));
            } else { // assume vanilla ArrayTypeReference
                org.aspectj.org.eclipse.jdt.internal.compiler.ast.ArrayTypeReference castedAJ = (org.aspectj.org.eclipse.jdt.internal.compiler.ast.ArrayTypeReference) ajRef;
                jdtRef = new ArrayTypeReference(castedAJ.token, castedAJ.dimensions,
                        toPos(castedAJ.sourceStart, castedAJ.sourceEnd));
            }
        } else if (ajRef instanceof org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocSingleTypeReference) {
            org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocSingleTypeReference castedAJ = (org.aspectj.org.eclipse.jdt.internal.compiler.ast.JavadocSingleTypeReference) ajRef;
            jdtRef = new JavadocSingleTypeReference(castedAJ.token,
                    toPos(castedAJ.sourceStart, castedAJ.sourceEnd), castedAJ.tagSourceStart,
                    castedAJ.tagSourceEnd);
        } else { // assume vanilla SingleTypeReference
            org.aspectj.org.eclipse.jdt.internal.compiler.ast.SingleTypeReference castedAJ = (org.aspectj.org.eclipse.jdt.internal.compiler.ast.SingleTypeReference) ajRef;
            jdtRef = new SingleTypeReference(castedAJ.token, toPos(castedAJ.sourceStart, castedAJ.sourceEnd));
        }
    } else if (ajRef instanceof org.aspectj.org.eclipse.jdt.internal.compiler.ast.Wildcard) {
        org.aspectj.org.eclipse.jdt.internal.compiler.ast.Wildcard castedAJ = (org.aspectj.org.eclipse.jdt.internal.compiler.ast.Wildcard) ajRef;
        Wildcard castedJDT = new Wildcard(castedAJ.kind);
        castedJDT.bound = convertToJDTTypeReference(castedAJ.bound);
        jdtRef = castedJDT;
    }

    Assert.isNotNull(jdtRef, "Conversion to JDT type reference failed.  Original AJ type reference is: '"
            + ajRef + "' and class '" + ajRef.getClass() + "'");

    // now fill in the rest of the shared fields.  Not all of them will be applicable in all cases
    jdtRef.bits = ajRef.bits;
    jdtRef.implicitConversion = ajRef.implicitConversion;
    jdtRef.statementEnd = ajRef.statementEnd;

    return jdtRef;
}

From source file:org.nabucco.framework.mda.model.java.ast.produce.JavaAstModelProducer.java

License:Open Source License

public JavadocSingleTypeReference createJavadocSingleTypeReference(String name) throws JavaModelException {
    return new JavadocSingleTypeReference(name.toCharArray(), 0l, 0, 0);
}