1 11 package org.eclipse.jdt.internal.corext.refactoring.typeconstraints; 12 13 import org.eclipse.jdt.core.dom.ITypeBinding; 14 15 import org.eclipse.jdt.internal.corext.dom.Bindings; 16 import org.eclipse.jdt.internal.corext.dom.TypeRules; 17 18 public abstract class ConstraintVariable { 19 22 private final ITypeBinding fTypeBinding; 23 24 27 protected ConstraintVariable(ITypeBinding binding) { 28 fTypeBinding= binding; 29 } 30 31 public boolean canBeAssignedTo(ConstraintVariable targetVariable) { 32 if (fTypeBinding == null || targetVariable.fTypeBinding == null) 33 return false; 34 return TypeRules.canAssign(fTypeBinding, targetVariable.fTypeBinding); 35 } 36 37 public String toResolvedString() { 38 if (fTypeBinding == null) 39 return "<NULL BINDING>"; return Bindings.asString(fTypeBinding); 41 } 42 43 46 public String toString() { 47 return toResolvedString(); 48 } 49 50 53 public ITypeBinding getBinding() { 55 return fTypeBinding; 56 } 57 58 62 private Object fData; 63 64 public Object getData(){ 65 return fData; 66 } 67 68 public void setData(Object data){ 69 fData= data; 70 } 71 } 72 | Popular Tags |