if (isSimpleProjectCast(plan))
return null;
boolean requireAll = false;
List<String> mapKeys = null;
TopLevelProjectFinder projectFinder = new TopLevelProjectFinder(plan);
try {
projectFinder.visit();
} catch (VisitorException ve) {
int errCode = 2200;
String msg = "Error getting top level project ";
throw new OptimizerException(msg, errCode, PigException.BUG, ve);
}
for (LOProject project : projectFinder.getProjectSet())
{
if (!project.isStar() && project.getCol()==column) // LOProject for that column
{
List<LogicalOperator> successors = plan.getSuccessors(project);
// If there are LOCast(s) in the middle (can only be cast to map, otherwise, there will not be maplookup below)