Example usage for org.eclipse.jdt.core Signature C_FLOAT

List of usage examples for org.eclipse.jdt.core Signature C_FLOAT

Introduction

In this page you can find the example usage for org.eclipse.jdt.core Signature C_FLOAT.

Prototype

char C_FLOAT

To view the source code for org.eclipse.jdt.core Signature C_FLOAT.

Click Source Link

Document

Character constant indicating the primitive type float in a signature.

Usage

From source file:ca.mcgill.cs.swevo.jayfx.FastConverter.java

License:Open Source License

public String resolveType(String pType, final IType pEnclosingType) throws ConversionException {
    String lReturn = "";
    int lDepth = 0;
    int lIndex = 0;
    while (pType.charAt(lIndex) == Signature.C_ARRAY) {
        lDepth++;//from  w  w w. j a  v a  2 s .  c  om
        lIndex++;
    }

    if (pType.charAt(lIndex) == Signature.C_BYTE || pType.charAt(lIndex) == Signature.C_CHAR
            || pType.charAt(lIndex) == Signature.C_DOUBLE || pType.charAt(lIndex) == Signature.C_FLOAT
            || pType.charAt(lIndex) == Signature.C_INT || pType.charAt(lIndex) == Signature.C_LONG
            || pType.charAt(lIndex) == Signature.C_SHORT || pType.charAt(lIndex) == Signature.C_VOID
            || pType.charAt(lIndex) == Signature.C_BOOLEAN || pType.charAt(lIndex) == Signature.C_RESOLVED)
        lReturn = pType;
    else
        try {
            pType = Signature.getTypeErasure(pType);
            final int lIndex2 = pType.indexOf(Signature.C_NAME_END);
            final String lType = pType.substring(lIndex + 1, lIndex2);
            final String[][] lTypes = pEnclosingType.resolveType(lType);
            if (lTypes == null)
                throw new ConversionException("Cannot convert type " + lType + " in " + pEnclosingType);
            if (lTypes.length != 1)
                throw new ConversionException("Cannot convert type " + lType + " in " + pEnclosingType);
            for (int i = 0; i < lDepth; i++)
                lReturn += "[";
            lReturn += "L" + lTypes[0][0] + "." + lTypes[0][1].replace('.', '$') + ";";
        } catch (final JavaModelException pException) {
            throw new ConversionException(pException);
        }
    return lReturn;
}

From source file:com.codenvy.ide.ext.java.server.internal.core.SourceMapper.java

License:Open Source License

private int getUnqualifiedTypeSignature(String qualifiedTypeSig, int start, int length,
        StringBuffer unqualifiedTypeSig, boolean noDollar) {
    char firstChar = qualifiedTypeSig.charAt(start);
    int end = start + 1;
    boolean sigStart = false;
    firstPass: for (int i = start; i < length; i++) {
        char current = qualifiedTypeSig.charAt(i);
        switch (current) {
        case Signature.C_ARRAY:
        case Signature.C_SUPER:
        case Signature.C_EXTENDS:
            unqualifiedTypeSig.append(current);
            start = i + 1;/*from   w w w. ja v  a  2 s . c  om*/
            end = start + 1;
            firstChar = qualifiedTypeSig.charAt(start);
            break;
        case Signature.C_RESOLVED:
        case Signature.C_UNRESOLVED:
        case Signature.C_TYPE_VARIABLE:
            if (!sigStart) {
                start = ++i;
                sigStart = true;
            }
            break;
        case Signature.C_NAME_END:
        case Signature.C_GENERIC_START:
            end = i;
            break firstPass;
        case Signature.C_STAR:
            unqualifiedTypeSig.append(current);
            start = i + 1;
            end = start + 1;
            firstChar = qualifiedTypeSig.charAt(start);
            break;
        case Signature.C_GENERIC_END:
            return i;
        case Signature.C_DOT:
            start = ++i;
            break;
        case Signature.C_BOOLEAN:
        case Signature.C_BYTE:
        case Signature.C_CHAR:
        case Signature.C_DOUBLE:
        case Signature.C_FLOAT:
        case Signature.C_INT:
        case Signature.C_LONG:
        case Signature.C_SHORT:
            if (!sigStart) {
                unqualifiedTypeSig.append(current);
                return i + 1;
            }
        }
    }
    switch (firstChar) {
    case Signature.C_RESOLVED:
    case Signature.C_UNRESOLVED:
    case Signature.C_TYPE_VARIABLE:
        unqualifiedTypeSig.append(Signature.C_UNRESOLVED);
        if (noDollar) {
            int lastDollar = qualifiedTypeSig.lastIndexOf('$', end);
            if (lastDollar > start)
                start = lastDollar + 1;
        }
        for (int i = start; i < length; i++) {
            char current = qualifiedTypeSig.charAt(i);
            switch (current) {
            case Signature.C_GENERIC_START:
                unqualifiedTypeSig.append(current);
                i++;
                do {
                    i = getUnqualifiedTypeSignature(qualifiedTypeSig, i, length, unqualifiedTypeSig, noDollar);
                } while (qualifiedTypeSig.charAt(i) != Signature.C_GENERIC_END);
                unqualifiedTypeSig.append(Signature.C_GENERIC_END);
                break;
            case Signature.C_NAME_END:
                unqualifiedTypeSig.append(current);
                return i + 1;
            default:
                unqualifiedTypeSig.append(current);
                break;
            }
        }
        return length;
    default:
        // primitive type or wildcard
        unqualifiedTypeSig.append(qualifiedTypeSig.substring(start, end));
        return end;
    }
}

