List of usage examples for org.eclipse.jdt.internal.compiler.ast ArrayQualifiedTypeReference dimensions
int dimensions
To view the source code for org.eclipse.jdt.internal.compiler.ast ArrayQualifiedTypeReference dimensions.
Click Source Link
From source file:org.eclipse.objectteams.otdt.internal.core.compiler.util.AstGenerator.java
License:Open Source License
/** * Wrap the baseclass reference from a tsuper role to a new type reference * yet using the original scope for resolving. * Also used for type references in callin wrappers *//*from ww w.j a v a 2s . c o m*/ public TypeReference alienScopeTypeReference(TypeReference original, Scope origScope) { if (original instanceof IAlienScopeTypeReference) origScope = ((IAlienScopeTypeReference) original).getAlienScope(); // if (origScope.parent.kind == Scope.CLASS_SCOPE) // origScope = (ClassScope)origScope.parent; TypeReference result; if (original instanceof ParameterizedSingleTypeReference) { ParameterizedSingleTypeReference pstRef = (ParameterizedSingleTypeReference) original; TypeReference[] typeArguments = AstClone.copyTypeArguments(original, this.pos, pstRef.typeArguments); result = new AlienScopeParameterizedSingleTypeReference(pstRef.token, typeArguments, pstRef.dimensions, this.pos, origScope); } else if (original instanceof SingleTypeReference) { if (original instanceof ArrayTypeReference && original.dimensions() > 0) { // could be parameterized type reference ArrayTypeReference singleTypeRef = (ArrayTypeReference) original; result = new AlienScopeArrayTypeReference(singleTypeRef.token, this.pos, singleTypeRef.dimensions, origScope); } else { SingleTypeReference singleTypeRef = (SingleTypeReference) original; result = new AlienScopeSingleTypeReference(singleTypeRef.token, this.pos, origScope); } } else if (original instanceof QualifiedTypeReference) { if (original instanceof ArrayQualifiedTypeReference && original.dimensions() > 0) { // could be parameterized type reference ArrayQualifiedTypeReference qTypeRef = (ArrayQualifiedTypeReference) original; result = new AlienScopeArrayQualifiedTypeReference(qTypeRef.tokens, qTypeRef.sourcePositions, qTypeRef.dimensions(), origScope); } else if (original instanceof ParameterizedQualifiedTypeReference) { ParameterizedQualifiedTypeReference qTypeRef = (ParameterizedQualifiedTypeReference) original; result = new AlienScopeParameterizedQualifiedTypeReference(qTypeRef, origScope); } else { QualifiedTypeReference qTypeRef = (QualifiedTypeReference) original; result = new AlienScopeQualifiedTypeReference(qTypeRef.tokens, qTypeRef.sourcePositions, origScope); } } else { throw new InternalCompilerError("Unexpected type reference: " + original); //$NON-NLS-1$ } result.setBaseclassDecapsulation(DecapsulationState.REPORTED); result.bits |= ASTNode.IgnoreRawTypeCheck; return result; }
From source file:org.nabucco.framework.mda.template.java.extract.type.reference.JavaAstTypeReferenceExtractorImpl.java
License:Open Source License
/** * ArrayQualifiedTypeReference (Hierarchy level 2). * //from w ww .ja v a2 s . co m * @param typeReference * the original type reference * * @return the clone */ private ArrayQualifiedTypeReference createTypeReference(ArrayQualifiedTypeReference typeReference) { ArrayQualifiedTypeReference copy = null; if (typeReference instanceof ParameterizedQualifiedTypeReference) { copy = createTypeReference((ParameterizedQualifiedTypeReference) typeReference); } else { // Default. copy = new ArrayQualifiedTypeReference(AstUtil.copyTwoDimensionalCharArray(typeReference.tokens), typeReference.dimensions(), typeReference.sourcePositions.clone()); } return copy; }