Явная рекурсия типа в F#

Вот некоторый текст из MSDN [приблизительно 110] неуправляемый код .

код библиотеки Some должен звонить в неуправляемый код (например, API собственного кода, такие как Win32). Поскольку это означает выходить за пределы периметра безопасности для управляемого кода, должная осторожность требуется.

Вот некоторое другое дополнительное объяснение об Управляемом коде:

  • Код, который выполнен CLR.
  • Код, который предназначается для общеязыковой среды выполнения, основы Платформы.NET, известен как управляемый код.
  • Управляемый код предоставляет метаданные, необходимые для CLR для предоставления услуг, таких как управление памятью, межъязыковая интеграция, безопасность доступа к коду и автоматический контроль времени жизни объектов. Весь код на основе IL выполняется как управляемый код.
  • Код, который выполняется под средой выполнения CLI.

Для Вашей проблемы:

я думаю, что это - потому что NUnit выполняют Ваш код для UnitTesting и могли бы иметь некоторую часть его, которая неуправляема. Но я не уверен в этом, не берите это для золота. Я уверен, что кто-то будет в состоянии дать Вам больше информации об этом. Надежда это помогает!

7
задан Community 23 May 2017 в 12:19
поделиться

1 ответ

Нет, это невозможно. В частности, универсальные шаблоны в F # имеют то же ограничение, что и среда CLR, а именно, или <'a> должны иметь вид «*». Это же ограничение означает, что вы не можете создавать «классы типов» непосредственно в F #, поскольку, например, «Монада m» будет принимать аргумент более высокого порядка «m» (например, «* -> *», где, например, «список» и «опция» 'могут быть экземплярами, каждый из которых является конструктором универсального типа), но это не допускается.

8
ответ дан 7 December 2019 в 05:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: