Q:

Chaining UIButton click through several delegates in Swift

I have a layout where inside UITableViewCell exists UICollectionView with UICollectionViewCell full of programatically generated UIButton's, visually it looks like this

Now i need to call a method in my ViewController, when i press a button in UICollectionViewCell (in my example it is AnswerOptionCell). I found several solutions with basically same idea, to access parent code via delegate:
how to call presentViewController from within a UICollectionViewCell & Access a UICollectionView's parent UIViewController
here is @alexburtnik code, in case links will be broken
// UITableViewCell

protocol CustomCellDelegate: class {
    func sharePressed(cell: MyCell)
}

class CustomCell: UITableViewCell {
    var delegate: CustomCellDelegate?

    func didTapShare(sender: UIButton) {
        delegate?.sharePressed(cell: self)
    }
}

// ViewController

class TableViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {

    @IBOutlet weak var tableView: UITableView!

    //...

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: cellIdentifier, for: indexPath) as! CustomCell
        cell.delegate = self
        return cell
    }
}

extension TableViewController: CustomCellDelegate {
    func sharePressed(cell: CustomCell) {
        guard let index = tableView.indexPath(for: cell)?.row else { return }
        //fetch the dataSource object using index
    }
}

and everything is great except for the layout depth, in examples above, there is only two levels of "nesting", UITableView with UITableViewCell and ViewController, so they just passing ViewController delegate to UITableViewCell and reaches ViewController code, in my situation there is additional layer of UICollectionView and UICollectionViewCell delegate is already set to UITableViewCell, so i can't reassign it to ViewController.
What am i planning to do, is from UICollectionViewCell to call parent UITableViewCell code, which will call parent ViewController method, it will be some kind of a chain, and probably will look ugly, but might work.
Visually it will looks like that 

Question is, will it?
Update:
Delegates are set via Xcode interface

A:

Chaining like that does work.
UICollectionViewCell calls UITableViewCell function, which calls ViewController function

