public TypeVariable typeVariable(TypeNode typeNode){
  TypeVariable result=typeVariableMap.get(typeNode);
  if (result == null) {
    int id=typeVariableList.size();
    typeVariableList.add(null);
    result=new TypeVariable(id,this,typeNode);
    typeVariableList.set(id,result);
    typeVariableMap.put(typeNode,result);
  }
  return result;
}

public TypeVariable typeVariable ( TypeNode typeNode ) { TypeVariable result = typeVariableMap . get ( typeNode ) ; if ( result == null ) { int id = typeVariableList . size ( ) ; typeVariableList . add ( null ) ; result = new TypeVariable ( id , this , typeNode ) ; typeVariableList . set ( id , result ) ; typeVariableMap . put ( typeNode , result ) ; } return result ; }
get type variable for the given type node .
