()
| 216 | } |
| 217 | |
| 218 | public Interval getTemplateRange() { |
| 219 | if ( isAnonSubtemplate ) { |
| 220 | int start = Integer.MAX_VALUE; |
| 221 | int stop = Integer.MIN_VALUE; |
| 222 | for (Interval interval : sourceMap) { |
| 223 | if ( interval==null ) { |
| 224 | continue; |
| 225 | } |
| 226 | start = Math.min(start, interval.a); |
| 227 | stop = Math.max(stop, interval.b); |
| 228 | } |
| 229 | if ( start<= stop+1 ) { |
| 230 | return new Interval(start, stop); |
| 231 | } |
| 232 | } |
| 233 | return new Interval(0, template.length()-1); |
| 234 | } |
| 235 | |
| 236 | public String instrs() { |
| 237 | BytecodeDisassembler dis = new BytecodeDisassembler(this); |
no test coverage detected