如何为ProvidedType数组创建类型?
换句话说,通用MakeArrayType类上Type的替代方法是什么?

编辑:
问题是当我尝试MakeArrayType时,TP失败。

这是重现该错误的示例:https://gist.github.com/dsevastianov/46d1a8495c4af46a9875

客户端失败,“不应在提供的类型,成员或参数上调用项目'Birch []'上的操作'UnderlyingSystemType'”

最佳答案

这是ProvidedTypes.fs中的错误。只需确保为GetUnderlyingSystemType类实现了ProvidedSymbolType。这似乎工作正常:

override this.UnderlyingSystemType =
    match kind with
    | SymbolKind.SDArray
    | SymbolKind.Array _
    | SymbolKind.Pointer
    | SymbolKind.FSharpTypeAbbreviation _
    | SymbolKind.ByRef -> upcast this
    | SymbolKind.Generic gty -> gty.UnderlyingSystemType

关于f# - 如何为ProvidedType数组创建类型?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24065723/

10-10 13:18