From source file:com.codenvy.ide.ext.java.server.internal.core.util.Util.java

License:Open Source License

static void appendTypeSignature(char[] string, int start, StringBuffer buffer, boolean compact) {
    char c = string[start];
    switch (c) {//from www .j av  a 2 s . co m
    case Signature.C_ARRAY:
        appendArrayTypeSignature(string, start, buffer, compact);
        break;
    case Signature.C_RESOLVED:
        appendClassTypeSignature(string, start, buffer, compact);
        break;
    case Signature.C_TYPE_VARIABLE:
        int e = org.eclipse.jdt.internal.compiler.util.Util.scanTypeVariableSignature(string, start);
        buffer.append(string, start + 1, e - start - 1);
        break;
    case Signature.C_BOOLEAN:
        buffer.append(BOOLEAN);
        break;
    case Signature.C_BYTE:
        buffer.append(BYTE);
        break;
    case Signature.C_CHAR:
        buffer.append(CHAR);
        break;
    case Signature.C_DOUBLE:
        buffer.append(DOUBLE);
        break;
    case Signature.C_FLOAT:
        buffer.append(FLOAT);
        break;
    case Signature.C_INT:
        buffer.append(INT);
        break;
    case Signature.C_LONG:
        buffer.append(LONG);
        break;
    case Signature.C_SHORT:
        buffer.append(SHORT);
        break;
    case Signature.C_VOID:
        buffer.append(VOID);
        break;
    }
}

From source file:com.codenvy.ide.ext.java.server.internal.core.util.Util.java

License:Open Source License

private static int appendTypeSignatureForAnchor(char[] string, int start, StringBuffer buffer,
        boolean isVarArgs) {
    // need a minimum 1 char
    if (start >= string.length) {
        throw new IllegalArgumentException();
    }/*w ww .  j av  a 2 s .c om*/
    char c = string[start];
    if (isVarArgs) {
        switch (c) {
        case Signature.C_ARRAY:
            return appendArrayTypeSignatureForAnchor(string, start, buffer, true);
        case Signature.C_RESOLVED:
        case Signature.C_TYPE_VARIABLE:
        case Signature.C_BOOLEAN:
        case Signature.C_BYTE:
        case Signature.C_CHAR:
        case Signature.C_DOUBLE:
        case Signature.C_FLOAT:
        case Signature.C_INT:
        case Signature.C_LONG:
        case Signature.C_SHORT:
        case Signature.C_VOID:
        case Signature.C_STAR:
        case Signature.C_EXTENDS:
        case Signature.C_SUPER:
        case Signature.C_CAPTURE:
        default:
            throw new IllegalArgumentException(); // a var args is an array type
        }
    } else {
        switch (c) {
        case Signature.C_ARRAY:
            return appendArrayTypeSignatureForAnchor(string, start, buffer, false);
        case Signature.C_RESOLVED:
            return appendClassTypeSignatureForAnchor(string, start, buffer);
        case Signature.C_TYPE_VARIABLE:
            int e = org.eclipse.jdt.internal.compiler.util.Util.scanTypeVariableSignature(string, start);
            buffer.append(string, start + 1, e - start - 1);
            return e;
        case Signature.C_BOOLEAN:
            buffer.append(BOOLEAN);
            return start;
        case Signature.C_BYTE:
            buffer.append(BYTE);
            return start;
        case Signature.C_CHAR:
            buffer.append(CHAR);
            return start;
        case Signature.C_DOUBLE:
            buffer.append(DOUBLE);
            return start;
        case Signature.C_FLOAT:
            buffer.append(FLOAT);
            return start;
        case Signature.C_INT:
            buffer.append(INT);
            return start;
        case Signature.C_LONG:
            buffer.append(LONG);
            return start;
        case Signature.C_SHORT:
            buffer.append(SHORT);
            return start;
        case Signature.C_VOID:
            buffer.append(VOID);
            return start;
        case Signature.C_CAPTURE:
            return appendCaptureTypeSignatureForAnchor(string, start, buffer);
        case Signature.C_STAR:
        case Signature.C_EXTENDS:
        case Signature.C_SUPER:
            return appendTypeArgumentSignatureForAnchor(string, start, buffer);
        default:
            throw new IllegalArgumentException();
        }
    }
}

