Поставщики типа F # и единицы измерения - PullRequest
0 голосов
/ 14 октября 2018

Можно ли аннотировать сгенерированные свойства / поля с помощью пользовательских единиц измерения?Я заметил, что ProvidedTypes.fs предоставляет вспомогательные методы для аннотирования с помощью встроенных единиц измерения F #, как в следующем примере:

ProvidedMeasureBuilder.AnnotateType(typedefof<int>, [ProvidedMeasureBuilder.SI "kilogram"])

Однако я не вижу каких-либо четкихспособ аннотировать с помощью пользовательской единицы измерения, на которую ссылается другая сборка.Это вообще возможно?Заранее спасибо!

https://github.com/fsprojects/FSharp.TypeProviders.SDK/blob/master/src/ProvidedTypes.fs

ОБНОВЛЕНИЕ:

Проблемы, с которыми я столкнулся, очевидно, не имели ничего общего с тем, что моиединицы измерения были пользовательскими, скорее, потому что типы были сгенерированными типами.При переключении на стертые типы пользовательские единицы были просты в реализации:

ProvidedMeasureBuilder.AnnotateType(typedefof<int>, [typedefof<SomeObjectInMyAssembly>.Assembly.GetType("Namespace.UnitOfMeasure"))

...