如何使用type参数调用IronScheme clr-call

时间:2016-03-05 11:25:47

标签: generics type-parameter ironscheme

我尝试将IronScheme与Open XML SDK一起使用来读取XLSX文件。

Open XML SDK API包含一个方法,在C#中写为worksheetPart.Worksheet.Elements<SheetData>(),其中传递type参数有助于过滤给定类型的元素。

我如何将其转换为IronScheme,以便我可以传递SheetData类型参数?我尝试了以下调用,但它们都返回了所有元素:

(clr-call Worksheet Elements sheet)             ; sure, will return all
(clr-call Worksheet (Elements Object) sheet)    ; syntax test -> allowed, but returns all
(clr-call Worksheet (Elements SheetData) sheet) ; sadly this also returns all

先谢谢,弗兰克

1 个答案:

答案 0 :(得分:0)

您正在使用'type hint'语法(这实际上是一个错误,因为它应该报告为未找到)。

通用语法是:

(clr-call Worksheet (Elements #(SheetData)) sheet)

将泛型类型参数作为方法的向量传递。

遗憾的是,这与为类型指定泛型类型参数不同。

我会将它放在TODO列表中。