BuilderSwitchElement.java revision e80efa670f1027fdf3882a298216a460199e38d0
1package org.jf.dexlib2.builder.instruction;
2
3import org.jf.dexlib2.builder.BuilderSwitchPayload;
4import org.jf.dexlib2.builder.Label;
5import org.jf.dexlib2.iface.instruction.SwitchElement;
6
7import javax.annotation.Nonnull;
8
9public class BuilderSwitchElement implements SwitchElement {
10    @Nonnull BuilderSwitchPayload parent;
11    private final int key;
12    @Nonnull private final Label target;
13
14    public BuilderSwitchElement(@Nonnull BuilderSwitchPayload parent,
15                                int key,
16                                @Nonnull Label target) {
17        this.parent = parent;
18        this.key = key;
19        this.target = target;
20    }
21
22    @Override public int getKey() {
23        return key;
24    }
25
26    @Override public int getOffset() {
27        return parent.getReferrer().getCodeAddress() - target.getCodeAddress();
28    }
29}
30