<commit_before>package me.coley.recaf.ui.component;

import java.lang.reflect.Field;
import java.util.List;

import org.objectweb.asm.Handle;
import org.objectweb.asm.Type;
import org.objectweb.asm.tree.*;

import me.coley.event.Bus;
import me.coley.recaf.event.ClassDirtyEvent;
import me.coley.recaf.ui.component.editor.*;

/**
 * RefectiveItem decorator for allowing editing of opcode Insn attributes.
 * 
 * @author Matt
 */
public class ReflectiveOpcodeItem extends ReflectiveClassNodeItem {
	private final ClassNode cn;
	private final MethodNode mn;

	public ReflectiveOpcodeItem(InsnListEditor editor, AbstractInsnNode owner, Field field, String categoryKey,
			String translationKey) {
		super(owner, field, categoryKey, translationKey);
		this.cn = editor.getClassNode();
		this.mn = editor.getMethod();
	}

	@Override
	protected Class<?> getEditorType() {
		// check if proper type exists
		if (getType().equals(LabelNode.class)) {
			return LabelEditor.class;
		} else if (getType().equals(Handle.class)) {
			return HandleEditor.class;
		} else if (getType().equals(Object[].class)) {
			return ArgumentEditor.class;
		} else if (getType().equals(Type.class)) {<commit_msg>Fix regression issue from prior commit that broke label editing for opcodes<commit_after>package me.coley.recaf.ui.component;

import java.lang.reflect.Field;
import java.util.List;

import org.objectweb.asm.Handle;
import org.objectweb.asm.Type;
import org.objectweb.asm.tree.*;

import me.coley.event.Bus;
import me.coley.recaf.event.ClassDirtyEvent;
import me.coley.recaf.ui.component.editor.*;

/**
 * RefectiveItem decorator for allowing editing of opcode Insn attributes.
 * 
 * @author Matt
 */
public class ReflectiveOpcodeItem extends ReflectiveClassNodeItem {
	private final ClassNode cn;
	private final MethodNode mn;

	public ReflectiveOpcodeItem(InsnListEditor editor, AbstractInsnNode owner, Field field, String categoryKey,
			String translationKey) {
		super(owner, field, categoryKey, translationKey);
		this.cn = editor.getClassNode();
		this.mn = editor.getMethod();
	}

	@Override
	protected Class<?> getEditorType() {
		// check if proper type exists
		if (getType().equals(LabelNode.class)) {
			return LabelEditor.Opcode.class;
		} else if (getType().equals(Handle.class)) {
			return HandleEditor.class;
		} else if (getType().equals(Object[].class)) {
			return ArgumentEditor.class;
		} else if (getType().equals(Type.class)) {
{'fraction_non_alphanumeric': 0.11612638489946656, 'fraction_numerical': 0.0, 'mean_word_length': 4.84652278177458, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2493422', 'n_tokens_mistral': 780, 'n_tokens_neox': 757, 'n_words': 185}