question: constructs a join plan of the specified plan and the table . the plan will use an indexjoin , if possible . which means that if an indexselect is also possible , the indexjoin operator takes precedence . the method returns null if no join is possible . concode_field_sep Predicate mypred concode_elem_sep Map<String,IndexInfo> indexes concode_elem_sep Transaction tx concode_elem_sep TablePlan myplan concode_elem_sep Schema myschema concode_field_sep Plan addSelectPred concode_elem_sep Plan addJoinPred concode_elem_sep Plan makeProductPlan concode_elem_sep Plan makeIndexSelect concode_elem_sep Plan makeProductJoin concode_elem_sep Plan makeSelectPlan concode_elem_sep Plan makeIndexJoin
target: Plan function ( Plan arg0 ) { Schema loc0 = arg0 . schema ( ) ; Predicate loc1 = mypred . joinPred ( myschema , loc0 ) ; if ( loc1 == null ) return null ; Plan loc2 = makeIndexJoin ( arg0 , loc0 ) ; if ( loc2 == null ) loc2 = makeProductJoin ( arg0 , loc0 ) ; return loc2 ; }