1 11 package org.eclipse.jdt.internal.codeassist.complete; 12 13 import org.eclipse.jdt.internal.compiler.ast.JavadocSingleTypeReference; 14 15 public class CompletionOnJavadocSingleTypeReference extends JavadocSingleTypeReference implements CompletionOnJavadoc { 16 public int completionFlags = JAVADOC; 17 18 public CompletionOnJavadocSingleTypeReference(char[] source, long pos, int tagStart, int tagEnd) { 19 super(source, pos, tagStart, tagEnd); 20 } 21 22 public CompletionOnJavadocSingleTypeReference(JavadocSingleTypeReference typeRef) { 23 super(typeRef.token, (((long)typeRef.sourceStart)<<32)+typeRef.sourceEnd, typeRef.tagSourceStart, typeRef.tagSourceStart); 24 } 25 26 29 public void addCompletionFlags(int flags) { 30 this.completionFlags |= flags; 31 } 32 33 public boolean completeAnException() { 34 return (this.completionFlags & EXCEPTION) != 0; 35 } 36 37 public boolean completeInText() { 38 return (this.completionFlags & TEXT) != 0; 39 } 40 41 public boolean completeBaseTypes() { 42 return (this.completionFlags & BASE_TYPES) != 0; 43 } 44 45 public boolean completeFormalReference() { 46 return (this.completionFlags & FORMAL_REFERENCE) != 0; 47 } 48 49 54 public int getCompletionFlags() { 55 return this.completionFlags; 56 } 57 58 61 public StringBuffer printExpression(int indent, StringBuffer output) { 62 output.append("<CompletionOnJavadocSingleTypeReference:"); super.printExpression(indent, output); 64 indent++; 65 if (this.completionFlags > 0) { 66 output.append('\n'); 67 for (int i=0; i<indent; i++) output.append('\t'); 68 output.append("infos:"); char separator = 0; 70 if (completeAnException()) { 71 output.append("exception"); separator = ','; 73 } 74 if (completeInText()) { 75 if (separator != 0) output.append(separator); 76 output.append("text"); separator = ','; 78 } 79 if (completeBaseTypes()) { 80 if (separator != 0) output.append(separator); 81 output.append("base types"); separator = ','; 83 } 84 if (completeFormalReference()) { 85 if (separator != 0) output.append(separator); 86 output.append("formal reference"); separator = ','; 88 } 89 output.append('\n'); 90 } 91 indent--; 92 for (int i=0; i<indent; i++) output.append('\t'); 93 return output.append('>'); 94 } 95 } 96 | Popular Tags |