From source file:de.uka.ilkd.key.casetool.eclipse.EclipseSignaturesHelper.java

License:Open Source License

public static String determineJavaType(String eclipseSignature, IType surroundingType) {

    switch (eclipseSignature.charAt(0)) {

    case Signature.C_ARRAY: // this parameter is an array

        int depth = Signature.getArrayCount(eclipseSignature);

        StringBuffer type = new StringBuffer(
                determineJavaType(Signature.getElementType(eclipseSignature), surroundingType));
        // array type is <element type> ([])+, now create the []s

        for (int i = 0; i < depth; i++)
            type.append('[');
        type.append(']');
        // this is probably much faster, than handling String-objects ?!
        return type.toString();

    // primitive types:
    case Signature.C_BOOLEAN:
        return "boolean";

    case Signature.C_BYTE:
        return "byte";

    case Signature.C_CHAR:
        return "char";

    case Signature.C_DOUBLE:
        return "double";

    case Signature.C_FLOAT:
        return "float";

    case Signature.C_INT:
        return "int";

    case Signature.C_LONG:
        return "long";

    case Signature.C_SHORT:
        return "short";

    // arbitrary types with fully-qualified name
    case Signature.C_RESOLVED:
        return eclipseSignature.substring(1, eclipseSignature.length() - 1);
    // eclipse input is "Lpackage.Type;", so
    // cut off the first and last character

    // arbitrary types with unresolved names
    case Signature.C_UNRESOLVED:
        String unqualifiedTypeName = eclipseSignature.substring(1, eclipseSignature.length() - 1);
        try {/*from  ww w  .  ja  va 2  s . c  o m*/
            String[][] resolvedTypes = surroundingType.resolveType(unqualifiedTypeName);
            if (resolvedTypes != null && resolvedTypes.length > 0) {
                return (resolvedTypes[0][0].equals("") ? "" : resolvedTypes[0][0] + ".") + resolvedTypes[0][1];
            } else {
                return null;
            }

        } catch (JavaModelException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }
    throw new RuntimeException("Eclipse Signature type " + eclipseSignature + "not checked, add support !!");
}

From source file:edu.ohio_state.cse.khatchad.ajplugintools.ajayfx.Converter.java

License:Open Source License

/**
 * Converts a string type in Eclipse to a String representation of a type in
 * the Concern Graphs model./* w w  w . j  a  v a 2 s .  c o m*/
 * 
 * @param pType
 *            The Eclipse type to convert.
 * @param aMember
 *            the member declaring pType type.
 * @return A String representing pType in a way understandable by the
 *         Concern Graphs model.
 * @exception ConversionException
 *                If the type cannot be converted.
 */
public static String convertType(final String pType, final IMember aMember) throws ConversionException {
    String lReturn = "";
    int lDepth = 0;
    int lIndex = 0;
    while (pType.charAt(lIndex) == Signature.C_ARRAY) {
        lDepth++;
        lIndex++;
    }

    if (pType.charAt(lIndex) == Signature.C_BYTE)
        lReturn = Converter.BYTE;
    else if (pType.charAt(lIndex) == Signature.C_CHAR)
        lReturn = Converter.CHAR;
    else if (pType.charAt(lIndex) == Signature.C_DOUBLE)
        lReturn = Converter.DOUBLE;
    else if (pType.charAt(lIndex) == Signature.C_FLOAT)
        lReturn = Converter.FLOAT;
    else if (pType.charAt(lIndex) == Signature.C_INT)
        lReturn = Converter.INT;
    else if (pType.charAt(lIndex) == Signature.C_LONG)
        lReturn = Converter.LONG;
    else if (pType.charAt(lIndex) == Signature.C_SHORT)
        lReturn = Converter.SHORT;
    else if (pType.charAt(lIndex) == Signature.C_VOID)
        lReturn = Converter.VOID;
    else if (pType.charAt(lIndex) == Signature.C_BOOLEAN)
        lReturn = Converter.BOOLEAN;
    else if (pType.charAt(lIndex) == Signature.C_RESOLVED) {
        final int lIndex2 = pType.indexOf(Signature.C_NAME_END);
        lReturn = pType.substring(lIndex + 1, lIndex2);
    } else if (pType.charAt(lIndex) == Signature.C_UNRESOLVED) {
        final int lIndex2 = pType.indexOf(Signature.C_NAME_END);
        final String lType = pType.substring(lIndex + 1, lIndex2);

        try {
            lReturn = Converter.resolveType(aMember, lType);
        } catch (final ConversionException e) {
            // We take one crack at inner classes
            final int lIndex3 = lType.lastIndexOf(Converter.DOT_CHAR);
            if (lIndex3 > 0) {
                String lType1 = lType.substring(0, lIndex3);
                lType1 = Converter.resolveType(aMember, lType1);
                Converter.resolveType(aMember,
                        lType1 + Converter.DOT + lType.substring(lIndex3 + 1, lType.length()));
                lReturn = lType1 + Converter.DOLLAR + lType.substring(lIndex3 + 1, lType.length());
            }

        }
    }
    for (int i = 0; i < lDepth; i++)
        lReturn += Converter.BRACKETS;
    return lReturn;
}

From source file:jayfx.Converter.java

License:Open Source License

/**
 * Converts a string type in Eclipse to a String representation of a type in the
 * Concern Graphs model.//from  www . j a va 2s .  c o  m
 * @param pType The Eclipse type to convert.
 * @param pMethod the method declaring pType as a parameter type.
 * @return A String representing pType in a way understandable by the Concern
 * Graphs model.
 * @exception ConversionException If the type cannot be converted.
 */
public static String convertType(String pType, IMethod pMethod) throws ConversionException {
    String lReturn = "";
    int lDepth = 0;
    int lIndex = 0;
    while (pType.charAt(lIndex) == Signature.C_ARRAY) {
        lDepth++;
        lIndex++;
    }

    if (pType.charAt(lIndex) == Signature.C_BYTE)
        lReturn = BYTE;
    else if (pType.charAt(lIndex) == Signature.C_CHAR)
        lReturn = CHAR;
    else if (pType.charAt(lIndex) == Signature.C_DOUBLE)
        lReturn = DOUBLE;
    else if (pType.charAt(lIndex) == Signature.C_FLOAT)
        lReturn = FLOAT;
    else if (pType.charAt(lIndex) == Signature.C_INT)
        lReturn = INT;
    else if (pType.charAt(lIndex) == Signature.C_LONG)
        lReturn = LONG;
    else if (pType.charAt(lIndex) == Signature.C_SHORT)
        lReturn = SHORT;
    else if (pType.charAt(lIndex) == Signature.C_VOID)
        lReturn = VOID;
    else if (pType.charAt(lIndex) == Signature.C_BOOLEAN)
        lReturn = BOOLEAN;
    else if (pType.charAt(lIndex) == Signature.C_RESOLVED) {
        int lIndex2 = pType.indexOf(Signature.C_NAME_END);
        lReturn = pType.substring(lIndex + 1, lIndex2);
    } else if (pType.charAt(lIndex) == Signature.C_UNRESOLVED) {
        int lIndex2 = pType.indexOf(Signature.C_NAME_END);
        String lType = pType.substring(lIndex + 1, lIndex2);

        try {
            lReturn = resolveType(pMethod, lType);
        } catch (ConversionException e) {
            // We take one crack at inner classes
            int lIndex3 = lType.lastIndexOf(DOT_CHAR);
            if (lIndex3 > 0) {
                String lType1 = lType.substring(0, lIndex3);
                lType1 = resolveType(pMethod, lType1);
                resolveType(pMethod, lType1 + DOT + lType.substring(lIndex3 + 1, lType.length()));
                lReturn = lType1 + DOLLAR + lType.substring(lIndex3 + 1, lType.length());
            }

        }
    }
    for (int i = 0; i < lDepth; i++) {
        lReturn += BRACKETS;
    }
    return lReturn;
}

From source file:jayfx.FastConverter.java

License:Open Source License

public String resolveType(String pType, IType pEnclosingType) throws ConversionException {
    String lReturn = "";
    int lDepth = 0;
    int lIndex = 0;
    while (pType.charAt(lIndex) == Signature.C_ARRAY) {
        lDepth++;/*from  w  w  w .java2  s .com*/
        lIndex++;
    }

    if ((pType.charAt(lIndex) == Signature.C_BYTE) || (pType.charAt(lIndex) == Signature.C_CHAR)
            || (pType.charAt(lIndex) == Signature.C_DOUBLE) || (pType.charAt(lIndex) == Signature.C_FLOAT)
            || (pType.charAt(lIndex) == Signature.C_INT) || (pType.charAt(lIndex) == Signature.C_LONG)
            || (pType.charAt(lIndex) == Signature.C_SHORT) || (pType.charAt(lIndex) == Signature.C_VOID)
            || (pType.charAt(lIndex) == Signature.C_BOOLEAN)
            || (pType.charAt(lIndex) == Signature.C_RESOLVED)) {
        lReturn = pType;
    } else {
        try {
            int lIndex2 = pType.indexOf(Signature.C_NAME_END);
            String lType = pType.substring(lIndex + 1, lIndex2);
            String[][] lTypes = pEnclosingType.resolveType(lType);
            if (lTypes == null)
                throw new ConversionException("Cannot convert type " + lType + " in " + pEnclosingType);
            if (lTypes.length != 1)
                throw new ConversionException("Cannot convert type " + lType + " in " + pEnclosingType);
            for (int i = 0; i < lDepth; i++) {
                lReturn += "[";
            }
            lReturn += "L" + lTypes[0][0] + "." + lTypes[0][1].replace('.', '$') + ";";
        } catch (JavaModelException pException) {
            throw new ConversionException(pException);
        }
    }
    return lReturn;
}

From source file:org.datanucleus.ide.eclipse.wizard.createappid.CodeGenerationUtil.java

License:Open Source License

private static String getWrapper(String typeSignature) {
    char c = typeSignature.charAt(0);
    switch (c) {/*from   www  .  ja v a2  s .  co m*/
    case Signature.C_BOOLEAN:
        return "java.lang.Boolean";
    case Signature.C_BYTE:
        return "java.lang.Byte";
    case Signature.C_CHAR:
        return "java.lang.Character";
    case Signature.C_DOUBLE:
        return "java.lang.Double";
    case Signature.C_FLOAT:
        return "java.lang.Float";
    case Signature.C_INT:
        return "java.lang.Integer";
    case Signature.C_LONG:
        return "java.lang.Long";
    case Signature.C_SHORT:
        return "java.lang.Short";
    }
    return Signature.toString(typeSignature);
}

From source file:org.datanucleus.ide.eclipse.wizard.createappid.CodeGenerationUtil.java

License:Open Source License

public static boolean isPrimitiveType(String typeSignature) {
    if (typeSignature.length() > 1) {
        return false;
    } else {/*from  w  w  w  .  ja v a 2 s .c  o m*/
        char c = typeSignature.charAt(0);
        return (c == Signature.C_BOOLEAN || c == Signature.C_BYTE || c == Signature.C_CHAR
                || c == Signature.C_DOUBLE || c == Signature.C_FLOAT || c == Signature.C_INT
                || c == Signature.C_LONG || c == Signature.C_SHORT);
    }
}