@SuppressWarnings("rawtypes") private static final PipelineOp addKnownInConditional(PipelineOp left,final FilterNode filter,final AST2BOpContext ctx){
  final InBOp bop=(InBOp)filter.getValueExpression();
  final IConstant<IV>[] set=bop.getSet();
  final LinkedHashSet<IV> ivs=new LinkedHashSet<IV>();
  for (  IConstant<IV> iv : set) {
    ivs.add(iv.get());
  }
  final IVariable var=(IVariable)bop.getValueExpression();
  left=new DataSetJoin(leftOrEmpty(left),NV.asMap(new NV[]{new NV(DataSetJoin.Annotations.VAR,var),new NV(DataSetJoin.Annotations.BOP_ID,ctx.nextId()),new NV(DataSetJoin.Annotations.GRAPHS,ivs)}));
  return left;
}

@ SuppressWarnings ( "rawtypes" ) private static final PipelineOp addKnownInConditional ( PipelineOp left , final FilterNode filter , final AST2BOpContext ctx ) { final InBOp bop = ( InBOp ) filter . getValueExpression ( ) ; final IConstant < IV > [ ] set = bop . getSet ( ) ; final LinkedHashSet < IV > ivs = new LinkedHashSet < IV > ( ) ; for ( IConstant < IV > iv : set ) { ivs . add ( iv . get ( ) ) ; } final IVariable var = ( IVariable ) bop . getValueExpression ( ) ; left = new DataSetJoin ( leftOrEmpty ( left ) , NV . asMap ( new NV [ ] { new NV ( DataSetJoin . Annotations . VAR , var ) , new NV ( DataSetJoin . Annotations . BOP_ID , ctx . nextId ( ) ) , new NV ( DataSetJoin . Annotations . GRAPHS , ivs ) } ) ) ; return left ; }
convert an in filter to a join with an inline access path .
