Я пытаюсь построить примитивные цитаты F # для компилятора Cuda, и мне нужно выяснить, как переводить типы кортежей в типы C-структуры в объявлениях функций, но я действительно не знаком с тем, как работает техника .NET. Вызывает разочарование, что цитаты F # не возвращают вам хороший АСТ на основе дискриминированных союзов, которые сделали бы все явным, но если я не хочу самостоятельно выполнять проверку typechecking, у меня будет работа с этим.Как сделать эквивалент соответствия шаблонов для родных типов .NET?
То, что я прошу, - это путь к дерьмовому фрагменту кода выше с сопоставлением с образцом на .NET. Type
s, потому что выше явно не работает.
Редактировать: вопрос не является дубликатом, потому что связанный вопрос задает вопрос о том, как печатать свойства записей F #, а я спрашиваю, как печатать типы родных типов .NET (включая функции) внутри цитат F #. Визуальное сканирование принятого ответа здесь и там должно показать, что они совершенно разные и даже не используют одни и те же функции.
[Является ли синтаксис, используемый здесь, что вы ищете] (http://stackoverflow.com/questions/2992139/f-pattern- совпадение с типами)? – asibahi
Как это «не работает»? –
@asibahi Нет, я так не думаю. Смотрите мой комментарий к Федору в его ответе. Я хочу избежать использования 'typeof' для проверки типов. –