private void setCompletionToken(char[][] tokens, int sourceStart, int sourceEnd, long[] sourcePositions, boolean without) { this.completionToken = without ? CharOperation.concatWith(tokens, '.') : CharOperation.concatWithAll(tokens, '.'); if (this.completionToken.length == 0) this.completionToken = CharOperation.ALL_PREFIX; setSourceRange(sourceStart, sourceEnd); long completionPosition = sourcePositions[sourcePositions.length - 1]; setTokenRange((int) (completionPosition >>> 32), (int) completionPosition); } private void setCompletionToken(char[][] tokens, int sourceStart, int sourceEnd, long[] sourcePositions) {
private void setCompletionToken(char[][] tokens, int sourceStart, int sourceEnd, long[] sourcePositions, boolean without) { this.completionToken = without ? CharOperation.concatWith(tokens, '.') : CharOperation.concatWithAll(tokens, '.'); if (this.completionToken.length == 0) this.completionToken = CharOperation.ALL_PREFIX; setSourceRange(sourceStart, sourceEnd); long completionPosition = sourcePositions[sourcePositions.length - 1]; setTokenRange((int) (completionPosition >>> 32), (int) completionPosition); } private void setCompletionToken(char[][] tokens, int sourceStart, int sourceEnd, long[] sourcePositions) {
private void findPackages(CompletionOnPackageReference packageStatement) { this.completionToken = CharOperation.concatWithAll(packageStatement.tokens, '.'); if (this.completionToken.length == 0) return; setSourceRange(packageStatement.sourceStart, packageStatement.sourceEnd); long completionPosition = packageStatement.sourcePositions[packageStatement.sourcePositions.length - 1]; setTokenRange((int) (completionPosition >>> 32), (int) completionPosition); this.nameEnvironment.findPackages(CharOperation.toLowerCase(this.completionToken), this); }
private void findPackages(CompletionOnPackageReference packageStatement) { this.completionToken = CharOperation.concatWithAll(packageStatement.tokens, '.'); if (this.completionToken.length == 0) return; setSourceRange(packageStatement.sourceStart, packageStatement.sourceEnd); long completionPosition = packageStatement.sourcePositions[packageStatement.sourcePositions.length - 1]; setTokenRange((int) (completionPosition >>> 32), (int) completionPosition); this.nameEnvironment.findPackages(CharOperation.toLowerCase(this.completionToken), this); }
private void findPackages(CompletionOnPackageReference packageStatement) { this.completionToken = CharOperation.concatWithAll(packageStatement.tokens, '.'); if (this.completionToken.length == 0) return; setSourceRange(packageStatement.sourceStart, packageStatement.sourceEnd); long completionPosition = packageStatement.sourcePositions[packageStatement.sourcePositions.length - 1]; setTokenRange((int) (completionPosition >>> 32), (int) completionPosition); try { this.nameEnvironment.findPackages(CharOperation.toLowerCase(this.completionToken), this, this.javaProject.getAllPackageFragmentRoots(), true); } catch (JavaModelException e) { // silent } }
return CharOperation.concatWithAll(tmp, '/');
private void findImplementations(ProvidesStatement providesStmt, TypeReference reference ) { char[][] tokens = reference.getTypeName(); char[] typeName = CharOperation.concatWithAll(tokens, '.'); if (typeName.length == 0) { this.completionToken = CharOperation.ALL_PREFIX; } else if (reference instanceof CompletionOnProvidesImplementationsQualifiedTypeReference) { CompletionOnQualifiedTypeReference qReference = (CompletionOnQualifiedTypeReference) reference; if (qReference.completionIdentifier != null) { this.completionToken = CharOperation.concatAll(typeName, qReference.completionIdentifier, '.'); } } else { char[] lastToken = tokens[tokens.length - 1]; this.completionToken = lastToken != null && lastToken.length == 0 ? CharOperation.concat(typeName, new char[]{'.'}) :lastToken; } setSourceRange(reference.sourceStart, reference.sourceEnd); findImplementations(this.completionToken, this.unitScope, providesStmt, -1); }
return CharOperation.concatWithAll(tmp, '/');
return CharOperation.concatWithAll(tmp, '/');
private void findImplementations(ProvidesStatement providesStmt, TypeReference reference ) { char[][] tokens = reference.getTypeName(); char[] typeName = CharOperation.concatWithAll(tokens, '.'); if (typeName.length == 0) { this.completionToken = CharOperation.ALL_PREFIX; } else if (reference instanceof CompletionOnProvidesImplementationsQualifiedTypeReference) { CompletionOnQualifiedTypeReference qReference = (CompletionOnQualifiedTypeReference) reference; if (qReference.completionIdentifier != null) { this.completionToken = CharOperation.concatAll(typeName, qReference.completionIdentifier, '.'); } } else { char[] lastToken = tokens[tokens.length - 1]; this.completionToken = lastToken != null && lastToken.length == 0 ? CharOperation.concat(typeName, new char[]{'.'}) :lastToken; } setSourceRange(reference.sourceStart, reference.sourceEnd); findImplementations(this.completionToken, this.unitScope, providesStmt, -1); }
private boolean checkForCNF(TypeReference ref, CompilationUnitDeclaration parsedUnit, boolean showAll) { this.lookupEnvironment.buildTypeBindings(parsedUnit, null); this.lookupEnvironment.completeTypeBindings(parsedUnit, true); parsedUnit.resolve(); this.startPosition = ref.sourceStart; this.endPosition = ref.sourceEnd > ref.sourceStart ? ref.sourceEnd : ref.sourceStart; if ((this.unitScope = parsedUnit.scope) != null) { if (showAll) { char[][] tokens = ref.getTypeName(); char[] typeName = CharOperation.concatWithAll(tokens, '.'); if (typeName.length == 0) { buildContext(ref, null, parsedUnit, null, null); this.completionToken = new char[] {'*'}; findTypesAndPackages(this.completionToken, this.unitScope, true, true, new ObjectVector()); return true; } } parsedUnit.scope.faultInTypes(); } return false; // should not come here - will throw exception }
private boolean checkForCNF(TypeReference ref, CompilationUnitDeclaration parsedUnit, boolean showAll) { this.lookupEnvironment.buildTypeBindings(parsedUnit, null); this.lookupEnvironment.completeTypeBindings(parsedUnit, true); parsedUnit.resolve(); if ((this.unitScope = parsedUnit.scope) != null) { if (showAll) { char[][] tokens = ref.getTypeName(); char[] typeName = CharOperation.concatWithAll(tokens, '.'); if (typeName.length == 0) { buildContext(ref, null, parsedUnit, null, null); this.completionToken = new char[] {'*'}; findTypesAndPackages(this.completionToken, this.unitScope, true, true, new ObjectVector()); return true; } } parsedUnit.scope.faultInTypes(); } return false; // should not come here - will throw exception }