public void visitLineNumber(int line, Label start) { mv1.visitLineNumber(line, start); mv2.visitLineNumber(line, start); }
public void visitLineNumber(int line, Label start) { mv1.visitLineNumber(line, start); mv2.visitLineNumber(line, start); }
/** * Visits a line number declaration. * * @param line a line number. This number refers to the source file from which the class was * compiled. * @param start the first instruction corresponding to this line number. * @throws IllegalArgumentException if {@code start} has not already been visited by this visitor * (by the {@link #visitLabel} method). */ public void visitLineNumber(final int line, final Label start) { if (mv != null) { mv.visitLineNumber(line, start); } }
/** * Makes the given visitor visit this label and its source line numbers, if applicable. * * @param methodVisitor a method visitor. * @param visitLineNumbers whether to visit of the label's source line numbers, if any. */ final void accept(final MethodVisitor methodVisitor, final boolean visitLineNumbers) { methodVisitor.visitLabel(this); if (visitLineNumbers && lineNumber != 0) { methodVisitor.visitLineNumber(lineNumber & 0xFFFF, this); if (otherLineNumbers != null) { for (int i = 1; i <= otherLineNumbers[0]; ++i) { methodVisitor.visitLineNumber(otherLineNumbers[i], this); } } } }
void visitLineNumbers(MethodVisitor mv) { for (LineNumberNode node : lineNumberNodes.values()) { mv.visitLineNumber(node.line, node.start.getLabel()); } }
/** * Writes out the information stored in tags associated with the given unit * * @param mv * The method visitor for writing out the bytecode * @param u * The unit for which to write out the tags */ protected void generateTagsForUnit(MethodVisitor mv, Unit u) { if (u.hasTag("LineNumberTag")) { LineNumberTag lnt = (LineNumberTag) u.getTag("LineNumberTag"); Label l; if (branchTargetLabels.containsKey(u)) { l = branchTargetLabels.get(u); } else { l = new Label(); mv.visitLabel(l); } mv.visitLineNumber(lnt.getLineNumber(), l); } }
asm.visitLabel(label); if (labelStmt.lineNumber >= 0) { asm.visitLineNumber(labelStmt.lineNumber, label);
@Override public void visitLineNumber(int line, Label start) { prepareToStartTracking(); this.currentLineNumber = line; super.visitLineNumber(line, start); }
@Test public void shouldForwardVisitLineNumberToChild() { final Label l = new Label(); getTesteeVisitor().visitLineNumber(1, l); verify(this.mv).visitLineNumber(1, l); }
@Override public void visitLineNumber(int number, Label label) { lastLineId = lineIdGenerator.incrementAndGet(); super.visitLineNumber(number, label); }
public void notifySourceEnd() { Label label = new Label(); mv.visitLabel(label); mv.visitLineNumber(sourceLine + 1, label); }
private void trackLineAndColumn(Node node) { Label line = new Label(); methodStack.peek().visitLabel(line); methodStack.peek().visitLineNumber(node.sourceLine, line); }
@Override public void visitLineNumber(int line, Label label) { Log.logEach("visitLineNumber", line, label); super.visitLineNumber(line, label); }
@Override public void visitLineNumber(final int line, final Label start) { p.visitLineNumber(line, start); super.visitLineNumber(line, start); }
@Deprecated private MethodVisitor startCallFast(ClassWriter cw) { MethodVisitor mv = cw.visitMethod(ACC_PUBLIC, "call", FAST_CALL_SIG, null, null); mv.visitCode(); Label line = new Label(); mv.visitLineNumber(0, line); mv.visitVarInsn(ALOAD, 1); mv.visitTypeInsn(CHECKCAST, typePath); return mv; }
@Deprecated private MethodVisitor startCallSFast(ClassWriter cw) { MethodVisitor mv = cw.visitMethod(ACC_PUBLIC, "call", FAST_CALL_SIG, null, null); mv.visitCode(); Label line = new Label(); mv.visitLineNumber(0, line); mv.visitVarInsn(ALOAD, 1); mv.visitTypeInsn(CHECKCAST, IRUB); return mv; }
@Override public final void begin(final String name, final Attributes attrs) { int line = Integer.parseInt(attrs.getValue("line")); Label start = getLabel(attrs.getValue("start")); getCodeVisitor().visitLineNumber(line, start); } }
static Label visitLine(GoloElement<?> element, MethodVisitor visitor) { Label label = new Label(); visitor.visitLabel(label); if (element.hasPosition()) { visitor.visitLineNumber(element.positionInSourceCode().getStartLine(), label); } return label; } }
@Override public void accept(MethodVisitor visitor, MethodGenerationContext generationContext) { if (generationContext.updateLineNumber(lineNumber)) { label.accept(visitor, generationContext); visitor.visitLineNumber(lineNumber, label.getLabel()); } }
@Override public void visitLineNumber(int arg0, Label arg1) { super.visitLineNumber(arg0, arg1); appendToBacklog(new LineNumberNode(arg0, new LabelNode(arg1))); }