@Override
	public void visitEnd() {
		super.visitEnd();

		int access = member.getAccess();
		String name = member.getName();
		String desc = member.getDescriptor();
		String signature = member.getSignature();

		if (member instanceof FieldMember fm) {
			Object defaultValue = fm.getDefaultValue();
			visitField(access, name, desc, signature, defaultValue).visitEnd();
		} else if (member instanceof MethodMember mm) {
			String[] exceptions = mm.getThrownTypes().toArray(new String[0]);

			MethodVisitor mv = visitMethod(access, name, desc, signature, exceptions);
			if (!mm.hasAbstractModifier() || !mm.hasNativeModifier()) {
				Label start = new Label();
				Label end = new Label();

				mv.visitLabel(start);
				mv.visitTypeInsn(NEW, "java/lang/RuntimeException");
				mv.visitInsn(DUP);
				mv.visitLdcInsn("TODO: Implementation");
				mv.visitMethodInsn(INVOKESPECIAL, "java/lang/RuntimeException", "<init>", "(Ljava/lang/String;)V", false);
				mv.visitInsn(ATHROW);
				mv.visitLabel(end);

				for (LocalVariable lv : mm.getLocalVariables()) {
					mv.visitLocalVariable(lv.getName(), lv.getDescriptor(), lv.getSignature(),
							start, end, lv.getIndex());
				}
			}
			mv.visitEnd();
		}
	}
@param cv
		Parent visitor.
@param member
		Member outline to visit.
recaf-core/src/main/java/software/coley/recaf/util/visitors/MemberStubAddingVisitor.java