Фрагмент кода для этого вопроса взят из раздела Persistance API документации WIKI для EOS. Ссылка на эту страницу здесь...
https://github.com/EOSIO/eos/wiki/Persistence-API
В следующем фрагменте кода похоже, что шаблон класса (или класс шаблона) определяется как service_table_type. Далее в угловых скобках шаблона класса передается целая куча кастомных типов и вроде бы ничего нового кроме сложности (если я правильно понял) там нет.
using service_table_type = multi_index<service, service_rec,
indexed_by< N(bycustomer), const_mem_fun<service_rec, account_name,
&service_rec::get_customer>>>;
Мой вопрос касается приведенной ниже строки кода, которая следует за приведенным выше фрагментом кода. что происходит здесь? это похоже на вызов функции service_table(), которая возвращает параметр типа service_table_type. Откуда взялась эта функция? Если бы эта функция пришла из библиотеки, как бы она вернула значение типа service_table_type, которое мы произвольно создали?
service_table_type service_table( current_receiver(), mechanic );
Не могли бы вы предоставить мне урезанный пример общего кода того, что здесь происходит?
Спасибо любезно!