\Magento\Framework\Data\CollectionDataSourceInterface, to be more precise.
So imagine having this in - say -
<block class="Some\Block" name="block" template="tpl.phtml"> <arguments> <argument name="someObj" xsi:type="object">Some\Object</argument> </arguments> </block>
Block arguments of type
object are resolved via \Magento\Framework\View\Layout\Argument\Interpreter\DataObject, class which does a seemingly useless thing: it's checking if your passed object is of type
\Magento\Framework\Data\CollectionDataSourceInterface, throwing an exception if it's not.
Does anyone have the slightest clue as to why this validation is needed? The interface is - for now, at least - empty (marker interface).