public void renameField(@Nonnull ClassMemberPathNode path) throws IncompletePathException {
		Workspace workspace = path.getValueOfType(Workspace.class);
		WorkspaceResource resource = path.getValueOfType(WorkspaceResource.class);
		ClassBundle<?> bundle = path.getValueOfType(ClassBundle.class);
		ClassInfo declaringClass = path.getValueOfType(ClassInfo.class);
		FieldMember fieldMember = (FieldMember) path.getValue();
		if (workspace == null) {
			logger.error("Cannot resolve required path nodes for field '{}', missing workspace in path", fieldMember.getName());
			throw new IncompletePathException(Workspace.class);
		}
		if (resource == null) {
			logger.error("Cannot resolve required path nodes for field '{}', missing resource in path", fieldMember.getName());
			throw new IncompletePathException(WorkspaceResource.class);
		}
		if (bundle == null) {
			logger.error("Cannot resolve required path nodes for field '{}', missing bundle in path", fieldMember.getName());
			throw new IncompletePathException(ClassBundle.class);
		}
		if (declaringClass == null) {
			logger.error("Cannot resolve required path nodes for field '{}', missing class in path", fieldMember.getName());
			throw new IncompletePathException(ClassBundle.class);
		}
		renameField(workspace, resource, bundle, declaringClass, fieldMember);
	}
Prompts the user to rename the given field.

@param path
		Path to field.

@throws IncompletePathException
		When the path is missing parent elements.
recaf-ui/src/main/java/software/coley/recaf/services/navigation/Actions.java