Источник данных - Это объект, совместимый с интерфейсом У такого объекта должен быть метод value и объект должен ожидать, что к нему придет посетитель за значением
В библиотеке уже есть готовые решения для источников данных, которые можно создать либо на основе функции либо на основе начального значения. Вот эти готовые источники: