Вытащить дженерик аргумент за пределы метода C#

92
28 ноября 2021, 15:00

Имеется класс:

public class CFPQParserGenerator {
    public IParser<TValue> CreateParser<TValue>(IValuationSemiring<TValue> semiring)
            => AtomEngineFactory.Create(semiring).Accept(new CreateRequest<TValue> ());

    private class CreateRequest<TValue> : IAtomEngineVisitor<TValue, IParser<TValue>>
    {
         public IParser<TValue> Visit<TAtom>(IAtomEngine<TValue, TAtom> engine)
         {
              // some actions
         }
    }
}

Запускается метод CreateParser, методу Accept передается объект CreateRequest. Дальше внутри Accept происходит вызов метода Visit.

Вопрос в том как мне в класс CFPQParserGenerator передать значение engine? У меня ведь нет знаний об TAtom. Я хочу engine вытащить за пределы CreateRequest.

READ ALSO
Вставка Razor-кода из JavaScript в html-разметку

Вставка Razor-кода из JavaScript в html-разметку

Столкнулся с неожиданной проблемойУ меня есть форма, на которой по нажатию кнопки добавляется select-поле

106
Как установить sharpGL для VisualStudio 2019 C#

Как установить sharpGL для VisualStudio 2019 C#

Я пытаюсь установить расширение sharpGL для visual stuioПишет что невозможно установить расширение не для одного пакета

100
Установить время в константу | C#

Установить время в константу | C#

Как записать времяБез даты! в константу

119
Чтение формата BCD C#

Чтение формата BCD C#

Есть устройство подключенное к шине ISA, которое периодически слушаю программойУстройство передает пакет состоящий из 4х байт (32 бит), в пакете...

103